difftreelog
test(properties)
in: master
13 files changed
tests/package.jsondiffbeforeafterboth--- a/tests/package.json
+++ b/tests/package.json
@@ -34,6 +34,7 @@
"testCollision": "mocha --timeout 9999999 -r ts-node/register ./src/collision-tests/*.test.ts",
"testEvent": "mocha --timeout 9999999 -r ts-node/register ./src/check-event/*.test.ts",
"testNesting": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/**.test.ts",
+ "testProperties": "mocha --timeout 9999999 -r ts-node/register ./**/properties.test.ts",
"testMigrationStructure": "mocha --timeout 9999999 -r ts-node/register ./**/nesting/migration-check.test.ts",
"testAddCollectionAdmin": "mocha --timeout 9999999 -r ts-node/register ./**/addCollectionAdmin.test.ts",
"testSetSchemaVersion": "mocha --timeout 9999999 -r ts-node/register ./**/setSchemaVersion.test.ts",
tests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -271,9 +271,9 @@
**/
NotFungibleDataUsedToMintFungibleCollectionToken: AugmentedError<ApiType>;
/**
- * Item properties are not allowed
+ * Setting item properties is not allowed
**/
- PropertiesNotAllowed: AugmentedError<ApiType>;
+ SettingPropertiesNotAllowed: AugmentedError<ApiType>;
/**
* Generic error
**/
@@ -399,13 +399,13 @@
**/
NotRefungibleDataUsedToMintFungibleCollectionToken: AugmentedError<ApiType>;
/**
- * Item properties are not allowed
+ * Refungible token can't nest other tokens
**/
- PropertiesNotAllowed: AugmentedError<ApiType>;
+ RefungibleDisallowsNesting: AugmentedError<ApiType>;
/**
- * Refungible token can't nest other tokens
+ * Setting item properties is not allowed
**/
- RefungibleDisallowsNesting: AugmentedError<ApiType>;
+ SettingPropertiesNotAllowed: AugmentedError<ApiType>;
/**
* Maximum refungibility exceeded
**/
tests/src/interfaces/augment-api-query.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -5,7 +5,7 @@
import type { BTreeMap, Bytes, Option, U256, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructs, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, UpDataStructsCollection, UpDataStructsCollectionField, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertyPermission } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PhantomTypeUpDataStructsRpcCollection, PhantomTypeUpDataStructsTokenData, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, SpTrieStorageProof, UpDataStructsCollection, UpDataStructsCollectionField, UpDataStructsCollectionStats, UpDataStructsProperties, UpDataStructsPropertyPermission } from '@polkadot/types/lookup';
import type { Observable } from '@polkadot/types/types';
declare module '@polkadot/api-base/types/storage' {
@@ -92,7 +92,7 @@
/**
* Not used by code, exists only to provide some types to metadata
**/
- dummyStorageValue: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[UpDataStructsCollectionStats, u32, u32, PhantomTypeUpDataStructs]>>>, []> & QueryableStorageEntry<ApiType, []>;
+ dummyStorageValue: AugmentedQuery<ApiType, () => Observable<Option<ITuple<[UpDataStructsCollectionStats, u32, u32, PhantomTypeUpDataStructsTokenData, PhantomTypeUpDataStructsRpcCollection]>>>, []> & QueryableStorageEntry<ApiType, []>;
/**
* List of collection admins
**/
tests/src/interfaces/augment-api-rpc.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-rpc.ts
+++ b/tests/src/interfaces/augment-api-rpc.ts
@@ -1,7 +1,7 @@
// Auto-generated via `yarn polkadot-types-from-chain`, do not edit
/* eslint-disable */
-import type { PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCollectionLimits, UpDataStructsCollectionStats, UpDataStructsProperty, UpDataStructsRpcCollection } from './unique';
+import type { PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCollectionLimits, UpDataStructsCollectionStats, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsRpcCollection, UpDataStructsTokenData } from './unique';
import type { AugmentedRpc } from '@polkadot/rpc-core/types';
import type { Metadata, StorageKey } from '@polkadot/types';
import type { Bytes, HashMap, Json, Null, Option, Text, U256, U64, Vec, bool, u128, u32, u64 } from '@polkadot/types-codec';
@@ -13,7 +13,6 @@
import type { PrefixedStorageKey } from '@polkadot/types/interfaces/childstate';
import type { AuthorityId } from '@polkadot/types/interfaces/consensus';
import type { CodeUploadRequest, CodeUploadResult, ContractCallRequest, ContractExecResult, ContractInstantiateResult, InstantiateRequest } from '@polkadot/types/interfaces/contracts';
-import type { BlockStats } from '@polkadot/types/interfaces/dev';
import type { CreatedBlock } from '@polkadot/types/interfaces/engine';
import type { EthAccount, EthCallRequest, EthFilter, EthFilterChanges, EthLog, EthReceipt, EthRichBlock, EthSubKind, EthSubParams, EthSyncStatus, EthTransaction, EthTransactionRequest, EthWork } from '@polkadot/types/interfaces/eth';
import type { Extrinsic } from '@polkadot/types/interfaces/extrinsics';
@@ -23,7 +22,7 @@
import type { FeeDetails, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment';
import type { RpcMethods } from '@polkadot/types/interfaces/rpc';
import type { AccountId, BlockNumber, H160, H256, H64, Hash, Header, Index, Justification, KeyValue, SignedBlock, StorageData } from '@polkadot/types/interfaces/runtime';
-import type { MigrationStatusResult, ReadProof, RuntimeVersion, TraceBlockResponse } from '@polkadot/types/interfaces/state';
+import type { ReadProof, RuntimeVersion, TraceBlockResponse } from '@polkadot/types/interfaces/state';
import type { ApplyExtrinsicResult, ChainProperties, ChainType, Health, NetworkState, NodeRole, PeerInfo, SyncState } from '@polkadot/types/interfaces/system';
import type { IExtrinsic, Observable } from '@polkadot/types/types';
@@ -156,12 +155,6 @@
* Upload new code without instantiating a contract from it
**/
uploadCode: AugmentedRpc<(uploadRequest: CodeUploadRequest | { origin?: any; code?: any; storageDepositLimit?: any } | string | Uint8Array, at?: BlockHash | string | Uint8Array) => Observable<CodeUploadResult>>;
- };
- dev: {
- /**
- * Reexecute the specified `block_hash` and gather statistics while doing so
- **/
- getBlockStats: AugmentedRpc<(at: Hash | string | Uint8Array) => Observable<Option<BlockStats>>>;
};
engine: {
/**
@@ -341,9 +334,9 @@
};
grandpa: {
/**
- * Prove finality for the given block number, returning the Justification for the last block in the set.
+ * Prove finality for the range (begin; end] hash.
**/
- proveFinality: AugmentedRpc<(blockNumber: BlockNumber | AnyNumber | Uint8Array) => Observable<Option<EncodedFinalityProofs>>>;
+ proveFinality: AugmentedRpc<(begin: BlockHash | string | Uint8Array, end: BlockHash | string | Uint8Array, authoritiesSetId?: u64 | AnyNumber | Uint8Array) => Observable<Option<EncodedFinalityProofs>>>;
/**
* Returns the state of the current best round state as well as the ongoing background rounds
**/
@@ -480,10 +473,6 @@
* Provides a way to trace the re-execution of a single block
**/
traceBlock: AugmentedRpc<(block: Hash | string | Uint8Array, targets: Option<Text> | null | object | string | Uint8Array, storageKeys: Option<Text> | null | object | string | Uint8Array, methods: Option<Text> | null | object | string | Uint8Array) => Observable<TraceBlockResponse>>;
- /**
- * Check current migration state
- **/
- trieMigrationStatus: AugmentedRpc<(at?: BlockHash | string | Uint8Array) => Observable<MigrationStatusResult>>;
};
syncstate: {
/**
@@ -631,6 +620,14 @@
**/
nextSponsored: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<u64>>>;
/**
+ * Get property permissions
+ **/
+ propertyPermissions: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsPropertyKeyPermission>>>;
+ /**
+ * Get token data
+ **/
+ tokenData: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<UpDataStructsTokenData>>;
+ /**
* Check if token exists
**/
tokenExists: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<bool>>;
@@ -639,6 +636,10 @@
**/
tokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>>;
/**
+ * Get token properties
+ **/
+ tokenProperties: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, propertyKeys: Vec<Text> | (Text | string)[], at?: Hash | string | Uint8Array) => Observable<Vec<UpDataStructsProperty>>>;
+ /**
* Get token owner, in case of nested token - find parent recursive
**/
topmostTokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>>;
tests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-tx.ts
+++ b/tests/src/interfaces/augment-api-tx.ts
@@ -378,7 +378,7 @@
* - Weight of derivative `call` execution + 10,000.
* # </weight>
**/
- sudo: AugmentedSubmittable<(call: Call) => SubmittableExtrinsic<ApiType>, [Call]>;
+ sudo: AugmentedSubmittable<(call: Call | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call]>;
/**
* Authenticates the sudo key and dispatches a function call with `Signed` origin from
* a given account.
@@ -392,7 +392,7 @@
* - Weight of derivative `call` execution + 10,000.
* # </weight>
**/
- sudoAs: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, call: Call) => SubmittableExtrinsic<ApiType>, [MultiAddress, Call]>;
+ sudoAs: AugmentedSubmittable<(who: MultiAddress | { Id: any } | { Index: any } | { Raw: any } | { Address32: any } | { Address20: any } | string | Uint8Array, call: Call | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [MultiAddress, Call]>;
/**
* Authenticates the sudo key and dispatches a function call with `Root` origin.
* This function does not check the weight of the call, and instead allows the
@@ -405,7 +405,7 @@
* - The weight of this call is defined by the caller.
* # </weight>
**/
- sudoUncheckedWeight: AugmentedSubmittable<(call: Call, weight: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, u64]>;
+ sudoUncheckedWeight: AugmentedSubmittable<(call: Call | string | Uint8Array, weight: u64 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [Call, u64]>;
/**
* Generic tx
**/
tests/src/interfaces/augment-types.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -1,7 +1,7 @@
// Auto-generated via `yarn polkadot-types-from-defs`, do not edit
/* eslint-disable */
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportPalletId, FrameSupportStorageBoundedBTreeSet, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructs, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionField, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsNestingRule, UpDataStructsProperties, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsRpcCollection, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './unique';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportPalletId, FrameSupportStorageBoundedBTreeSet, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletStructureCall, PalletStructureError, PalletStructureEvent, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PhantomTypeUpDataStructsRpcCollection, PhantomTypeUpDataStructsTokenData, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionField, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsNestingRule, UpDataStructsProperties, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, UpDataStructsPropertyPermission, UpDataStructsRpcCollection, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, UpDataStructsTokenData, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './unique';
import type { Data, StorageKey } from '@polkadot/types';
import type { BitVec, Bool, Bytes, I128, I16, I256, I32, I64, I8, Json, Null, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, i128, i16, i256, i32, i64, i8, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec';
import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';
@@ -23,7 +23,6 @@
import type { FundIndex, FundInfo, LastContribution, TrieIndex } from '@polkadot/types/interfaces/crowdloan';
import type { ConfigData, MessageId, OverweightIndex, PageCounter, PageIndexData } from '@polkadot/types/interfaces/cumulus';
import type { AccountVote, AccountVoteSplit, AccountVoteStandard, Conviction, Delegations, PreimageStatus, PreimageStatusAvailable, PriorLock, PropIndex, Proposal, ProxyState, ReferendumIndex, ReferendumInfo, ReferendumInfoFinished, ReferendumInfoTo239, ReferendumStatus, Tally, Voting, VotingDelegating, VotingDirect, VotingDirectVote } from '@polkadot/types/interfaces/democracy';
-import type { BlockStats } from '@polkadot/types/interfaces/dev';
import type { ApprovalFlag, DefunctVoter, Renouncing, SetIndex, Vote, VoteIndex, VoteThreshold, VoterInfo } from '@polkadot/types/interfaces/elections';
import type { CreatedBlock, ImportedAux } from '@polkadot/types/interfaces/engine';
import type { BlockV0, BlockV1, BlockV2, EIP1559Transaction, EIP2930Transaction, EthAccessList, EthAccessListItem, EthAccount, EthAddress, EthBlock, EthBloom, EthCallRequest, EthFilter, EthFilterAddress, EthFilterChanges, EthFilterTopic, EthFilterTopicEntry, EthFilterTopicInner, EthHeader, EthLog, EthReceipt, EthRichBlock, EthRichHeader, EthStorageProof, EthSubKind, EthSubParams, EthSubResult, EthSyncInfo, EthSyncStatus, EthTransaction, EthTransactionAction, EthTransactionCondition, EthTransactionRequest, EthTransactionSignature, EthTransactionStatus, EthWork, EthereumAccountId, EthereumAddress, EthereumLookupSource, EthereumSignature, LegacyTransaction, TransactionV0, TransactionV1, TransactionV2 } from '@polkadot/types/interfaces/eth';
@@ -52,9 +51,9 @@
import type { BeefyKey, FullIdentification, IdentificationTuple, Keys, MembershipProof, SessionIndex, SessionKeys1, SessionKeys10, SessionKeys10B, SessionKeys2, SessionKeys3, SessionKeys4, SessionKeys5, SessionKeys6, SessionKeys6B, SessionKeys7, SessionKeys7B, SessionKeys8, SessionKeys8B, SessionKeys9, SessionKeys9B, ValidatorCount } from '@polkadot/types/interfaces/session';
import type { Bid, BidKind, SocietyJudgement, SocietyVote, StrikeCount, VouchingStatus } from '@polkadot/types/interfaces/society';
import type { ActiveEraInfo, CompactAssignments, CompactAssignmentsTo257, CompactAssignmentsTo265, CompactAssignmentsWith16, CompactAssignmentsWith24, CompactScore, CompactScoreCompact, ElectionCompute, ElectionPhase, ElectionResult, ElectionScore, ElectionSize, ElectionStatus, EraIndex, EraPoints, EraRewardPoints, EraRewards, Exposure, ExtendedBalance, Forcing, IndividualExposure, KeyType, MomentOf, Nominations, NominatorIndex, NominatorIndexCompact, OffchainAccuracy, OffchainAccuracyCompact, PhragmenScore, Points, RawSolution, RawSolutionTo265, RawSolutionWith16, RawSolutionWith24, ReadySolution, RewardDestination, RewardPoint, RoundSnapshot, SeatHolder, SignedSubmission, SignedSubmissionOf, SignedSubmissionTo276, SlashJournalEntry, SlashingSpans, SlashingSpansTo204, SolutionOrSnapshotSize, SolutionSupport, SolutionSupports, SpanIndex, SpanRecord, StakingLedger, StakingLedgerTo223, StakingLedgerTo240, SubmissionIndicesOf, Supports, UnappliedSlash, UnappliedSlashOther, UnlockChunk, ValidatorIndex, ValidatorIndexCompact, ValidatorPrefs, ValidatorPrefsTo145, ValidatorPrefsTo196, ValidatorPrefsWithBlocked, ValidatorPrefsWithCommission, VoteWeight, Voter } from '@polkadot/types/interfaces/staking';
-import type { ApiId, BlockTrace, BlockTraceEvent, BlockTraceEventData, BlockTraceSpan, KeyValueOption, MigrationStatusResult, ReadProof, RuntimeVersion, RuntimeVersionApi, RuntimeVersionPartial, SpecVersion, StorageChangeSet, TraceBlockResponse, TraceError } from '@polkadot/types/interfaces/state';
+import type { ApiId, BlockTrace, BlockTraceEvent, BlockTraceEventData, BlockTraceSpan, KeyValueOption, ReadProof, RuntimeVersion, RuntimeVersionApi, RuntimeVersionPartial, SpecVersion, StorageChangeSet, TraceBlockResponse, TraceError } from '@polkadot/types/interfaces/state';
import type { WeightToFeeCoefficient } from '@polkadot/types/interfaces/support';
-import type { AccountInfo, AccountInfoWithDualRefCount, AccountInfoWithProviders, AccountInfoWithRefCount, AccountInfoWithRefCountU8, AccountInfoWithTripleRefCount, ApplyExtrinsicResult, ArithmeticError, BlockLength, BlockWeights, ChainProperties, ChainType, ConsumedWeight, DigestOf, DispatchClass, DispatchError, DispatchErrorModule, DispatchErrorModuleU8a, DispatchErrorTo198, DispatchInfo, DispatchInfoTo190, DispatchInfoTo244, DispatchOutcome, DispatchResult, DispatchResultOf, DispatchResultTo198, Event, EventId, EventIndex, EventRecord, Health, InvalidTransaction, Key, LastRuntimeUpgradeInfo, NetworkState, NetworkStatePeerset, NetworkStatePeersetInfo, NodeRole, NotConnectedPeer, Peer, PeerEndpoint, PeerEndpointAddr, PeerInfo, PeerPing, PerDispatchClassU32, PerDispatchClassWeight, PerDispatchClassWeightsPerClass, Phase, RawOrigin, RefCount, RefCountTo259, SyncState, SystemOrigin, TokenError, TransactionValidityError, UnknownTransaction, WeightPerClass } from '@polkadot/types/interfaces/system';
+import type { AccountInfo, AccountInfoWithDualRefCount, AccountInfoWithProviders, AccountInfoWithRefCount, AccountInfoWithRefCountU8, AccountInfoWithTripleRefCount, ApplyExtrinsicResult, ArithmeticError, BlockLength, BlockWeights, ChainProperties, ChainType, ConsumedWeight, DigestOf, DispatchClass, DispatchError, DispatchErrorModule, DispatchErrorTo198, DispatchInfo, DispatchInfoTo190, DispatchInfoTo244, DispatchOutcome, DispatchResult, DispatchResultOf, DispatchResultTo198, Event, EventId, EventIndex, EventRecord, Health, InvalidTransaction, Key, LastRuntimeUpgradeInfo, NetworkState, NetworkStatePeerset, NetworkStatePeersetInfo, NodeRole, NotConnectedPeer, Peer, PeerEndpoint, PeerEndpointAddr, PeerInfo, PeerPing, PerDispatchClassU32, PerDispatchClassWeight, PerDispatchClassWeightsPerClass, Phase, RawOrigin, RefCount, RefCountTo259, SyncState, SystemOrigin, TokenError, TransactionValidityError, UnknownTransaction, WeightPerClass } from '@polkadot/types/interfaces/system';
import type { Bounty, BountyIndex, BountyStatus, BountyStatusActive, BountyStatusCuratorProposed, BountyStatusPendingPayout, OpenTip, OpenTipFinderTo225, OpenTipTip, OpenTipTo225, TreasuryProposal } from '@polkadot/types/interfaces/treasury';
import type { Multiplier } from '@polkadot/types/interfaces/txpayment';
import type { ClassDetails, ClassId, ClassMetadata, DepositBalance, DepositBalanceOf, DestroyWitness, InstanceDetails, InstanceId, InstanceMetadata } from '@polkadot/types/interfaces/uniques';
@@ -154,7 +153,6 @@
BlockNumber: BlockNumber;
BlockNumberFor: BlockNumberFor;
BlockNumberOf: BlockNumberOf;
- BlockStats: BlockStats;
BlockTrace: BlockTrace;
BlockTraceEvent: BlockTraceEvent;
BlockTraceEventData: BlockTraceEventData;
@@ -329,7 +327,6 @@
DispatchClass: DispatchClass;
DispatchError: DispatchError;
DispatchErrorModule: DispatchErrorModule;
- DispatchErrorModuleU8a: DispatchErrorModuleU8a;
DispatchErrorTo198: DispatchErrorTo198;
DispatchFeePayment: DispatchFeePayment;
DispatchInfo: DispatchInfo;
@@ -661,7 +658,6 @@
MetadataV13: MetadataV13;
MetadataV14: MetadataV14;
MetadataV9: MetadataV9;
- MigrationStatusResult: MigrationStatusResult;
MmrLeafProof: MmrLeafProof;
MmrRootHash: MmrRootHash;
ModuleConstantMetadataV10: ModuleConstantMetadataV10;
@@ -849,7 +845,8 @@
PerU16: PerU16;
Phantom: Phantom;
PhantomData: PhantomData;
- PhantomTypeUpDataStructs: PhantomTypeUpDataStructs;
+ PhantomTypeUpDataStructsRpcCollection: PhantomTypeUpDataStructsRpcCollection;
+ PhantomTypeUpDataStructsTokenData: PhantomTypeUpDataStructsTokenData;
Phase: Phase;
PhragmenScore: PhragmenScore;
Points: Points;
@@ -1189,6 +1186,7 @@
UpDataStructsSchemaVersion: UpDataStructsSchemaVersion;
UpDataStructsSponsoringRateLimit: UpDataStructsSponsoringRateLimit;
UpDataStructsSponsorshipState: UpDataStructsSponsorshipState;
+ UpDataStructsTokenData: UpDataStructsTokenData;
UpgradeGoAhead: UpgradeGoAhead;
UpgradeRestriction: UpgradeRestriction;
UpwardMessage: UpwardMessage;
tests/src/interfaces/lookup.tsdiffbeforeafterboth--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -23,7 +23,7 @@
* Lookup10: sp_trie::storage_proof::StorageProof
**/
SpTrieStorageProof: {
- trieNodes: 'BTreeSet<Bytes>'
+ trieNodes: 'Vec<Bytes>'
},
/**
* Lookup13: cumulus_pallet_parachain_system::relay_state_snapshot::MessagingStateSnapshot
@@ -1469,7 +1469,7 @@
/**
* Lookup171: frame_support::storage::bounded_btree_set::BoundedBTreeSet<up_data_structs::CollectionId, S>
**/
- FrameSupportStorageBoundedBTreeSet: 'BTreeSet<u32>',
+ FrameSupportStorageBoundedBTreeSet: 'Vec<u32>',
/**
* Lookup177: up_data_structs::MetaUpdatePermission
**/
@@ -1487,7 +1487,9 @@
* Lookup181: up_data_structs::PropertyPermission
**/
UpDataStructsPropertyPermission: {
- _enum: ['None', 'AdminConst', 'Admin', 'ItemOwnerConst', 'ItemOwner', 'ItemOwnerOrAdmin']
+ mutable: 'bool',
+ collectionAdmin: 'bool',
+ tokenOwner: 'bool'
},
/**
* Lookup184: up_data_structs::Property
@@ -1520,7 +1522,8 @@
**/
UpDataStructsCreateNftData: {
constData: 'Bytes',
- variableData: 'Bytes'
+ variableData: 'Bytes',
+ properties: 'Vec<UpDataStructsProperty>'
},
/**
* Lookup191: up_data_structs::CreateFungibleData
@@ -1553,6 +1556,7 @@
UpDataStructsCreateNftExData: {
constData: 'Bytes',
variableData: 'Bytes',
+ properties: 'Vec<UpDataStructsProperty>',
owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
},
/**
@@ -2324,12 +2328,24 @@
alive: 'u32'
},
/**
- * Lookup325: PhantomType::up_data_structs<up_data_structs::RpcCollection<sp_core::crypto::AccountId32>>
+ * Lookup325: PhantomType::up_data_structs<up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>>
**/
- PhantomTypeUpDataStructs: '[Lookup326;0]',
+ PhantomTypeUpDataStructsTokenData: '[Lookup326;0]',
/**
- * Lookup326: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
+ * Lookup326: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
**/
+ UpDataStructsTokenData: {
+ constData: 'Bytes',
+ properties: 'Vec<UpDataStructsProperty>',
+ owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>'
+ },
+ /**
+ * Lookup329: PhantomType::up_data_structs<up_data_structs::RpcCollection<sp_core::crypto::AccountId32>>
+ **/
+ PhantomTypeUpDataStructsRpcCollection: '[Lookup330;0]',
+ /**
+ * Lookup330: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>
+ **/
UpDataStructsRpcCollection: {
owner: 'AccountId32',
mode: 'UpDataStructsCollectionMode',
@@ -2347,32 +2363,32 @@
metaUpdatePermission: 'UpDataStructsMetaUpdatePermission'
},
/**
- * Lookup328: pallet_common::pallet::Error<T>
+ * Lookup332: pallet_common::pallet::Error<T>
**/
PalletCommonError: {
_enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'TokenVariableDataLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'NestingIsDisabled', 'OnlyOwnerAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached']
},
/**
- * Lookup330: pallet_fungible::pallet::Error<T>
+ * Lookup334: pallet_fungible::pallet::Error<T>
**/
PalletFungibleError: {
- _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'PropertiesNotAllowed']
+ _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
},
/**
- * Lookup331: pallet_refungible::ItemData
+ * Lookup335: pallet_refungible::ItemData
**/
PalletRefungibleItemData: {
constData: 'Bytes',
variableData: 'Bytes'
},
/**
- * Lookup335: pallet_refungible::pallet::Error<T>
+ * Lookup339: pallet_refungible::pallet::Error<T>
**/
PalletRefungibleError: {
- _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RefungibleDisallowsNesting', 'PropertiesNotAllowed']
+ _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']
},
/**
- * Lookup336: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+ * Lookup340: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
**/
PalletNonfungibleItemData: {
constData: 'Bytes',
@@ -2380,25 +2396,25 @@
owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
},
/**
- * Lookup337: pallet_nonfungible::pallet::Error<T>
+ * Lookup341: pallet_nonfungible::pallet::Error<T>
**/
PalletNonfungibleError: {
_enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount']
},
/**
- * Lookup338: pallet_structure::pallet::Error<T>
+ * Lookup342: pallet_structure::pallet::Error<T>
**/
PalletStructureError: {
_enum: ['OuroborosDetected', 'DepthLimit', 'TokenNotFound']
},
/**
- * Lookup340: pallet_evm::pallet::Error<T>
+ * Lookup344: pallet_evm::pallet::Error<T>
**/
PalletEvmError: {
_enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']
},
/**
- * Lookup343: fp_rpc::TransactionStatus
+ * Lookup347: fp_rpc::TransactionStatus
**/
FpRpcTransactionStatus: {
transactionHash: 'H256',
@@ -2410,11 +2426,11 @@
logsBloom: 'EthbloomBloom'
},
/**
- * Lookup346: ethbloom::Bloom
+ * Lookup350: ethbloom::Bloom
**/
EthbloomBloom: '[u8;256]',
/**
- * Lookup348: ethereum::receipt::ReceiptV3
+ * Lookup352: ethereum::receipt::ReceiptV3
**/
EthereumReceiptReceiptV3: {
_enum: {
@@ -2424,7 +2440,7 @@
}
},
/**
- * Lookup349: ethereum::receipt::EIP658ReceiptData
+ * Lookup353: ethereum::receipt::EIP658ReceiptData
**/
EthereumReceiptEip658ReceiptData: {
statusCode: 'u8',
@@ -2433,7 +2449,7 @@
logs: 'Vec<EthereumLog>'
},
/**
- * Lookup350: ethereum::block::Block<ethereum::transaction::TransactionV2>
+ * Lookup354: ethereum::block::Block<ethereum::transaction::TransactionV2>
**/
EthereumBlock: {
header: 'EthereumHeader',
@@ -2441,7 +2457,7 @@
ommers: 'Vec<EthereumHeader>'
},
/**
- * Lookup351: ethereum::header::Header
+ * Lookup355: ethereum::header::Header
**/
EthereumHeader: {
parentHash: 'H256',
@@ -2461,41 +2477,41 @@
nonce: 'EthereumTypesHashH64'
},
/**
- * Lookup352: ethereum_types::hash::H64
+ * Lookup356: ethereum_types::hash::H64
**/
EthereumTypesHashH64: '[u8;8]',
/**
- * Lookup357: pallet_ethereum::pallet::Error<T>
+ * Lookup361: pallet_ethereum::pallet::Error<T>
**/
PalletEthereumError: {
_enum: ['InvalidSignature', 'PreLogExists']
},
/**
- * Lookup358: pallet_evm_coder_substrate::pallet::Error<T>
+ * Lookup362: pallet_evm_coder_substrate::pallet::Error<T>
**/
PalletEvmCoderSubstrateError: {
_enum: ['OutOfGas', 'OutOfFund']
},
/**
- * Lookup359: pallet_evm_contract_helpers::SponsoringModeT
+ * Lookup363: pallet_evm_contract_helpers::SponsoringModeT
**/
PalletEvmContractHelpersSponsoringModeT: {
_enum: ['Disabled', 'Allowlisted', 'Generous']
},
/**
- * Lookup361: pallet_evm_contract_helpers::pallet::Error<T>
+ * Lookup365: pallet_evm_contract_helpers::pallet::Error<T>
**/
PalletEvmContractHelpersError: {
_enum: ['NoPermission']
},
/**
- * Lookup362: pallet_evm_migration::pallet::Error<T>
+ * Lookup366: pallet_evm_migration::pallet::Error<T>
**/
PalletEvmMigrationError: {
_enum: ['AccountNotEmpty', 'AccountIsNotMigrating']
},
/**
- * Lookup364: sp_runtime::MultiSignature
+ * Lookup368: sp_runtime::MultiSignature
**/
SpRuntimeMultiSignature: {
_enum: {
@@ -2505,39 +2521,39 @@
}
},
/**
- * Lookup365: sp_core::ed25519::Signature
+ * Lookup369: sp_core::ed25519::Signature
**/
SpCoreEd25519Signature: '[u8;64]',
/**
- * Lookup367: sp_core::sr25519::Signature
+ * Lookup371: sp_core::sr25519::Signature
**/
SpCoreSr25519Signature: '[u8;64]',
/**
- * Lookup368: sp_core::ecdsa::Signature
+ * Lookup372: sp_core::ecdsa::Signature
**/
SpCoreEcdsaSignature: '[u8;65]',
/**
- * Lookup371: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
+ * Lookup375: frame_system::extensions::check_spec_version::CheckSpecVersion<T>
**/
FrameSystemExtensionsCheckSpecVersion: 'Null',
/**
- * Lookup372: frame_system::extensions::check_genesis::CheckGenesis<T>
+ * Lookup376: frame_system::extensions::check_genesis::CheckGenesis<T>
**/
FrameSystemExtensionsCheckGenesis: 'Null',
/**
- * Lookup375: frame_system::extensions::check_nonce::CheckNonce<T>
+ * Lookup379: frame_system::extensions::check_nonce::CheckNonce<T>
**/
FrameSystemExtensionsCheckNonce: 'Compact<u32>',
/**
- * Lookup376: frame_system::extensions::check_weight::CheckWeight<T>
+ * Lookup380: frame_system::extensions::check_weight::CheckWeight<T>
**/
FrameSystemExtensionsCheckWeight: 'Null',
/**
- * Lookup377: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
+ * Lookup381: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
**/
PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
/**
- * Lookup378: opal_runtime::Runtime
+ * Lookup382: opal_runtime::Runtime
**/
OpalRuntimeRuntime: 'Null'
};
tests/src/interfaces/types-lookup.tsdiffbeforeafterboth--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -2,7 +2,7 @@
/* eslint-disable */
declare module '@polkadot/types/lookup' {
- import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
+ import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';
import type { Event } from '@polkadot/types/interfaces/system';
@@ -23,7 +23,7 @@
/** @name SpTrieStorageProof (10) */
export interface SpTrieStorageProof extends Struct {
- readonly trieNodes: BTreeSet<Bytes>;
+ readonly trieNodes: Vec<Bytes>;
}
/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot (13) */
@@ -1605,7 +1605,7 @@
}
/** @name FrameSupportStorageBoundedBTreeSet (171) */
- export interface FrameSupportStorageBoundedBTreeSet extends BTreeSet<u32> {}
+ export interface FrameSupportStorageBoundedBTreeSet extends Vec<u32> {}
/** @name UpDataStructsMetaUpdatePermission (177) */
export interface UpDataStructsMetaUpdatePermission extends Enum {
@@ -1622,14 +1622,10 @@
}
/** @name UpDataStructsPropertyPermission (181) */
- export interface UpDataStructsPropertyPermission extends Enum {
- readonly isNone: boolean;
- readonly isAdminConst: boolean;
- readonly isAdmin: boolean;
- readonly isItemOwnerConst: boolean;
- readonly isItemOwner: boolean;
- readonly isItemOwnerOrAdmin: boolean;
- readonly type: 'None' | 'AdminConst' | 'Admin' | 'ItemOwnerConst' | 'ItemOwner' | 'ItemOwnerOrAdmin';
+ export interface UpDataStructsPropertyPermission extends Struct {
+ readonly mutable: bool;
+ readonly collectionAdmin: bool;
+ readonly tokenOwner: bool;
}
/** @name UpDataStructsProperty (184) */
@@ -1662,6 +1658,7 @@
export interface UpDataStructsCreateNftData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
}
/** @name UpDataStructsCreateFungibleData (191) */
@@ -1693,6 +1690,7 @@
export interface UpDataStructsCreateNftExData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
}
@@ -2534,10 +2532,20 @@
readonly alive: u32;
}
- /** @name PhantomTypeUpDataStructs (325) */
- export interface PhantomTypeUpDataStructs extends Vec<UpDataStructsRpcCollection> {}
+ /** @name PhantomTypeUpDataStructsTokenData (325) */
+ export interface PhantomTypeUpDataStructsTokenData extends Vec<UpDataStructsTokenData> {}
+
+ /** @name UpDataStructsTokenData (326) */
+ export interface UpDataStructsTokenData extends Struct {
+ readonly constData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
+ readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
+ }
+
+ /** @name PhantomTypeUpDataStructsRpcCollection (329) */
+ export interface PhantomTypeUpDataStructsRpcCollection extends Vec<UpDataStructsRpcCollection> {}
- /** @name UpDataStructsRpcCollection (326) */
+ /** @name UpDataStructsRpcCollection (330) */
export interface UpDataStructsRpcCollection extends Struct {
readonly owner: AccountId32;
readonly mode: UpDataStructsCollectionMode;
@@ -2555,7 +2563,7 @@
readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;
}
- /** @name PalletCommonError (328) */
+ /** @name PalletCommonError (332) */
export interface PalletCommonError extends Enum {
readonly isCollectionNotFound: boolean;
readonly isMustBeTokenOwner: boolean;
@@ -2590,46 +2598,46 @@
readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'NestingIsDisabled' | 'OnlyOwnerAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached';
}
- /** @name PalletFungibleError (330) */
+ /** @name PalletFungibleError (334) */
export interface PalletFungibleError extends Enum {
readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isFungibleItemsHaveNoId: boolean;
readonly isFungibleItemsDontHaveData: boolean;
readonly isFungibleDisallowsNesting: boolean;
- readonly isPropertiesNotAllowed: boolean;
- readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'PropertiesNotAllowed';
+ readonly isSettingPropertiesNotAllowed: boolean;
+ readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
}
- /** @name PalletRefungibleItemData (331) */
+ /** @name PalletRefungibleItemData (335) */
export interface PalletRefungibleItemData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
}
- /** @name PalletRefungibleError (335) */
+ /** @name PalletRefungibleError (339) */
export interface PalletRefungibleError extends Enum {
readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isWrongRefungiblePieces: boolean;
readonly isRefungibleDisallowsNesting: boolean;
- readonly isPropertiesNotAllowed: boolean;
- readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RefungibleDisallowsNesting' | 'PropertiesNotAllowed';
+ readonly isSettingPropertiesNotAllowed: boolean;
+ readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
}
- /** @name PalletNonfungibleItemData (336) */
+ /** @name PalletNonfungibleItemData (340) */
export interface PalletNonfungibleItemData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
}
- /** @name PalletNonfungibleError (337) */
+ /** @name PalletNonfungibleError (341) */
export interface PalletNonfungibleError extends Enum {
readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isNonfungibleItemsHaveNoAmount: boolean;
readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';
}
- /** @name PalletStructureError (338) */
+ /** @name PalletStructureError (342) */
export interface PalletStructureError extends Enum {
readonly isOuroborosDetected: boolean;
readonly isDepthLimit: boolean;
@@ -2637,7 +2645,7 @@
readonly type: 'OuroborosDetected' | 'DepthLimit' | 'TokenNotFound';
}
- /** @name PalletEvmError (340) */
+ /** @name PalletEvmError (344) */
export interface PalletEvmError extends Enum {
readonly isBalanceLow: boolean;
readonly isFeeOverflow: boolean;
@@ -2648,7 +2656,7 @@
readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';
}
- /** @name FpRpcTransactionStatus (343) */
+ /** @name FpRpcTransactionStatus (347) */
export interface FpRpcTransactionStatus extends Struct {
readonly transactionHash: H256;
readonly transactionIndex: u32;
@@ -2659,10 +2667,10 @@
readonly logsBloom: EthbloomBloom;
}
- /** @name EthbloomBloom (346) */
+ /** @name EthbloomBloom (350) */
export interface EthbloomBloom extends U8aFixed {}
- /** @name EthereumReceiptReceiptV3 (348) */
+ /** @name EthereumReceiptReceiptV3 (352) */
export interface EthereumReceiptReceiptV3 extends Enum {
readonly isLegacy: boolean;
readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -2673,7 +2681,7 @@
readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
}
- /** @name EthereumReceiptEip658ReceiptData (349) */
+ /** @name EthereumReceiptEip658ReceiptData (353) */
export interface EthereumReceiptEip658ReceiptData extends Struct {
readonly statusCode: u8;
readonly usedGas: U256;
@@ -2681,14 +2689,14 @@
readonly logs: Vec<EthereumLog>;
}
- /** @name EthereumBlock (350) */
+ /** @name EthereumBlock (354) */
export interface EthereumBlock extends Struct {
readonly header: EthereumHeader;
readonly transactions: Vec<EthereumTransactionTransactionV2>;
readonly ommers: Vec<EthereumHeader>;
}
- /** @name EthereumHeader (351) */
+ /** @name EthereumHeader (355) */
export interface EthereumHeader extends Struct {
readonly parentHash: H256;
readonly ommersHash: H256;
@@ -2707,24 +2715,24 @@
readonly nonce: EthereumTypesHashH64;
}
- /** @name EthereumTypesHashH64 (352) */
+ /** @name EthereumTypesHashH64 (356) */
export interface EthereumTypesHashH64 extends U8aFixed {}
- /** @name PalletEthereumError (357) */
+ /** @name PalletEthereumError (361) */
export interface PalletEthereumError extends Enum {
readonly isInvalidSignature: boolean;
readonly isPreLogExists: boolean;
readonly type: 'InvalidSignature' | 'PreLogExists';
}
- /** @name PalletEvmCoderSubstrateError (358) */
+ /** @name PalletEvmCoderSubstrateError (362) */
export interface PalletEvmCoderSubstrateError extends Enum {
readonly isOutOfGas: boolean;
readonly isOutOfFund: boolean;
readonly type: 'OutOfGas' | 'OutOfFund';
}
- /** @name PalletEvmContractHelpersSponsoringModeT (359) */
+ /** @name PalletEvmContractHelpersSponsoringModeT (363) */
export interface PalletEvmContractHelpersSponsoringModeT extends Enum {
readonly isDisabled: boolean;
readonly isAllowlisted: boolean;
@@ -2732,20 +2740,20 @@
readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
}
- /** @name PalletEvmContractHelpersError (361) */
+ /** @name PalletEvmContractHelpersError (365) */
export interface PalletEvmContractHelpersError extends Enum {
readonly isNoPermission: boolean;
readonly type: 'NoPermission';
}
- /** @name PalletEvmMigrationError (362) */
+ /** @name PalletEvmMigrationError (366) */
export interface PalletEvmMigrationError extends Enum {
readonly isAccountNotEmpty: boolean;
readonly isAccountIsNotMigrating: boolean;
readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';
}
- /** @name SpRuntimeMultiSignature (364) */
+ /** @name SpRuntimeMultiSignature (368) */
export interface SpRuntimeMultiSignature extends Enum {
readonly isEd25519: boolean;
readonly asEd25519: SpCoreEd25519Signature;
@@ -2756,31 +2764,31 @@
readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
}
- /** @name SpCoreEd25519Signature (365) */
+ /** @name SpCoreEd25519Signature (369) */
export interface SpCoreEd25519Signature extends U8aFixed {}
- /** @name SpCoreSr25519Signature (367) */
+ /** @name SpCoreSr25519Signature (371) */
export interface SpCoreSr25519Signature extends U8aFixed {}
- /** @name SpCoreEcdsaSignature (368) */
+ /** @name SpCoreEcdsaSignature (372) */
export interface SpCoreEcdsaSignature extends U8aFixed {}
- /** @name FrameSystemExtensionsCheckSpecVersion (371) */
+ /** @name FrameSystemExtensionsCheckSpecVersion (375) */
export type FrameSystemExtensionsCheckSpecVersion = Null;
- /** @name FrameSystemExtensionsCheckGenesis (372) */
+ /** @name FrameSystemExtensionsCheckGenesis (376) */
export type FrameSystemExtensionsCheckGenesis = Null;
- /** @name FrameSystemExtensionsCheckNonce (375) */
+ /** @name FrameSystemExtensionsCheckNonce (379) */
export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
- /** @name FrameSystemExtensionsCheckWeight (376) */
+ /** @name FrameSystemExtensionsCheckWeight (380) */
export type FrameSystemExtensionsCheckWeight = Null;
- /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (377) */
+ /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (381) */
export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
- /** @name OpalRuntimeRuntime (378) */
+ /** @name OpalRuntimeRuntime (382) */
export type OpalRuntimeRuntime = Null;
} // declare module
tests/src/interfaces/unique/definitions.tsdiffbeforeafterboth--- a/tests/src/interfaces/unique/definitions.ts
+++ b/tests/src/interfaces/unique/definitions.ts
@@ -54,13 +54,26 @@
topmostTokenOwner: fun('Get token owner, in case of nested token - find parent recursive', [collectionParam, tokenParam], `Option<${CROSS_ACCOUNT_ID_TYPE}>`),
constMetadata: fun('Get token constant metadata', [collectionParam, tokenParam], 'Vec<u8>'),
variableMetadata: fun('Get token variable metadata', [collectionParam, tokenParam], 'Vec<u8>'),
-
collectionProperties: fun(
'Get collection properties',
[collectionParam, propertyKeysParam],
'Vec<UpDataStructsProperty>',
),
-
+ tokenProperties: fun(
+ 'Get token properties',
+ [collectionParam, tokenParam, propertyKeysParam],
+ 'Vec<UpDataStructsProperty>',
+ ),
+ propertyPermissions: fun(
+ 'Get property permissions',
+ [collectionParam, propertyKeysParam],
+ 'Vec<UpDataStructsPropertyKeyPermission>',
+ ),
+ tokenData: fun(
+ 'Get token data',
+ [collectionParam, tokenParam, propertyKeysParam],
+ 'UpDataStructsTokenData',
+ ),
tokenExists: fun('Check if token exists', [collectionParam, tokenParam], 'bool'),
collectionById: fun('Get collection by specified id', [collectionParam], 'Option<UpDataStructsRpcCollection>'),
collectionStats: fun('Get collection stats', [], 'UpDataStructsCollectionStats'),
tests/src/interfaces/unique/types.tsdiffbeforeafterboth1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import type { BTreeMap, BTreeSet, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';5import type { ITuple } from '@polkadot/types-codec/types';6import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';7import type { Event } from '@polkadot/types/interfaces/system';89/** @name CumulusPalletDmpQueueCall */10export interface CumulusPalletDmpQueueCall extends Enum {11 readonly isServiceOverweight: boolean;12 readonly asServiceOverweight: {13 readonly index: u64;14 readonly weightLimit: u64;15 } & Struct;16 readonly type: 'ServiceOverweight';17}1819/** @name CumulusPalletDmpQueueConfigData */20export interface CumulusPalletDmpQueueConfigData extends Struct {21 readonly maxIndividual: u64;22}2324/** @name CumulusPalletDmpQueueError */25export interface CumulusPalletDmpQueueError extends Enum {26 readonly isUnknown: boolean;27 readonly isOverLimit: boolean;28 readonly type: 'Unknown' | 'OverLimit';29}3031/** @name CumulusPalletDmpQueueEvent */32export interface CumulusPalletDmpQueueEvent extends Enum {33 readonly isInvalidFormat: boolean;34 readonly asInvalidFormat: U8aFixed;35 readonly isUnsupportedVersion: boolean;36 readonly asUnsupportedVersion: U8aFixed;37 readonly isExecutedDownward: boolean;38 readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;39 readonly isWeightExhausted: boolean;40 readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;41 readonly isOverweightEnqueued: boolean;42 readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;43 readonly isOverweightServiced: boolean;44 readonly asOverweightServiced: ITuple<[u64, u64]>;45 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';46}4748/** @name CumulusPalletDmpQueuePageIndexData */49export interface CumulusPalletDmpQueuePageIndexData extends Struct {50 readonly beginUsed: u32;51 readonly endUsed: u32;52 readonly overweightCount: u64;53}5455/** @name CumulusPalletParachainSystemCall */56export interface CumulusPalletParachainSystemCall extends Enum {57 readonly isSetValidationData: boolean;58 readonly asSetValidationData: {59 readonly data: CumulusPrimitivesParachainInherentParachainInherentData;60 } & Struct;61 readonly isSudoSendUpwardMessage: boolean;62 readonly asSudoSendUpwardMessage: {63 readonly message: Bytes;64 } & Struct;65 readonly isAuthorizeUpgrade: boolean;66 readonly asAuthorizeUpgrade: {67 readonly codeHash: H256;68 } & Struct;69 readonly isEnactAuthorizedUpgrade: boolean;70 readonly asEnactAuthorizedUpgrade: {71 readonly code: Bytes;72 } & Struct;73 readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';74}7576/** @name CumulusPalletParachainSystemError */77export interface CumulusPalletParachainSystemError extends Enum {78 readonly isOverlappingUpgrades: boolean;79 readonly isProhibitedByPolkadot: boolean;80 readonly isTooBig: boolean;81 readonly isValidationDataNotAvailable: boolean;82 readonly isHostConfigurationNotAvailable: boolean;83 readonly isNotScheduled: boolean;84 readonly isNothingAuthorized: boolean;85 readonly isUnauthorized: boolean;86 readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';87}8889/** @name CumulusPalletParachainSystemEvent */90export interface CumulusPalletParachainSystemEvent extends Enum {91 readonly isValidationFunctionStored: boolean;92 readonly isValidationFunctionApplied: boolean;93 readonly asValidationFunctionApplied: u32;94 readonly isValidationFunctionDiscarded: boolean;95 readonly isUpgradeAuthorized: boolean;96 readonly asUpgradeAuthorized: H256;97 readonly isDownwardMessagesReceived: boolean;98 readonly asDownwardMessagesReceived: u32;99 readonly isDownwardMessagesProcessed: boolean;100 readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;101 readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';102}103104/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */105export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {106 readonly dmqMqcHead: H256;107 readonly relayDispatchQueueSize: ITuple<[u32, u32]>;108 readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;109 readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;110}111112/** @name CumulusPalletXcmCall */113export interface CumulusPalletXcmCall extends Null {}114115/** @name CumulusPalletXcmError */116export interface CumulusPalletXcmError extends Null {}117118/** @name CumulusPalletXcmEvent */119export interface CumulusPalletXcmEvent extends Enum {120 readonly isInvalidFormat: boolean;121 readonly asInvalidFormat: U8aFixed;122 readonly isUnsupportedVersion: boolean;123 readonly asUnsupportedVersion: U8aFixed;124 readonly isExecutedDownward: boolean;125 readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;126 readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';127}128129/** @name CumulusPalletXcmpQueueCall */130export interface CumulusPalletXcmpQueueCall extends Enum {131 readonly isServiceOverweight: boolean;132 readonly asServiceOverweight: {133 readonly index: u64;134 readonly weightLimit: u64;135 } & Struct;136 readonly isSuspendXcmExecution: boolean;137 readonly isResumeXcmExecution: boolean;138 readonly isUpdateSuspendThreshold: boolean;139 readonly asUpdateSuspendThreshold: {140 readonly new_: u32;141 } & Struct;142 readonly isUpdateDropThreshold: boolean;143 readonly asUpdateDropThreshold: {144 readonly new_: u32;145 } & Struct;146 readonly isUpdateResumeThreshold: boolean;147 readonly asUpdateResumeThreshold: {148 readonly new_: u32;149 } & Struct;150 readonly isUpdateThresholdWeight: boolean;151 readonly asUpdateThresholdWeight: {152 readonly new_: u64;153 } & Struct;154 readonly isUpdateWeightRestrictDecay: boolean;155 readonly asUpdateWeightRestrictDecay: {156 readonly new_: u64;157 } & Struct;158 readonly isUpdateXcmpMaxIndividualWeight: boolean;159 readonly asUpdateXcmpMaxIndividualWeight: {160 readonly new_: u64;161 } & Struct;162 readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';163}164165/** @name CumulusPalletXcmpQueueError */166export interface CumulusPalletXcmpQueueError extends Enum {167 readonly isFailedToSend: boolean;168 readonly isBadXcmOrigin: boolean;169 readonly isBadXcm: boolean;170 readonly isBadOverweightIndex: boolean;171 readonly isWeightOverLimit: boolean;172 readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';173}174175/** @name CumulusPalletXcmpQueueEvent */176export interface CumulusPalletXcmpQueueEvent extends Enum {177 readonly isSuccess: boolean;178 readonly asSuccess: Option<H256>;179 readonly isFail: boolean;180 readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;181 readonly isBadVersion: boolean;182 readonly asBadVersion: Option<H256>;183 readonly isBadFormat: boolean;184 readonly asBadFormat: Option<H256>;185 readonly isUpwardMessageSent: boolean;186 readonly asUpwardMessageSent: Option<H256>;187 readonly isXcmpMessageSent: boolean;188 readonly asXcmpMessageSent: Option<H256>;189 readonly isOverweightEnqueued: boolean;190 readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;191 readonly isOverweightServiced: boolean;192 readonly asOverweightServiced: ITuple<[u64, u64]>;193 readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';194}195196/** @name CumulusPalletXcmpQueueInboundChannelDetails */197export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {198 readonly sender: u32;199 readonly state: CumulusPalletXcmpQueueInboundState;200 readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;201}202203/** @name CumulusPalletXcmpQueueInboundState */204export interface CumulusPalletXcmpQueueInboundState extends Enum {205 readonly isOk: boolean;206 readonly isSuspended: boolean;207 readonly type: 'Ok' | 'Suspended';208}209210/** @name CumulusPalletXcmpQueueOutboundChannelDetails */211export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {212 readonly recipient: u32;213 readonly state: CumulusPalletXcmpQueueOutboundState;214 readonly signalsExist: bool;215 readonly firstIndex: u16;216 readonly lastIndex: u16;217}218219/** @name CumulusPalletXcmpQueueOutboundState */220export interface CumulusPalletXcmpQueueOutboundState extends Enum {221 readonly isOk: boolean;222 readonly isSuspended: boolean;223 readonly type: 'Ok' | 'Suspended';224}225226/** @name CumulusPalletXcmpQueueQueueConfigData */227export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {228 readonly suspendThreshold: u32;229 readonly dropThreshold: u32;230 readonly resumeThreshold: u32;231 readonly thresholdWeight: u64;232 readonly weightRestrictDecay: u64;233 readonly xcmpMaxIndividualWeight: u64;234}235236/** @name CumulusPrimitivesParachainInherentParachainInherentData */237export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {238 readonly validationData: PolkadotPrimitivesV1PersistedValidationData;239 readonly relayChainState: SpTrieStorageProof;240 readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;241 readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;242}243244/** @name EthbloomBloom */245export interface EthbloomBloom extends U8aFixed {}246247/** @name EthereumBlock */248export interface EthereumBlock extends Struct {249 readonly header: EthereumHeader;250 readonly transactions: Vec<EthereumTransactionTransactionV2>;251 readonly ommers: Vec<EthereumHeader>;252}253254/** @name EthereumHeader */255export interface EthereumHeader extends Struct {256 readonly parentHash: H256;257 readonly ommersHash: H256;258 readonly beneficiary: H160;259 readonly stateRoot: H256;260 readonly transactionsRoot: H256;261 readonly receiptsRoot: H256;262 readonly logsBloom: EthbloomBloom;263 readonly difficulty: U256;264 readonly number: U256;265 readonly gasLimit: U256;266 readonly gasUsed: U256;267 readonly timestamp: u64;268 readonly extraData: Bytes;269 readonly mixHash: H256;270 readonly nonce: EthereumTypesHashH64;271}272273/** @name EthereumLog */274export interface EthereumLog extends Struct {275 readonly address: H160;276 readonly topics: Vec<H256>;277 readonly data: Bytes;278}279280/** @name EthereumReceiptEip658ReceiptData */281export interface EthereumReceiptEip658ReceiptData extends Struct {282 readonly statusCode: u8;283 readonly usedGas: U256;284 readonly logsBloom: EthbloomBloom;285 readonly logs: Vec<EthereumLog>;286}287288/** @name EthereumReceiptReceiptV3 */289export interface EthereumReceiptReceiptV3 extends Enum {290 readonly isLegacy: boolean;291 readonly asLegacy: EthereumReceiptEip658ReceiptData;292 readonly isEip2930: boolean;293 readonly asEip2930: EthereumReceiptEip658ReceiptData;294 readonly isEip1559: boolean;295 readonly asEip1559: EthereumReceiptEip658ReceiptData;296 readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';297}298299/** @name EthereumTransactionAccessListItem */300export interface EthereumTransactionAccessListItem extends Struct {301 readonly address: H160;302 readonly storageKeys: Vec<H256>;303}304305/** @name EthereumTransactionEip1559Transaction */306export interface EthereumTransactionEip1559Transaction extends Struct {307 readonly chainId: u64;308 readonly nonce: U256;309 readonly maxPriorityFeePerGas: U256;310 readonly maxFeePerGas: U256;311 readonly gasLimit: U256;312 readonly action: EthereumTransactionTransactionAction;313 readonly value: U256;314 readonly input: Bytes;315 readonly accessList: Vec<EthereumTransactionAccessListItem>;316 readonly oddYParity: bool;317 readonly r: H256;318 readonly s: H256;319}320321/** @name EthereumTransactionEip2930Transaction */322export interface EthereumTransactionEip2930Transaction extends Struct {323 readonly chainId: u64;324 readonly nonce: U256;325 readonly gasPrice: U256;326 readonly gasLimit: U256;327 readonly action: EthereumTransactionTransactionAction;328 readonly value: U256;329 readonly input: Bytes;330 readonly accessList: Vec<EthereumTransactionAccessListItem>;331 readonly oddYParity: bool;332 readonly r: H256;333 readonly s: H256;334}335336/** @name EthereumTransactionLegacyTransaction */337export interface EthereumTransactionLegacyTransaction extends Struct {338 readonly nonce: U256;339 readonly gasPrice: U256;340 readonly gasLimit: U256;341 readonly action: EthereumTransactionTransactionAction;342 readonly value: U256;343 readonly input: Bytes;344 readonly signature: EthereumTransactionTransactionSignature;345}346347/** @name EthereumTransactionTransactionAction */348export interface EthereumTransactionTransactionAction extends Enum {349 readonly isCall: boolean;350 readonly asCall: H160;351 readonly isCreate: boolean;352 readonly type: 'Call' | 'Create';353}354355/** @name EthereumTransactionTransactionSignature */356export interface EthereumTransactionTransactionSignature extends Struct {357 readonly v: u64;358 readonly r: H256;359 readonly s: H256;360}361362/** @name EthereumTransactionTransactionV2 */363export interface EthereumTransactionTransactionV2 extends Enum {364 readonly isLegacy: boolean;365 readonly asLegacy: EthereumTransactionLegacyTransaction;366 readonly isEip2930: boolean;367 readonly asEip2930: EthereumTransactionEip2930Transaction;368 readonly isEip1559: boolean;369 readonly asEip1559: EthereumTransactionEip1559Transaction;370 readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';371}372373/** @name EthereumTypesHashH64 */374export interface EthereumTypesHashH64 extends U8aFixed {}375376/** @name EvmCoreErrorExitError */377export interface EvmCoreErrorExitError extends Enum {378 readonly isStackUnderflow: boolean;379 readonly isStackOverflow: boolean;380 readonly isInvalidJump: boolean;381 readonly isInvalidRange: boolean;382 readonly isDesignatedInvalid: boolean;383 readonly isCallTooDeep: boolean;384 readonly isCreateCollision: boolean;385 readonly isCreateContractLimit: boolean;386 readonly isInvalidCode: boolean;387 readonly isOutOfOffset: boolean;388 readonly isOutOfGas: boolean;389 readonly isOutOfFund: boolean;390 readonly isPcUnderflow: boolean;391 readonly isCreateEmpty: boolean;392 readonly isOther: boolean;393 readonly asOther: Text;394 readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';395}396397/** @name EvmCoreErrorExitFatal */398export interface EvmCoreErrorExitFatal extends Enum {399 readonly isNotSupported: boolean;400 readonly isUnhandledInterrupt: boolean;401 readonly isCallErrorAsFatal: boolean;402 readonly asCallErrorAsFatal: EvmCoreErrorExitError;403 readonly isOther: boolean;404 readonly asOther: Text;405 readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';406}407408/** @name EvmCoreErrorExitReason */409export interface EvmCoreErrorExitReason extends Enum {410 readonly isSucceed: boolean;411 readonly asSucceed: EvmCoreErrorExitSucceed;412 readonly isError: boolean;413 readonly asError: EvmCoreErrorExitError;414 readonly isRevert: boolean;415 readonly asRevert: EvmCoreErrorExitRevert;416 readonly isFatal: boolean;417 readonly asFatal: EvmCoreErrorExitFatal;418 readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';419}420421/** @name EvmCoreErrorExitRevert */422export interface EvmCoreErrorExitRevert extends Enum {423 readonly isReverted: boolean;424 readonly type: 'Reverted';425}426427/** @name EvmCoreErrorExitSucceed */428export interface EvmCoreErrorExitSucceed extends Enum {429 readonly isStopped: boolean;430 readonly isReturned: boolean;431 readonly isSuicided: boolean;432 readonly type: 'Stopped' | 'Returned' | 'Suicided';433}434435/** @name FpRpcTransactionStatus */436export interface FpRpcTransactionStatus extends Struct {437 readonly transactionHash: H256;438 readonly transactionIndex: u32;439 readonly from: H160;440 readonly to: Option<H160>;441 readonly contractAddress: Option<H160>;442 readonly logs: Vec<EthereumLog>;443 readonly logsBloom: EthbloomBloom;444}445446/** @name FrameSupportPalletId */447export interface FrameSupportPalletId extends U8aFixed {}448449/** @name FrameSupportStorageBoundedBTreeSet */450export interface FrameSupportStorageBoundedBTreeSet extends BTreeSet<u32> {}451452/** @name FrameSupportTokensMiscBalanceStatus */453export interface FrameSupportTokensMiscBalanceStatus extends Enum {454 readonly isFree: boolean;455 readonly isReserved: boolean;456 readonly type: 'Free' | 'Reserved';457}458459/** @name FrameSupportWeightsDispatchClass */460export interface FrameSupportWeightsDispatchClass extends Enum {461 readonly isNormal: boolean;462 readonly isOperational: boolean;463 readonly isMandatory: boolean;464 readonly type: 'Normal' | 'Operational' | 'Mandatory';465}466467/** @name FrameSupportWeightsDispatchInfo */468export interface FrameSupportWeightsDispatchInfo extends Struct {469 readonly weight: u64;470 readonly class: FrameSupportWeightsDispatchClass;471 readonly paysFee: FrameSupportWeightsPays;472}473474/** @name FrameSupportWeightsPays */475export interface FrameSupportWeightsPays extends Enum {476 readonly isYes: boolean;477 readonly isNo: boolean;478 readonly type: 'Yes' | 'No';479}480481/** @name FrameSupportWeightsPerDispatchClassU32 */482export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {483 readonly normal: u32;484 readonly operational: u32;485 readonly mandatory: u32;486}487488/** @name FrameSupportWeightsPerDispatchClassU64 */489export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {490 readonly normal: u64;491 readonly operational: u64;492 readonly mandatory: u64;493}494495/** @name FrameSupportWeightsPerDispatchClassWeightsPerClass */496export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {497 readonly normal: FrameSystemLimitsWeightsPerClass;498 readonly operational: FrameSystemLimitsWeightsPerClass;499 readonly mandatory: FrameSystemLimitsWeightsPerClass;500}501502/** @name FrameSupportWeightsRuntimeDbWeight */503export interface FrameSupportWeightsRuntimeDbWeight extends Struct {504 readonly read: u64;505 readonly write: u64;506}507508/** @name FrameSupportWeightsWeightToFeeCoefficient */509export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {510 readonly coeffInteger: u128;511 readonly coeffFrac: Perbill;512 readonly negative: bool;513 readonly degree: u8;514}515516/** @name FrameSystemAccountInfo */517export interface FrameSystemAccountInfo extends Struct {518 readonly nonce: u32;519 readonly consumers: u32;520 readonly providers: u32;521 readonly sufficients: u32;522 readonly data: PalletBalancesAccountData;523}524525/** @name FrameSystemCall */526export interface FrameSystemCall extends Enum {527 readonly isFillBlock: boolean;528 readonly asFillBlock: {529 readonly ratio: Perbill;530 } & Struct;531 readonly isRemark: boolean;532 readonly asRemark: {533 readonly remark: Bytes;534 } & Struct;535 readonly isSetHeapPages: boolean;536 readonly asSetHeapPages: {537 readonly pages: u64;538 } & Struct;539 readonly isSetCode: boolean;540 readonly asSetCode: {541 readonly code: Bytes;542 } & Struct;543 readonly isSetCodeWithoutChecks: boolean;544 readonly asSetCodeWithoutChecks: {545 readonly code: Bytes;546 } & Struct;547 readonly isSetStorage: boolean;548 readonly asSetStorage: {549 readonly items: Vec<ITuple<[Bytes, Bytes]>>;550 } & Struct;551 readonly isKillStorage: boolean;552 readonly asKillStorage: {553 readonly keys_: Vec<Bytes>;554 } & Struct;555 readonly isKillPrefix: boolean;556 readonly asKillPrefix: {557 readonly prefix: Bytes;558 readonly subkeys: u32;559 } & Struct;560 readonly isRemarkWithEvent: boolean;561 readonly asRemarkWithEvent: {562 readonly remark: Bytes;563 } & Struct;564 readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';565}566567/** @name FrameSystemError */568export interface FrameSystemError extends Enum {569 readonly isInvalidSpecName: boolean;570 readonly isSpecVersionNeedsToIncrease: boolean;571 readonly isFailedToExtractRuntimeVersion: boolean;572 readonly isNonDefaultComposite: boolean;573 readonly isNonZeroRefCount: boolean;574 readonly isCallFiltered: boolean;575 readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';576}577578/** @name FrameSystemEvent */579export interface FrameSystemEvent extends Enum {580 readonly isExtrinsicSuccess: boolean;581 readonly asExtrinsicSuccess: {582 readonly dispatchInfo: FrameSupportWeightsDispatchInfo;583 } & Struct;584 readonly isExtrinsicFailed: boolean;585 readonly asExtrinsicFailed: {586 readonly dispatchError: SpRuntimeDispatchError;587 readonly dispatchInfo: FrameSupportWeightsDispatchInfo;588 } & Struct;589 readonly isCodeUpdated: boolean;590 readonly isNewAccount: boolean;591 readonly asNewAccount: {592 readonly account: AccountId32;593 } & Struct;594 readonly isKilledAccount: boolean;595 readonly asKilledAccount: {596 readonly account: AccountId32;597 } & Struct;598 readonly isRemarked: boolean;599 readonly asRemarked: {600 readonly sender: AccountId32;601 readonly hash_: H256;602 } & Struct;603 readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';604}605606/** @name FrameSystemEventRecord */607export interface FrameSystemEventRecord extends Struct {608 readonly phase: FrameSystemPhase;609 readonly event: Event;610 readonly topics: Vec<H256>;611}612613/** @name FrameSystemExtensionsCheckGenesis */614export interface FrameSystemExtensionsCheckGenesis extends Null {}615616/** @name FrameSystemExtensionsCheckNonce */617export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}618619/** @name FrameSystemExtensionsCheckSpecVersion */620export interface FrameSystemExtensionsCheckSpecVersion extends Null {}621622/** @name FrameSystemExtensionsCheckWeight */623export interface FrameSystemExtensionsCheckWeight extends Null {}624625/** @name FrameSystemLastRuntimeUpgradeInfo */626export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {627 readonly specVersion: Compact<u32>;628 readonly specName: Text;629}630631/** @name FrameSystemLimitsBlockLength */632export interface FrameSystemLimitsBlockLength extends Struct {633 readonly max: FrameSupportWeightsPerDispatchClassU32;634}635636/** @name FrameSystemLimitsBlockWeights */637export interface FrameSystemLimitsBlockWeights extends Struct {638 readonly baseBlock: u64;639 readonly maxBlock: u64;640 readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;641}642643/** @name FrameSystemLimitsWeightsPerClass */644export interface FrameSystemLimitsWeightsPerClass extends Struct {645 readonly baseExtrinsic: u64;646 readonly maxExtrinsic: Option<u64>;647 readonly maxTotal: Option<u64>;648 readonly reserved: Option<u64>;649}650651/** @name FrameSystemPhase */652export interface FrameSystemPhase extends Enum {653 readonly isApplyExtrinsic: boolean;654 readonly asApplyExtrinsic: u32;655 readonly isFinalization: boolean;656 readonly isInitialization: boolean;657 readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';658}659660/** @name OpalRuntimeRuntime */661export interface OpalRuntimeRuntime extends Null {}662663/** @name OrmlVestingModuleCall */664export interface OrmlVestingModuleCall extends Enum {665 readonly isClaim: boolean;666 readonly isVestedTransfer: boolean;667 readonly asVestedTransfer: {668 readonly dest: MultiAddress;669 readonly schedule: OrmlVestingVestingSchedule;670 } & Struct;671 readonly isUpdateVestingSchedules: boolean;672 readonly asUpdateVestingSchedules: {673 readonly who: MultiAddress;674 readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;675 } & Struct;676 readonly isClaimFor: boolean;677 readonly asClaimFor: {678 readonly dest: MultiAddress;679 } & Struct;680 readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';681}682683/** @name OrmlVestingModuleError */684export interface OrmlVestingModuleError extends Enum {685 readonly isZeroVestingPeriod: boolean;686 readonly isZeroVestingPeriodCount: boolean;687 readonly isInsufficientBalanceToLock: boolean;688 readonly isTooManyVestingSchedules: boolean;689 readonly isAmountLow: boolean;690 readonly isMaxVestingSchedulesExceeded: boolean;691 readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';692}693694/** @name OrmlVestingModuleEvent */695export interface OrmlVestingModuleEvent extends Enum {696 readonly isVestingScheduleAdded: boolean;697 readonly asVestingScheduleAdded: {698 readonly from: AccountId32;699 readonly to: AccountId32;700 readonly vestingSchedule: OrmlVestingVestingSchedule;701 } & Struct;702 readonly isClaimed: boolean;703 readonly asClaimed: {704 readonly who: AccountId32;705 readonly amount: u128;706 } & Struct;707 readonly isVestingSchedulesUpdated: boolean;708 readonly asVestingSchedulesUpdated: {709 readonly who: AccountId32;710 } & Struct;711 readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';712}713714/** @name OrmlVestingVestingSchedule */715export interface OrmlVestingVestingSchedule extends Struct {716 readonly start: u32;717 readonly period: u32;718 readonly periodCount: u32;719 readonly perPeriod: Compact<u128>;720}721722/** @name PalletBalancesAccountData */723export interface PalletBalancesAccountData extends Struct {724 readonly free: u128;725 readonly reserved: u128;726 readonly miscFrozen: u128;727 readonly feeFrozen: u128;728}729730/** @name PalletBalancesBalanceLock */731export interface PalletBalancesBalanceLock extends Struct {732 readonly id: U8aFixed;733 readonly amount: u128;734 readonly reasons: PalletBalancesReasons;735}736737/** @name PalletBalancesCall */738export interface PalletBalancesCall extends Enum {739 readonly isTransfer: boolean;740 readonly asTransfer: {741 readonly dest: MultiAddress;742 readonly value: Compact<u128>;743 } & Struct;744 readonly isSetBalance: boolean;745 readonly asSetBalance: {746 readonly who: MultiAddress;747 readonly newFree: Compact<u128>;748 readonly newReserved: Compact<u128>;749 } & Struct;750 readonly isForceTransfer: boolean;751 readonly asForceTransfer: {752 readonly source: MultiAddress;753 readonly dest: MultiAddress;754 readonly value: Compact<u128>;755 } & Struct;756 readonly isTransferKeepAlive: boolean;757 readonly asTransferKeepAlive: {758 readonly dest: MultiAddress;759 readonly value: Compact<u128>;760 } & Struct;761 readonly isTransferAll: boolean;762 readonly asTransferAll: {763 readonly dest: MultiAddress;764 readonly keepAlive: bool;765 } & Struct;766 readonly isForceUnreserve: boolean;767 readonly asForceUnreserve: {768 readonly who: MultiAddress;769 readonly amount: u128;770 } & Struct;771 readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';772}773774/** @name PalletBalancesError */775export interface PalletBalancesError extends Enum {776 readonly isVestingBalance: boolean;777 readonly isLiquidityRestrictions: boolean;778 readonly isInsufficientBalance: boolean;779 readonly isExistentialDeposit: boolean;780 readonly isKeepAlive: boolean;781 readonly isExistingVestingSchedule: boolean;782 readonly isDeadAccount: boolean;783 readonly isTooManyReserves: boolean;784 readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';785}786787/** @name PalletBalancesEvent */788export interface PalletBalancesEvent extends Enum {789 readonly isEndowed: boolean;790 readonly asEndowed: {791 readonly account: AccountId32;792 readonly freeBalance: u128;793 } & Struct;794 readonly isDustLost: boolean;795 readonly asDustLost: {796 readonly account: AccountId32;797 readonly amount: u128;798 } & Struct;799 readonly isTransfer: boolean;800 readonly asTransfer: {801 readonly from: AccountId32;802 readonly to: AccountId32;803 readonly amount: u128;804 } & Struct;805 readonly isBalanceSet: boolean;806 readonly asBalanceSet: {807 readonly who: AccountId32;808 readonly free: u128;809 readonly reserved: u128;810 } & Struct;811 readonly isReserved: boolean;812 readonly asReserved: {813 readonly who: AccountId32;814 readonly amount: u128;815 } & Struct;816 readonly isUnreserved: boolean;817 readonly asUnreserved: {818 readonly who: AccountId32;819 readonly amount: u128;820 } & Struct;821 readonly isReserveRepatriated: boolean;822 readonly asReserveRepatriated: {823 readonly from: AccountId32;824 readonly to: AccountId32;825 readonly amount: u128;826 readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;827 } & Struct;828 readonly isDeposit: boolean;829 readonly asDeposit: {830 readonly who: AccountId32;831 readonly amount: u128;832 } & Struct;833 readonly isWithdraw: boolean;834 readonly asWithdraw: {835 readonly who: AccountId32;836 readonly amount: u128;837 } & Struct;838 readonly isSlashed: boolean;839 readonly asSlashed: {840 readonly who: AccountId32;841 readonly amount: u128;842 } & Struct;843 readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';844}845846/** @name PalletBalancesReasons */847export interface PalletBalancesReasons extends Enum {848 readonly isFee: boolean;849 readonly isMisc: boolean;850 readonly isAll: boolean;851 readonly type: 'Fee' | 'Misc' | 'All';852}853854/** @name PalletBalancesReleases */855export interface PalletBalancesReleases extends Enum {856 readonly isV100: boolean;857 readonly isV200: boolean;858 readonly type: 'V100' | 'V200';859}860861/** @name PalletBalancesReserveData */862export interface PalletBalancesReserveData extends Struct {863 readonly id: U8aFixed;864 readonly amount: u128;865}866867/** @name PalletCommonError */868export interface PalletCommonError extends Enum {869 readonly isCollectionNotFound: boolean;870 readonly isMustBeTokenOwner: boolean;871 readonly isNoPermission: boolean;872 readonly isPublicMintingNotAllowed: boolean;873 readonly isAddressNotInAllowlist: boolean;874 readonly isCollectionNameLimitExceeded: boolean;875 readonly isCollectionDescriptionLimitExceeded: boolean;876 readonly isCollectionTokenPrefixLimitExceeded: boolean;877 readonly isTotalCollectionsLimitExceeded: boolean;878 readonly isTokenVariableDataLimitExceeded: boolean;879 readonly isCollectionAdminCountExceeded: boolean;880 readonly isCollectionLimitBoundsExceeded: boolean;881 readonly isOwnerPermissionsCantBeReverted: boolean;882 readonly isTransferNotAllowed: boolean;883 readonly isAccountTokenLimitExceeded: boolean;884 readonly isCollectionTokenLimitExceeded: boolean;885 readonly isMetadataFlagFrozen: boolean;886 readonly isTokenNotFound: boolean;887 readonly isTokenValueTooLow: boolean;888 readonly isApprovedValueTooLow: boolean;889 readonly isCantApproveMoreThanOwned: boolean;890 readonly isAddressIsZero: boolean;891 readonly isUnsupportedOperation: boolean;892 readonly isNotSufficientFounds: boolean;893 readonly isNestingIsDisabled: boolean;894 readonly isOnlyOwnerAllowedToNest: boolean;895 readonly isSourceCollectionIsNotAllowedToNest: boolean;896 readonly isCollectionFieldSizeExceeded: boolean;897 readonly isNoSpaceForProperty: boolean;898 readonly isPropertyLimitReached: boolean;899 readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'NestingIsDisabled' | 'OnlyOwnerAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached';900}901902/** @name PalletCommonEvent */903export interface PalletCommonEvent extends Enum {904 readonly isCollectionCreated: boolean;905 readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;906 readonly isCollectionDestroyed: boolean;907 readonly asCollectionDestroyed: u32;908 readonly isItemCreated: boolean;909 readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;910 readonly isItemDestroyed: boolean;911 readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;912 readonly isTransfer: boolean;913 readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;914 readonly isApproved: boolean;915 readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;916 readonly isCollectionPropertySet: boolean;917 readonly asCollectionPropertySet: ITuple<[u32, UpDataStructsProperty]>;918 readonly isCollectionPropertyDeleted: boolean;919 readonly asCollectionPropertyDeleted: ITuple<[u32, Bytes]>;920 readonly isTokenPropertySet: boolean;921 readonly asTokenPropertySet: ITuple<[u32, u32, UpDataStructsProperty]>;922 readonly isTokenPropertyDeleted: boolean;923 readonly asTokenPropertyDeleted: ITuple<[u32, u32, Bytes]>;924 readonly isPropertyPermissionSet: boolean;925 readonly asPropertyPermissionSet: ITuple<[u32, UpDataStructsPropertyKeyPermission]>;926 readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet';927}928929/** @name PalletEthereumCall */930export interface PalletEthereumCall extends Enum {931 readonly isTransact: boolean;932 readonly asTransact: {933 readonly transaction: EthereumTransactionTransactionV2;934 } & Struct;935 readonly type: 'Transact';936}937938/** @name PalletEthereumError */939export interface PalletEthereumError extends Enum {940 readonly isInvalidSignature: boolean;941 readonly isPreLogExists: boolean;942 readonly type: 'InvalidSignature' | 'PreLogExists';943}944945/** @name PalletEthereumEvent */946export interface PalletEthereumEvent extends Enum {947 readonly isExecuted: boolean;948 readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;949 readonly type: 'Executed';950}951952/** @name PalletEvmAccountBasicCrossAccountIdRepr */953export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {954 readonly isSubstrate: boolean;955 readonly asSubstrate: AccountId32;956 readonly isEthereum: boolean;957 readonly asEthereum: H160;958 readonly type: 'Substrate' | 'Ethereum';959}960961/** @name PalletEvmCall */962export interface PalletEvmCall extends Enum {963 readonly isWithdraw: boolean;964 readonly asWithdraw: {965 readonly address: H160;966 readonly value: u128;967 } & Struct;968 readonly isCall: boolean;969 readonly asCall: {970 readonly source: H160;971 readonly target: H160;972 readonly input: Bytes;973 readonly value: U256;974 readonly gasLimit: u64;975 readonly maxFeePerGas: U256;976 readonly maxPriorityFeePerGas: Option<U256>;977 readonly nonce: Option<U256>;978 readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;979 } & Struct;980 readonly isCreate: boolean;981 readonly asCreate: {982 readonly source: H160;983 readonly init: Bytes;984 readonly value: U256;985 readonly gasLimit: u64;986 readonly maxFeePerGas: U256;987 readonly maxPriorityFeePerGas: Option<U256>;988 readonly nonce: Option<U256>;989 readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;990 } & Struct;991 readonly isCreate2: boolean;992 readonly asCreate2: {993 readonly source: H160;994 readonly init: Bytes;995 readonly salt: H256;996 readonly value: U256;997 readonly gasLimit: u64;998 readonly maxFeePerGas: U256;999 readonly maxPriorityFeePerGas: Option<U256>;1000 readonly nonce: Option<U256>;1001 readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;1002 } & Struct;1003 readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';1004}10051006/** @name PalletEvmCoderSubstrateError */1007export interface PalletEvmCoderSubstrateError extends Enum {1008 readonly isOutOfGas: boolean;1009 readonly isOutOfFund: boolean;1010 readonly type: 'OutOfGas' | 'OutOfFund';1011}10121013/** @name PalletEvmContractHelpersError */1014export interface PalletEvmContractHelpersError extends Enum {1015 readonly isNoPermission: boolean;1016 readonly type: 'NoPermission';1017}10181019/** @name PalletEvmContractHelpersSponsoringModeT */1020export interface PalletEvmContractHelpersSponsoringModeT extends Enum {1021 readonly isDisabled: boolean;1022 readonly isAllowlisted: boolean;1023 readonly isGenerous: boolean;1024 readonly type: 'Disabled' | 'Allowlisted' | 'Generous';1025}10261027/** @name PalletEvmError */1028export interface PalletEvmError extends Enum {1029 readonly isBalanceLow: boolean;1030 readonly isFeeOverflow: boolean;1031 readonly isPaymentOverflow: boolean;1032 readonly isWithdrawFailed: boolean;1033 readonly isGasPriceTooLow: boolean;1034 readonly isInvalidNonce: boolean;1035 readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';1036}10371038/** @name PalletEvmEvent */1039export interface PalletEvmEvent extends Enum {1040 readonly isLog: boolean;1041 readonly asLog: EthereumLog;1042 readonly isCreated: boolean;1043 readonly asCreated: H160;1044 readonly isCreatedFailed: boolean;1045 readonly asCreatedFailed: H160;1046 readonly isExecuted: boolean;1047 readonly asExecuted: H160;1048 readonly isExecutedFailed: boolean;1049 readonly asExecutedFailed: H160;1050 readonly isBalanceDeposit: boolean;1051 readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;1052 readonly isBalanceWithdraw: boolean;1053 readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;1054 readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';1055}10561057/** @name PalletEvmMigrationCall */1058export interface PalletEvmMigrationCall extends Enum {1059 readonly isBegin: boolean;1060 readonly asBegin: {1061 readonly address: H160;1062 } & Struct;1063 readonly isSetData: boolean;1064 readonly asSetData: {1065 readonly address: H160;1066 readonly data: Vec<ITuple<[H256, H256]>>;1067 } & Struct;1068 readonly isFinish: boolean;1069 readonly asFinish: {1070 readonly address: H160;1071 readonly code: Bytes;1072 } & Struct;1073 readonly type: 'Begin' | 'SetData' | 'Finish';1074}10751076/** @name PalletEvmMigrationError */1077export interface PalletEvmMigrationError extends Enum {1078 readonly isAccountNotEmpty: boolean;1079 readonly isAccountIsNotMigrating: boolean;1080 readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';1081}10821083/** @name PalletFungibleError */1084export interface PalletFungibleError extends Enum {1085 readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;1086 readonly isFungibleItemsHaveNoId: boolean;1087 readonly isFungibleItemsDontHaveData: boolean;1088 readonly isFungibleDisallowsNesting: boolean;1089 readonly isPropertiesNotAllowed: boolean;1090 readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'PropertiesNotAllowed';1091}10921093/** @name PalletInflationCall */1094export interface PalletInflationCall extends Enum {1095 readonly isStartInflation: boolean;1096 readonly asStartInflation: {1097 readonly inflationStartRelayBlock: u32;1098 } & Struct;1099 readonly type: 'StartInflation';1100}11011102/** @name PalletNonfungibleError */1103export interface PalletNonfungibleError extends Enum {1104 readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;1105 readonly isNonfungibleItemsHaveNoAmount: boolean;1106 readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';1107}11081109/** @name PalletNonfungibleItemData */1110export interface PalletNonfungibleItemData extends Struct {1111 readonly constData: Bytes;1112 readonly variableData: Bytes;1113 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1114}11151116/** @name PalletRefungibleError */1117export interface PalletRefungibleError extends Enum {1118 readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;1119 readonly isWrongRefungiblePieces: boolean;1120 readonly isRefungibleDisallowsNesting: boolean;1121 readonly isPropertiesNotAllowed: boolean;1122 readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RefungibleDisallowsNesting' | 'PropertiesNotAllowed';1123}11241125/** @name PalletRefungibleItemData */1126export interface PalletRefungibleItemData extends Struct {1127 readonly constData: Bytes;1128 readonly variableData: Bytes;1129}11301131/** @name PalletStructureCall */1132export interface PalletStructureCall extends Null {}11331134/** @name PalletStructureError */1135export interface PalletStructureError extends Enum {1136 readonly isOuroborosDetected: boolean;1137 readonly isDepthLimit: boolean;1138 readonly isTokenNotFound: boolean;1139 readonly type: 'OuroborosDetected' | 'DepthLimit' | 'TokenNotFound';1140}11411142/** @name PalletStructureEvent */1143export interface PalletStructureEvent extends Enum {1144 readonly isExecuted: boolean;1145 readonly asExecuted: Result<Null, SpRuntimeDispatchError>;1146 readonly type: 'Executed';1147}11481149/** @name PalletSudoCall */1150export interface PalletSudoCall extends Enum {1151 readonly isSudo: boolean;1152 readonly asSudo: {1153 readonly call: Call;1154 } & Struct;1155 readonly isSudoUncheckedWeight: boolean;1156 readonly asSudoUncheckedWeight: {1157 readonly call: Call;1158 readonly weight: u64;1159 } & Struct;1160 readonly isSetKey: boolean;1161 readonly asSetKey: {1162 readonly new_: MultiAddress;1163 } & Struct;1164 readonly isSudoAs: boolean;1165 readonly asSudoAs: {1166 readonly who: MultiAddress;1167 readonly call: Call;1168 } & Struct;1169 readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';1170}11711172/** @name PalletSudoError */1173export interface PalletSudoError extends Enum {1174 readonly isRequireSudo: boolean;1175 readonly type: 'RequireSudo';1176}11771178/** @name PalletSudoEvent */1179export interface PalletSudoEvent extends Enum {1180 readonly isSudid: boolean;1181 readonly asSudid: {1182 readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1183 } & Struct;1184 readonly isKeyChanged: boolean;1185 readonly asKeyChanged: {1186 readonly oldSudoer: Option<AccountId32>;1187 } & Struct;1188 readonly isSudoAsDone: boolean;1189 readonly asSudoAsDone: {1190 readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1191 } & Struct;1192 readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1193}11941195/** @name PalletTemplateTransactionPaymentCall */1196export interface PalletTemplateTransactionPaymentCall extends Null {}11971198/** @name PalletTemplateTransactionPaymentChargeTransactionPayment */1199export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}12001201/** @name PalletTimestampCall */1202export interface PalletTimestampCall extends Enum {1203 readonly isSet: boolean;1204 readonly asSet: {1205 readonly now: Compact<u64>;1206 } & Struct;1207 readonly type: 'Set';1208}12091210/** @name PalletTransactionPaymentReleases */1211export interface PalletTransactionPaymentReleases extends Enum {1212 readonly isV1Ancient: boolean;1213 readonly isV2: boolean;1214 readonly type: 'V1Ancient' | 'V2';1215}12161217/** @name PalletTreasuryCall */1218export interface PalletTreasuryCall extends Enum {1219 readonly isProposeSpend: boolean;1220 readonly asProposeSpend: {1221 readonly value: Compact<u128>;1222 readonly beneficiary: MultiAddress;1223 } & Struct;1224 readonly isRejectProposal: boolean;1225 readonly asRejectProposal: {1226 readonly proposalId: Compact<u32>;1227 } & Struct;1228 readonly isApproveProposal: boolean;1229 readonly asApproveProposal: {1230 readonly proposalId: Compact<u32>;1231 } & Struct;1232 readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';1233}12341235/** @name PalletTreasuryError */1236export interface PalletTreasuryError extends Enum {1237 readonly isInsufficientProposersBalance: boolean;1238 readonly isInvalidIndex: boolean;1239 readonly isTooManyApprovals: boolean;1240 readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';1241}12421243/** @name PalletTreasuryEvent */1244export interface PalletTreasuryEvent extends Enum {1245 readonly isProposed: boolean;1246 readonly asProposed: {1247 readonly proposalIndex: u32;1248 } & Struct;1249 readonly isSpending: boolean;1250 readonly asSpending: {1251 readonly budgetRemaining: u128;1252 } & Struct;1253 readonly isAwarded: boolean;1254 readonly asAwarded: {1255 readonly proposalIndex: u32;1256 readonly award: u128;1257 readonly account: AccountId32;1258 } & Struct;1259 readonly isRejected: boolean;1260 readonly asRejected: {1261 readonly proposalIndex: u32;1262 readonly slashed: u128;1263 } & Struct;1264 readonly isBurnt: boolean;1265 readonly asBurnt: {1266 readonly burntFunds: u128;1267 } & Struct;1268 readonly isRollover: boolean;1269 readonly asRollover: {1270 readonly rolloverBalance: u128;1271 } & Struct;1272 readonly isDeposit: boolean;1273 readonly asDeposit: {1274 readonly value: u128;1275 } & Struct;1276 readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';1277}12781279/** @name PalletTreasuryProposal */1280export interface PalletTreasuryProposal extends Struct {1281 readonly proposer: AccountId32;1282 readonly value: u128;1283 readonly beneficiary: AccountId32;1284 readonly bond: u128;1285}12861287/** @name PalletUniqueCall */1288export interface PalletUniqueCall extends Enum {1289 readonly isCreateCollection: boolean;1290 readonly asCreateCollection: {1291 readonly collectionName: Vec<u16>;1292 readonly collectionDescription: Vec<u16>;1293 readonly tokenPrefix: Bytes;1294 readonly mode: UpDataStructsCollectionMode;1295 } & Struct;1296 readonly isCreateCollectionEx: boolean;1297 readonly asCreateCollectionEx: {1298 readonly data: UpDataStructsCreateCollectionData;1299 } & Struct;1300 readonly isDestroyCollection: boolean;1301 readonly asDestroyCollection: {1302 readonly collectionId: u32;1303 } & Struct;1304 readonly isAddToAllowList: boolean;1305 readonly asAddToAllowList: {1306 readonly collectionId: u32;1307 readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1308 } & Struct;1309 readonly isRemoveFromAllowList: boolean;1310 readonly asRemoveFromAllowList: {1311 readonly collectionId: u32;1312 readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1313 } & Struct;1314 readonly isSetPublicAccessMode: boolean;1315 readonly asSetPublicAccessMode: {1316 readonly collectionId: u32;1317 readonly mode: UpDataStructsAccessMode;1318 } & Struct;1319 readonly isSetMintPermission: boolean;1320 readonly asSetMintPermission: {1321 readonly collectionId: u32;1322 readonly mintPermission: bool;1323 } & Struct;1324 readonly isChangeCollectionOwner: boolean;1325 readonly asChangeCollectionOwner: {1326 readonly collectionId: u32;1327 readonly newOwner: AccountId32;1328 } & Struct;1329 readonly isAddCollectionAdmin: boolean;1330 readonly asAddCollectionAdmin: {1331 readonly collectionId: u32;1332 readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;1333 } & Struct;1334 readonly isRemoveCollectionAdmin: boolean;1335 readonly asRemoveCollectionAdmin: {1336 readonly collectionId: u32;1337 readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;1338 } & Struct;1339 readonly isSetCollectionSponsor: boolean;1340 readonly asSetCollectionSponsor: {1341 readonly collectionId: u32;1342 readonly newSponsor: AccountId32;1343 } & Struct;1344 readonly isConfirmSponsorship: boolean;1345 readonly asConfirmSponsorship: {1346 readonly collectionId: u32;1347 } & Struct;1348 readonly isRemoveCollectionSponsor: boolean;1349 readonly asRemoveCollectionSponsor: {1350 readonly collectionId: u32;1351 } & Struct;1352 readonly isCreateItem: boolean;1353 readonly asCreateItem: {1354 readonly collectionId: u32;1355 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1356 readonly data: UpDataStructsCreateItemData;1357 } & Struct;1358 readonly isCreateMultipleItems: boolean;1359 readonly asCreateMultipleItems: {1360 readonly collectionId: u32;1361 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1362 readonly itemsData: Vec<UpDataStructsCreateItemData>;1363 } & Struct;1364 readonly isSetCollectionProperties: boolean;1365 readonly asSetCollectionProperties: {1366 readonly collectionId: u32;1367 readonly properties: Vec<UpDataStructsProperty>;1368 } & Struct;1369 readonly isDeleteCollectionProperties: boolean;1370 readonly asDeleteCollectionProperties: {1371 readonly collectionId: u32;1372 readonly propertyKeys: Vec<Bytes>;1373 } & Struct;1374 readonly isSetTokenProperties: boolean;1375 readonly asSetTokenProperties: {1376 readonly collectionId: u32;1377 readonly tokenId: u32;1378 readonly properties: Vec<UpDataStructsProperty>;1379 } & Struct;1380 readonly isDeleteTokenProperties: boolean;1381 readonly asDeleteTokenProperties: {1382 readonly collectionId: u32;1383 readonly tokenId: u32;1384 readonly propertyKeys: Vec<Bytes>;1385 } & Struct;1386 readonly isSetPropertyPermissions: boolean;1387 readonly asSetPropertyPermissions: {1388 readonly collectionId: u32;1389 readonly propertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;1390 } & Struct;1391 readonly isCreateMultipleItemsEx: boolean;1392 readonly asCreateMultipleItemsEx: {1393 readonly collectionId: u32;1394 readonly data: UpDataStructsCreateItemExData;1395 } & Struct;1396 readonly isSetTransfersEnabledFlag: boolean;1397 readonly asSetTransfersEnabledFlag: {1398 readonly collectionId: u32;1399 readonly value: bool;1400 } & Struct;1401 readonly isBurnItem: boolean;1402 readonly asBurnItem: {1403 readonly collectionId: u32;1404 readonly itemId: u32;1405 readonly value: u128;1406 } & Struct;1407 readonly isBurnFrom: boolean;1408 readonly asBurnFrom: {1409 readonly collectionId: u32;1410 readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1411 readonly itemId: u32;1412 readonly value: u128;1413 } & Struct;1414 readonly isTransfer: boolean;1415 readonly asTransfer: {1416 readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1417 readonly collectionId: u32;1418 readonly itemId: u32;1419 readonly value: u128;1420 } & Struct;1421 readonly isApprove: boolean;1422 readonly asApprove: {1423 readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;1424 readonly collectionId: u32;1425 readonly itemId: u32;1426 readonly amount: u128;1427 } & Struct;1428 readonly isTransferFrom: boolean;1429 readonly asTransferFrom: {1430 readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1431 readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1432 readonly collectionId: u32;1433 readonly itemId: u32;1434 readonly value: u128;1435 } & Struct;1436 readonly isSetVariableMetaData: boolean;1437 readonly asSetVariableMetaData: {1438 readonly collectionId: u32;1439 readonly itemId: u32;1440 readonly data: Bytes;1441 } & Struct;1442 readonly isSetMetaUpdatePermissionFlag: boolean;1443 readonly asSetMetaUpdatePermissionFlag: {1444 readonly collectionId: u32;1445 readonly value: UpDataStructsMetaUpdatePermission;1446 } & Struct;1447 readonly isSetSchemaVersion: boolean;1448 readonly asSetSchemaVersion: {1449 readonly collectionId: u32;1450 readonly version: UpDataStructsSchemaVersion;1451 } & Struct;1452 readonly isSetOffchainSchema: boolean;1453 readonly asSetOffchainSchema: {1454 readonly collectionId: u32;1455 readonly schema: Bytes;1456 } & Struct;1457 readonly isSetConstOnChainSchema: boolean;1458 readonly asSetConstOnChainSchema: {1459 readonly collectionId: u32;1460 readonly schema: Bytes;1461 } & Struct;1462 readonly isSetVariableOnChainSchema: boolean;1463 readonly asSetVariableOnChainSchema: {1464 readonly collectionId: u32;1465 readonly schema: Bytes;1466 } & Struct;1467 readonly isSetCollectionLimits: boolean;1468 readonly asSetCollectionLimits: {1469 readonly collectionId: u32;1470 readonly newLimit: UpDataStructsCollectionLimits;1471 } & Struct;1472 readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'SetCollectionProperties' | 'DeleteCollectionProperties' | 'SetTokenProperties' | 'DeleteTokenProperties' | 'SetPropertyPermissions' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';1473}14741475/** @name PalletUniqueError */1476export interface PalletUniqueError extends Enum {1477 readonly isCollectionDecimalPointLimitExceeded: boolean;1478 readonly isConfirmUnsetSponsorFail: boolean;1479 readonly isEmptyArgument: boolean;1480 readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';1481}14821483/** @name PalletUniqueRawEvent */1484export interface PalletUniqueRawEvent extends Enum {1485 readonly isCollectionSponsorRemoved: boolean;1486 readonly asCollectionSponsorRemoved: u32;1487 readonly isCollectionAdminAdded: boolean;1488 readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1489 readonly isCollectionOwnedChanged: boolean;1490 readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;1491 readonly isCollectionSponsorSet: boolean;1492 readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;1493 readonly isConstOnChainSchemaSet: boolean;1494 readonly asConstOnChainSchemaSet: u32;1495 readonly isSponsorshipConfirmed: boolean;1496 readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;1497 readonly isCollectionAdminRemoved: boolean;1498 readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1499 readonly isAllowListAddressRemoved: boolean;1500 readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1501 readonly isAllowListAddressAdded: boolean;1502 readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1503 readonly isCollectionLimitSet: boolean;1504 readonly asCollectionLimitSet: u32;1505 readonly isMintPermissionSet: boolean;1506 readonly asMintPermissionSet: u32;1507 readonly isOffchainSchemaSet: boolean;1508 readonly asOffchainSchemaSet: u32;1509 readonly isPublicAccessModeSet: boolean;1510 readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;1511 readonly isSchemaVersionSet: boolean;1512 readonly asSchemaVersionSet: u32;1513 readonly isVariableOnChainSchemaSet: boolean;1514 readonly asVariableOnChainSchemaSet: u32;1515 readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';1516}15171518/** @name PalletXcmCall */1519export interface PalletXcmCall extends Enum {1520 readonly isSend: boolean;1521 readonly asSend: {1522 readonly dest: XcmVersionedMultiLocation;1523 readonly message: XcmVersionedXcm;1524 } & Struct;1525 readonly isTeleportAssets: boolean;1526 readonly asTeleportAssets: {1527 readonly dest: XcmVersionedMultiLocation;1528 readonly beneficiary: XcmVersionedMultiLocation;1529 readonly assets: XcmVersionedMultiAssets;1530 readonly feeAssetItem: u32;1531 } & Struct;1532 readonly isReserveTransferAssets: boolean;1533 readonly asReserveTransferAssets: {1534 readonly dest: XcmVersionedMultiLocation;1535 readonly beneficiary: XcmVersionedMultiLocation;1536 readonly assets: XcmVersionedMultiAssets;1537 readonly feeAssetItem: u32;1538 } & Struct;1539 readonly isExecute: boolean;1540 readonly asExecute: {1541 readonly message: XcmVersionedXcm;1542 readonly maxWeight: u64;1543 } & Struct;1544 readonly isForceXcmVersion: boolean;1545 readonly asForceXcmVersion: {1546 readonly location: XcmV1MultiLocation;1547 readonly xcmVersion: u32;1548 } & Struct;1549 readonly isForceDefaultXcmVersion: boolean;1550 readonly asForceDefaultXcmVersion: {1551 readonly maybeXcmVersion: Option<u32>;1552 } & Struct;1553 readonly isForceSubscribeVersionNotify: boolean;1554 readonly asForceSubscribeVersionNotify: {1555 readonly location: XcmVersionedMultiLocation;1556 } & Struct;1557 readonly isForceUnsubscribeVersionNotify: boolean;1558 readonly asForceUnsubscribeVersionNotify: {1559 readonly location: XcmVersionedMultiLocation;1560 } & Struct;1561 readonly isLimitedReserveTransferAssets: boolean;1562 readonly asLimitedReserveTransferAssets: {1563 readonly dest: XcmVersionedMultiLocation;1564 readonly beneficiary: XcmVersionedMultiLocation;1565 readonly assets: XcmVersionedMultiAssets;1566 readonly feeAssetItem: u32;1567 readonly weightLimit: XcmV2WeightLimit;1568 } & Struct;1569 readonly isLimitedTeleportAssets: boolean;1570 readonly asLimitedTeleportAssets: {1571 readonly dest: XcmVersionedMultiLocation;1572 readonly beneficiary: XcmVersionedMultiLocation;1573 readonly assets: XcmVersionedMultiAssets;1574 readonly feeAssetItem: u32;1575 readonly weightLimit: XcmV2WeightLimit;1576 } & Struct;1577 readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';1578}15791580/** @name PalletXcmError */1581export interface PalletXcmError extends Enum {1582 readonly isUnreachable: boolean;1583 readonly isSendFailure: boolean;1584 readonly isFiltered: boolean;1585 readonly isUnweighableMessage: boolean;1586 readonly isDestinationNotInvertible: boolean;1587 readonly isEmpty: boolean;1588 readonly isCannotReanchor: boolean;1589 readonly isTooManyAssets: boolean;1590 readonly isInvalidOrigin: boolean;1591 readonly isBadVersion: boolean;1592 readonly isBadLocation: boolean;1593 readonly isNoSubscription: boolean;1594 readonly isAlreadySubscribed: boolean;1595 readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';1596}15971598/** @name PalletXcmEvent */1599export interface PalletXcmEvent extends Enum {1600 readonly isAttempted: boolean;1601 readonly asAttempted: XcmV2TraitsOutcome;1602 readonly isSent: boolean;1603 readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1604 readonly isUnexpectedResponse: boolean;1605 readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1606 readonly isResponseReady: boolean;1607 readonly asResponseReady: ITuple<[u64, XcmV2Response]>;1608 readonly isNotified: boolean;1609 readonly asNotified: ITuple<[u64, u8, u8]>;1610 readonly isNotifyOverweight: boolean;1611 readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;1612 readonly isNotifyDispatchError: boolean;1613 readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;1614 readonly isNotifyDecodeFailed: boolean;1615 readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;1616 readonly isInvalidResponder: boolean;1617 readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;1618 readonly isInvalidResponderVersion: boolean;1619 readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;1620 readonly isResponseTaken: boolean;1621 readonly asResponseTaken: u64;1622 readonly isAssetsTrapped: boolean;1623 readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;1624 readonly isVersionChangeNotified: boolean;1625 readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;1626 readonly isSupportedVersionChanged: boolean;1627 readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;1628 readonly isNotifyTargetSendFail: boolean;1629 readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;1630 readonly isNotifyTargetMigrationFail: boolean;1631 readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;1632 readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';1633}16341635/** @name PhantomTypeUpDataStructs */1636export interface PhantomTypeUpDataStructs extends Vec<Lookup326> {}16371638/** @name PolkadotCorePrimitivesInboundDownwardMessage */1639export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {1640 readonly sentAt: u32;1641 readonly msg: Bytes;1642}16431644/** @name PolkadotCorePrimitivesInboundHrmpMessage */1645export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {1646 readonly sentAt: u32;1647 readonly data: Bytes;1648}16491650/** @name PolkadotCorePrimitivesOutboundHrmpMessage */1651export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {1652 readonly recipient: u32;1653 readonly data: Bytes;1654}16551656/** @name PolkadotParachainPrimitivesXcmpMessageFormat */1657export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {1658 readonly isConcatenatedVersionedXcm: boolean;1659 readonly isConcatenatedEncodedBlob: boolean;1660 readonly isSignals: boolean;1661 readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';1662}16631664/** @name PolkadotPrimitivesV1AbridgedHostConfiguration */1665export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {1666 readonly maxCodeSize: u32;1667 readonly maxHeadDataSize: u32;1668 readonly maxUpwardQueueCount: u32;1669 readonly maxUpwardQueueSize: u32;1670 readonly maxUpwardMessageSize: u32;1671 readonly maxUpwardMessageNumPerCandidate: u32;1672 readonly hrmpMaxMessageNumPerCandidate: u32;1673 readonly validationUpgradeCooldown: u32;1674 readonly validationUpgradeDelay: u32;1675}16761677/** @name PolkadotPrimitivesV1AbridgedHrmpChannel */1678export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {1679 readonly maxCapacity: u32;1680 readonly maxTotalSize: u32;1681 readonly maxMessageSize: u32;1682 readonly msgCount: u32;1683 readonly totalSize: u32;1684 readonly mqcHead: Option<H256>;1685}16861687/** @name PolkadotPrimitivesV1PersistedValidationData */1688export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {1689 readonly parentHead: Bytes;1690 readonly relayParentNumber: u32;1691 readonly relayParentStorageRoot: H256;1692 readonly maxPovSize: u32;1693}16941695/** @name PolkadotPrimitivesV1UpgradeRestriction */1696export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {1697 readonly isPresent: boolean;1698 readonly type: 'Present';1699}17001701/** @name SpCoreEcdsaSignature */1702export interface SpCoreEcdsaSignature extends U8aFixed {}17031704/** @name SpCoreEd25519Signature */1705export interface SpCoreEd25519Signature extends U8aFixed {}17061707/** @name SpCoreSr25519Signature */1708export interface SpCoreSr25519Signature extends U8aFixed {}17091710/** @name SpRuntimeArithmeticError */1711export interface SpRuntimeArithmeticError extends Enum {1712 readonly isUnderflow: boolean;1713 readonly isOverflow: boolean;1714 readonly isDivisionByZero: boolean;1715 readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1716}17171718/** @name SpRuntimeDigest */1719export interface SpRuntimeDigest extends Struct {1720 readonly logs: Vec<SpRuntimeDigestDigestItem>;1721}17221723/** @name SpRuntimeDigestDigestItem */1724export interface SpRuntimeDigestDigestItem extends Enum {1725 readonly isOther: boolean;1726 readonly asOther: Bytes;1727 readonly isConsensus: boolean;1728 readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1729 readonly isSeal: boolean;1730 readonly asSeal: ITuple<[U8aFixed, Bytes]>;1731 readonly isPreRuntime: boolean;1732 readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1733 readonly isRuntimeEnvironmentUpdated: boolean;1734 readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1735}17361737/** @name SpRuntimeDispatchError */1738export interface SpRuntimeDispatchError extends Enum {1739 readonly isOther: boolean;1740 readonly isCannotLookup: boolean;1741 readonly isBadOrigin: boolean;1742 readonly isModule: boolean;1743 readonly asModule: SpRuntimeModuleError;1744 readonly isConsumerRemaining: boolean;1745 readonly isNoProviders: boolean;1746 readonly isTooManyConsumers: boolean;1747 readonly isToken: boolean;1748 readonly asToken: SpRuntimeTokenError;1749 readonly isArithmetic: boolean;1750 readonly asArithmetic: SpRuntimeArithmeticError;1751 readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1752}17531754/** @name SpRuntimeModuleError */1755export interface SpRuntimeModuleError extends Struct {1756 readonly index: u8;1757 readonly error: u8;1758}17591760/** @name SpRuntimeMultiSignature */1761export interface SpRuntimeMultiSignature extends Enum {1762 readonly isEd25519: boolean;1763 readonly asEd25519: SpCoreEd25519Signature;1764 readonly isSr25519: boolean;1765 readonly asSr25519: SpCoreSr25519Signature;1766 readonly isEcdsa: boolean;1767 readonly asEcdsa: SpCoreEcdsaSignature;1768 readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';1769}17701771/** @name SpRuntimeTokenError */1772export interface SpRuntimeTokenError extends Enum {1773 readonly isNoFunds: boolean;1774 readonly isWouldDie: boolean;1775 readonly isBelowMinimum: boolean;1776 readonly isCannotCreate: boolean;1777 readonly isUnknownAsset: boolean;1778 readonly isFrozen: boolean;1779 readonly isUnsupported: boolean;1780 readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1781}17821783/** @name SpTrieStorageProof */1784export interface SpTrieStorageProof extends Struct {1785 readonly trieNodes: BTreeSet<Bytes>;1786}17871788/** @name SpVersionRuntimeVersion */1789export interface SpVersionRuntimeVersion extends Struct {1790 readonly specName: Text;1791 readonly implName: Text;1792 readonly authoringVersion: u32;1793 readonly specVersion: u32;1794 readonly implVersion: u32;1795 readonly apis: Vec<ITuple<[U8aFixed, u32]>>;1796 readonly transactionVersion: u32;1797 readonly stateVersion: u8;1798}17991800/** @name UpDataStructsAccessMode */1801export interface UpDataStructsAccessMode extends Enum {1802 readonly isNormal: boolean;1803 readonly isAllowList: boolean;1804 readonly type: 'Normal' | 'AllowList';1805}18061807/** @name UpDataStructsCollection */1808export interface UpDataStructsCollection extends Struct {1809 readonly owner: AccountId32;1810 readonly mode: UpDataStructsCollectionMode;1811 readonly access: UpDataStructsAccessMode;1812 readonly name: Vec<u16>;1813 readonly description: Vec<u16>;1814 readonly tokenPrefix: Bytes;1815 readonly mintMode: bool;1816 readonly schemaVersion: UpDataStructsSchemaVersion;1817 readonly sponsorship: UpDataStructsSponsorshipState;1818 readonly limits: UpDataStructsCollectionLimits;1819 readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1820}18211822/** @name UpDataStructsCollectionField */1823export interface UpDataStructsCollectionField extends Enum {1824 readonly isVariableOnChainSchema: boolean;1825 readonly isConstOnChainSchema: boolean;1826 readonly isOffchainSchema: boolean;1827 readonly type: 'VariableOnChainSchema' | 'ConstOnChainSchema' | 'OffchainSchema';1828}18291830/** @name UpDataStructsCollectionLimits */1831export interface UpDataStructsCollectionLimits extends Struct {1832 readonly accountTokenOwnershipLimit: Option<u32>;1833 readonly sponsoredDataSize: Option<u32>;1834 readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1835 readonly tokenLimit: Option<u32>;1836 readonly sponsorTransferTimeout: Option<u32>;1837 readonly sponsorApproveTimeout: Option<u32>;1838 readonly ownerCanTransfer: Option<bool>;1839 readonly ownerCanDestroy: Option<bool>;1840 readonly transfersEnabled: Option<bool>;1841 readonly nestingRule: Option<UpDataStructsNestingRule>;1842}18431844/** @name UpDataStructsCollectionMode */1845export interface UpDataStructsCollectionMode extends Enum {1846 readonly isNft: boolean;1847 readonly isFungible: boolean;1848 readonly asFungible: u8;1849 readonly isReFungible: boolean;1850 readonly type: 'Nft' | 'Fungible' | 'ReFungible';1851}18521853/** @name UpDataStructsCollectionStats */1854export interface UpDataStructsCollectionStats extends Struct {1855 readonly created: u32;1856 readonly destroyed: u32;1857 readonly alive: u32;1858}18591860/** @name UpDataStructsCreateCollectionData */1861export interface UpDataStructsCreateCollectionData extends Struct {1862 readonly mode: UpDataStructsCollectionMode;1863 readonly access: Option<UpDataStructsAccessMode>;1864 readonly name: Vec<u16>;1865 readonly description: Vec<u16>;1866 readonly tokenPrefix: Bytes;1867 readonly offchainSchema: Bytes;1868 readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1869 readonly pendingSponsor: Option<AccountId32>;1870 readonly limits: Option<UpDataStructsCollectionLimits>;1871 readonly variableOnChainSchema: Bytes;1872 readonly constOnChainSchema: Bytes;1873 readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1874 readonly tokenPropertyPermissions: Vec<UpDataStructsPropertyKeyPermission>;1875 readonly properties: Vec<UpDataStructsProperty>;1876}18771878/** @name UpDataStructsCreateFungibleData */1879export interface UpDataStructsCreateFungibleData extends Struct {1880 readonly value: u128;1881}18821883/** @name UpDataStructsCreateItemData */1884export interface UpDataStructsCreateItemData extends Enum {1885 readonly isNft: boolean;1886 readonly asNft: UpDataStructsCreateNftData;1887 readonly isFungible: boolean;1888 readonly asFungible: UpDataStructsCreateFungibleData;1889 readonly isReFungible: boolean;1890 readonly asReFungible: UpDataStructsCreateReFungibleData;1891 readonly type: 'Nft' | 'Fungible' | 'ReFungible';1892}18931894/** @name UpDataStructsCreateItemExData */1895export interface UpDataStructsCreateItemExData extends Enum {1896 readonly isNft: boolean;1897 readonly asNft: Vec<UpDataStructsCreateNftExData>;1898 readonly isFungible: boolean;1899 readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;1900 readonly isRefungibleMultipleItems: boolean;1901 readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1902 readonly isRefungibleMultipleOwners: boolean;1903 readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1904 readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1905}19061907/** @name UpDataStructsCreateNftData */1908export interface UpDataStructsCreateNftData extends Struct {1909 readonly constData: Bytes;1910 readonly variableData: Bytes;1911}19121913/** @name UpDataStructsCreateNftExData */1914export interface UpDataStructsCreateNftExData extends Struct {1915 readonly constData: Bytes;1916 readonly variableData: Bytes;1917 readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1918}19191920/** @name UpDataStructsCreateReFungibleData */1921export interface UpDataStructsCreateReFungibleData extends Struct {1922 readonly constData: Bytes;1923 readonly variableData: Bytes;1924 readonly pieces: u128;1925}19261927/** @name UpDataStructsCreateRefungibleExData */1928export interface UpDataStructsCreateRefungibleExData extends Struct {1929 readonly constData: Bytes;1930 readonly variableData: Bytes;1931 readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1932}19331934/** @name UpDataStructsMetaUpdatePermission */1935export interface UpDataStructsMetaUpdatePermission extends Enum {1936 readonly isItemOwner: boolean;1937 readonly isAdmin: boolean;1938 readonly isNone: boolean;1939 readonly type: 'ItemOwner' | 'Admin' | 'None';1940}19411942/** @name UpDataStructsNestingRule */1943export interface UpDataStructsNestingRule extends Enum {1944 readonly isDisabled: boolean;1945 readonly isOwner: boolean;1946 readonly isOwnerRestricted: boolean;1947 readonly asOwnerRestricted: FrameSupportStorageBoundedBTreeSet;1948 readonly type: 'Disabled' | 'Owner' | 'OwnerRestricted';1949}19501951/** @name UpDataStructsProperties */1952export interface UpDataStructsProperties extends Struct {1953 readonly map: BTreeMap<Bytes, Bytes>;1954 readonly consumedSpace: u32;1955 readonly spaceLimit: u32;1956}19571958/** @name UpDataStructsProperty */1959export interface UpDataStructsProperty extends Struct {1960 readonly key: Bytes;1961 readonly value: Bytes;1962}19631964/** @name UpDataStructsPropertyKeyPermission */1965export interface UpDataStructsPropertyKeyPermission extends Struct {1966 readonly key: Bytes;1967 readonly permission: UpDataStructsPropertyPermission;1968}19691970/** @name UpDataStructsPropertyPermission */1971export interface UpDataStructsPropertyPermission extends Enum {1972 readonly isNone: boolean;1973 readonly isAdminConst: boolean;1974 readonly isAdmin: boolean;1975 readonly isItemOwnerConst: boolean;1976 readonly isItemOwner: boolean;1977 readonly isItemOwnerOrAdmin: boolean;1978 readonly type: 'None' | 'AdminConst' | 'Admin' | 'ItemOwnerConst' | 'ItemOwner' | 'ItemOwnerOrAdmin';1979}19801981/** @name UpDataStructsRpcCollection */1982export interface UpDataStructsRpcCollection extends Struct {1983 readonly owner: AccountId32;1984 readonly mode: UpDataStructsCollectionMode;1985 readonly access: UpDataStructsAccessMode;1986 readonly name: Vec<u16>;1987 readonly description: Vec<u16>;1988 readonly tokenPrefix: Bytes;1989 readonly mintMode: bool;1990 readonly offchainSchema: Bytes;1991 readonly schemaVersion: UpDataStructsSchemaVersion;1992 readonly sponsorship: UpDataStructsSponsorshipState;1993 readonly limits: UpDataStructsCollectionLimits;1994 readonly variableOnChainSchema: Bytes;1995 readonly constOnChainSchema: Bytes;1996 readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1997}19981999/** @name UpDataStructsSchemaVersion */2000export interface UpDataStructsSchemaVersion extends Enum {2001 readonly isImageURL: boolean;2002 readonly isUnique: boolean;2003 readonly type: 'ImageURL' | 'Unique';2004}20052006/** @name UpDataStructsSponsoringRateLimit */2007export interface UpDataStructsSponsoringRateLimit extends Enum {2008 readonly isSponsoringDisabled: boolean;2009 readonly isBlocks: boolean;2010 readonly asBlocks: u32;2011 readonly type: 'SponsoringDisabled' | 'Blocks';2012}20132014/** @name UpDataStructsSponsorshipState */2015export interface UpDataStructsSponsorshipState extends Enum {2016 readonly isDisabled: boolean;2017 readonly isUnconfirmed: boolean;2018 readonly asUnconfirmed: AccountId32;2019 readonly isConfirmed: boolean;2020 readonly asConfirmed: AccountId32;2021 readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';2022}20232024/** @name XcmDoubleEncoded */2025export interface XcmDoubleEncoded extends Struct {2026 readonly encoded: Bytes;2027}20282029/** @name XcmV0Junction */2030export interface XcmV0Junction extends Enum {2031 readonly isParent: boolean;2032 readonly isParachain: boolean;2033 readonly asParachain: Compact<u32>;2034 readonly isAccountId32: boolean;2035 readonly asAccountId32: {2036 readonly network: XcmV0JunctionNetworkId;2037 readonly id: U8aFixed;2038 } & Struct;2039 readonly isAccountIndex64: boolean;2040 readonly asAccountIndex64: {2041 readonly network: XcmV0JunctionNetworkId;2042 readonly index: Compact<u64>;2043 } & Struct;2044 readonly isAccountKey20: boolean;2045 readonly asAccountKey20: {2046 readonly network: XcmV0JunctionNetworkId;2047 readonly key: U8aFixed;2048 } & Struct;2049 readonly isPalletInstance: boolean;2050 readonly asPalletInstance: u8;2051 readonly isGeneralIndex: boolean;2052 readonly asGeneralIndex: Compact<u128>;2053 readonly isGeneralKey: boolean;2054 readonly asGeneralKey: Bytes;2055 readonly isOnlyChild: boolean;2056 readonly isPlurality: boolean;2057 readonly asPlurality: {2058 readonly id: XcmV0JunctionBodyId;2059 readonly part: XcmV0JunctionBodyPart;2060 } & Struct;2061 readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2062}20632064/** @name XcmV0JunctionBodyId */2065export interface XcmV0JunctionBodyId extends Enum {2066 readonly isUnit: boolean;2067 readonly isNamed: boolean;2068 readonly asNamed: Bytes;2069 readonly isIndex: boolean;2070 readonly asIndex: Compact<u32>;2071 readonly isExecutive: boolean;2072 readonly isTechnical: boolean;2073 readonly isLegislative: boolean;2074 readonly isJudicial: boolean;2075 readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';2076}20772078/** @name XcmV0JunctionBodyPart */2079export interface XcmV0JunctionBodyPart extends Enum {2080 readonly isVoice: boolean;2081 readonly isMembers: boolean;2082 readonly asMembers: {2083 readonly count: Compact<u32>;2084 } & Struct;2085 readonly isFraction: boolean;2086 readonly asFraction: {2087 readonly nom: Compact<u32>;2088 readonly denom: Compact<u32>;2089 } & Struct;2090 readonly isAtLeastProportion: boolean;2091 readonly asAtLeastProportion: {2092 readonly nom: Compact<u32>;2093 readonly denom: Compact<u32>;2094 } & Struct;2095 readonly isMoreThanProportion: boolean;2096 readonly asMoreThanProportion: {2097 readonly nom: Compact<u32>;2098 readonly denom: Compact<u32>;2099 } & Struct;2100 readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';2101}21022103/** @name XcmV0JunctionNetworkId */2104export interface XcmV0JunctionNetworkId extends Enum {2105 readonly isAny: boolean;2106 readonly isNamed: boolean;2107 readonly asNamed: Bytes;2108 readonly isPolkadot: boolean;2109 readonly isKusama: boolean;2110 readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';2111}21122113/** @name XcmV0MultiAsset */2114export interface XcmV0MultiAsset extends Enum {2115 readonly isNone: boolean;2116 readonly isAll: boolean;2117 readonly isAllFungible: boolean;2118 readonly isAllNonFungible: boolean;2119 readonly isAllAbstractFungible: boolean;2120 readonly asAllAbstractFungible: {2121 readonly id: Bytes;2122 } & Struct;2123 readonly isAllAbstractNonFungible: boolean;2124 readonly asAllAbstractNonFungible: {2125 readonly class: Bytes;2126 } & Struct;2127 readonly isAllConcreteFungible: boolean;2128 readonly asAllConcreteFungible: {2129 readonly id: XcmV0MultiLocation;2130 } & Struct;2131 readonly isAllConcreteNonFungible: boolean;2132 readonly asAllConcreteNonFungible: {2133 readonly class: XcmV0MultiLocation;2134 } & Struct;2135 readonly isAbstractFungible: boolean;2136 readonly asAbstractFungible: {2137 readonly id: Bytes;2138 readonly amount: Compact<u128>;2139 } & Struct;2140 readonly isAbstractNonFungible: boolean;2141 readonly asAbstractNonFungible: {2142 readonly class: Bytes;2143 readonly instance: XcmV1MultiassetAssetInstance;2144 } & Struct;2145 readonly isConcreteFungible: boolean;2146 readonly asConcreteFungible: {2147 readonly id: XcmV0MultiLocation;2148 readonly amount: Compact<u128>;2149 } & Struct;2150 readonly isConcreteNonFungible: boolean;2151 readonly asConcreteNonFungible: {2152 readonly class: XcmV0MultiLocation;2153 readonly instance: XcmV1MultiassetAssetInstance;2154 } & Struct;2155 readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';2156}21572158/** @name XcmV0MultiLocation */2159export interface XcmV0MultiLocation extends Enum {2160 readonly isNull: boolean;2161 readonly isX1: boolean;2162 readonly asX1: XcmV0Junction;2163 readonly isX2: boolean;2164 readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;2165 readonly isX3: boolean;2166 readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2167 readonly isX4: boolean;2168 readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2169 readonly isX5: boolean;2170 readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2171 readonly isX6: boolean;2172 readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2173 readonly isX7: boolean;2174 readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2175 readonly isX8: boolean;2176 readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2177 readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2178}21792180/** @name XcmV0Order */2181export interface XcmV0Order extends Enum {2182 readonly isNull: boolean;2183 readonly isDepositAsset: boolean;2184 readonly asDepositAsset: {2185 readonly assets: Vec<XcmV0MultiAsset>;2186 readonly dest: XcmV0MultiLocation;2187 } & Struct;2188 readonly isDepositReserveAsset: boolean;2189 readonly asDepositReserveAsset: {2190 readonly assets: Vec<XcmV0MultiAsset>;2191 readonly dest: XcmV0MultiLocation;2192 readonly effects: Vec<XcmV0Order>;2193 } & Struct;2194 readonly isExchangeAsset: boolean;2195 readonly asExchangeAsset: {2196 readonly give: Vec<XcmV0MultiAsset>;2197 readonly receive: Vec<XcmV0MultiAsset>;2198 } & Struct;2199 readonly isInitiateReserveWithdraw: boolean;2200 readonly asInitiateReserveWithdraw: {2201 readonly assets: Vec<XcmV0MultiAsset>;2202 readonly reserve: XcmV0MultiLocation;2203 readonly effects: Vec<XcmV0Order>;2204 } & Struct;2205 readonly isInitiateTeleport: boolean;2206 readonly asInitiateTeleport: {2207 readonly assets: Vec<XcmV0MultiAsset>;2208 readonly dest: XcmV0MultiLocation;2209 readonly effects: Vec<XcmV0Order>;2210 } & Struct;2211 readonly isQueryHolding: boolean;2212 readonly asQueryHolding: {2213 readonly queryId: Compact<u64>;2214 readonly dest: XcmV0MultiLocation;2215 readonly assets: Vec<XcmV0MultiAsset>;2216 } & Struct;2217 readonly isBuyExecution: boolean;2218 readonly asBuyExecution: {2219 readonly fees: XcmV0MultiAsset;2220 readonly weight: u64;2221 readonly debt: u64;2222 readonly haltOnError: bool;2223 readonly xcm: Vec<XcmV0Xcm>;2224 } & Struct;2225 readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2226}22272228/** @name XcmV0OriginKind */2229export interface XcmV0OriginKind extends Enum {2230 readonly isNative: boolean;2231 readonly isSovereignAccount: boolean;2232 readonly isSuperuser: boolean;2233 readonly isXcm: boolean;2234 readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';2235}22362237/** @name XcmV0Response */2238export interface XcmV0Response extends Enum {2239 readonly isAssets: boolean;2240 readonly asAssets: Vec<XcmV0MultiAsset>;2241 readonly type: 'Assets';2242}22432244/** @name XcmV0Xcm */2245export interface XcmV0Xcm extends Enum {2246 readonly isWithdrawAsset: boolean;2247 readonly asWithdrawAsset: {2248 readonly assets: Vec<XcmV0MultiAsset>;2249 readonly effects: Vec<XcmV0Order>;2250 } & Struct;2251 readonly isReserveAssetDeposit: boolean;2252 readonly asReserveAssetDeposit: {2253 readonly assets: Vec<XcmV0MultiAsset>;2254 readonly effects: Vec<XcmV0Order>;2255 } & Struct;2256 readonly isTeleportAsset: boolean;2257 readonly asTeleportAsset: {2258 readonly assets: Vec<XcmV0MultiAsset>;2259 readonly effects: Vec<XcmV0Order>;2260 } & Struct;2261 readonly isQueryResponse: boolean;2262 readonly asQueryResponse: {2263 readonly queryId: Compact<u64>;2264 readonly response: XcmV0Response;2265 } & Struct;2266 readonly isTransferAsset: boolean;2267 readonly asTransferAsset: {2268 readonly assets: Vec<XcmV0MultiAsset>;2269 readonly dest: XcmV0MultiLocation;2270 } & Struct;2271 readonly isTransferReserveAsset: boolean;2272 readonly asTransferReserveAsset: {2273 readonly assets: Vec<XcmV0MultiAsset>;2274 readonly dest: XcmV0MultiLocation;2275 readonly effects: Vec<XcmV0Order>;2276 } & Struct;2277 readonly isTransact: boolean;2278 readonly asTransact: {2279 readonly originType: XcmV0OriginKind;2280 readonly requireWeightAtMost: u64;2281 readonly call: XcmDoubleEncoded;2282 } & Struct;2283 readonly isHrmpNewChannelOpenRequest: boolean;2284 readonly asHrmpNewChannelOpenRequest: {2285 readonly sender: Compact<u32>;2286 readonly maxMessageSize: Compact<u32>;2287 readonly maxCapacity: Compact<u32>;2288 } & Struct;2289 readonly isHrmpChannelAccepted: boolean;2290 readonly asHrmpChannelAccepted: {2291 readonly recipient: Compact<u32>;2292 } & Struct;2293 readonly isHrmpChannelClosing: boolean;2294 readonly asHrmpChannelClosing: {2295 readonly initiator: Compact<u32>;2296 readonly sender: Compact<u32>;2297 readonly recipient: Compact<u32>;2298 } & Struct;2299 readonly isRelayedFrom: boolean;2300 readonly asRelayedFrom: {2301 readonly who: XcmV0MultiLocation;2302 readonly message: XcmV0Xcm;2303 } & Struct;2304 readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';2305}23062307/** @name XcmV1Junction */2308export interface XcmV1Junction extends Enum {2309 readonly isParachain: boolean;2310 readonly asParachain: Compact<u32>;2311 readonly isAccountId32: boolean;2312 readonly asAccountId32: {2313 readonly network: XcmV0JunctionNetworkId;2314 readonly id: U8aFixed;2315 } & Struct;2316 readonly isAccountIndex64: boolean;2317 readonly asAccountIndex64: {2318 readonly network: XcmV0JunctionNetworkId;2319 readonly index: Compact<u64>;2320 } & Struct;2321 readonly isAccountKey20: boolean;2322 readonly asAccountKey20: {2323 readonly network: XcmV0JunctionNetworkId;2324 readonly key: U8aFixed;2325 } & Struct;2326 readonly isPalletInstance: boolean;2327 readonly asPalletInstance: u8;2328 readonly isGeneralIndex: boolean;2329 readonly asGeneralIndex: Compact<u128>;2330 readonly isGeneralKey: boolean;2331 readonly asGeneralKey: Bytes;2332 readonly isOnlyChild: boolean;2333 readonly isPlurality: boolean;2334 readonly asPlurality: {2335 readonly id: XcmV0JunctionBodyId;2336 readonly part: XcmV0JunctionBodyPart;2337 } & Struct;2338 readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2339}23402341/** @name XcmV1MultiAsset */2342export interface XcmV1MultiAsset extends Struct {2343 readonly id: XcmV1MultiassetAssetId;2344 readonly fun: XcmV1MultiassetFungibility;2345}23462347/** @name XcmV1MultiassetAssetId */2348export interface XcmV1MultiassetAssetId extends Enum {2349 readonly isConcrete: boolean;2350 readonly asConcrete: XcmV1MultiLocation;2351 readonly isAbstract: boolean;2352 readonly asAbstract: Bytes;2353 readonly type: 'Concrete' | 'Abstract';2354}23552356/** @name XcmV1MultiassetAssetInstance */2357export interface XcmV1MultiassetAssetInstance extends Enum {2358 readonly isUndefined: boolean;2359 readonly isIndex: boolean;2360 readonly asIndex: Compact<u128>;2361 readonly isArray4: boolean;2362 readonly asArray4: U8aFixed;2363 readonly isArray8: boolean;2364 readonly asArray8: U8aFixed;2365 readonly isArray16: boolean;2366 readonly asArray16: U8aFixed;2367 readonly isArray32: boolean;2368 readonly asArray32: U8aFixed;2369 readonly isBlob: boolean;2370 readonly asBlob: Bytes;2371 readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';2372}23732374/** @name XcmV1MultiassetFungibility */2375export interface XcmV1MultiassetFungibility extends Enum {2376 readonly isFungible: boolean;2377 readonly asFungible: Compact<u128>;2378 readonly isNonFungible: boolean;2379 readonly asNonFungible: XcmV1MultiassetAssetInstance;2380 readonly type: 'Fungible' | 'NonFungible';2381}23822383/** @name XcmV1MultiassetMultiAssetFilter */2384export interface XcmV1MultiassetMultiAssetFilter extends Enum {2385 readonly isDefinite: boolean;2386 readonly asDefinite: XcmV1MultiassetMultiAssets;2387 readonly isWild: boolean;2388 readonly asWild: XcmV1MultiassetWildMultiAsset;2389 readonly type: 'Definite' | 'Wild';2390}23912392/** @name XcmV1MultiassetMultiAssets */2393export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}23942395/** @name XcmV1MultiassetWildFungibility */2396export interface XcmV1MultiassetWildFungibility extends Enum {2397 readonly isFungible: boolean;2398 readonly isNonFungible: boolean;2399 readonly type: 'Fungible' | 'NonFungible';2400}24012402/** @name XcmV1MultiassetWildMultiAsset */2403export interface XcmV1MultiassetWildMultiAsset extends Enum {2404 readonly isAll: boolean;2405 readonly isAllOf: boolean;2406 readonly asAllOf: {2407 readonly id: XcmV1MultiassetAssetId;2408 readonly fun: XcmV1MultiassetWildFungibility;2409 } & Struct;2410 readonly type: 'All' | 'AllOf';2411}24122413/** @name XcmV1MultiLocation */2414export interface XcmV1MultiLocation extends Struct {2415 readonly parents: u8;2416 readonly interior: XcmV1MultilocationJunctions;2417}24182419/** @name XcmV1MultilocationJunctions */2420export interface XcmV1MultilocationJunctions extends Enum {2421 readonly isHere: boolean;2422 readonly isX1: boolean;2423 readonly asX1: XcmV1Junction;2424 readonly isX2: boolean;2425 readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;2426 readonly isX3: boolean;2427 readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2428 readonly isX4: boolean;2429 readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2430 readonly isX5: boolean;2431 readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2432 readonly isX6: boolean;2433 readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2434 readonly isX7: boolean;2435 readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2436 readonly isX8: boolean;2437 readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2438 readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2439}24402441/** @name XcmV1Order */2442export interface XcmV1Order extends Enum {2443 readonly isNoop: boolean;2444 readonly isDepositAsset: boolean;2445 readonly asDepositAsset: {2446 readonly assets: XcmV1MultiassetMultiAssetFilter;2447 readonly maxAssets: u32;2448 readonly beneficiary: XcmV1MultiLocation;2449 } & Struct;2450 readonly isDepositReserveAsset: boolean;2451 readonly asDepositReserveAsset: {2452 readonly assets: XcmV1MultiassetMultiAssetFilter;2453 readonly maxAssets: u32;2454 readonly dest: XcmV1MultiLocation;2455 readonly effects: Vec<XcmV1Order>;2456 } & Struct;2457 readonly isExchangeAsset: boolean;2458 readonly asExchangeAsset: {2459 readonly give: XcmV1MultiassetMultiAssetFilter;2460 readonly receive: XcmV1MultiassetMultiAssets;2461 } & Struct;2462 readonly isInitiateReserveWithdraw: boolean;2463 readonly asInitiateReserveWithdraw: {2464 readonly assets: XcmV1MultiassetMultiAssetFilter;2465 readonly reserve: XcmV1MultiLocation;2466 readonly effects: Vec<XcmV1Order>;2467 } & Struct;2468 readonly isInitiateTeleport: boolean;2469 readonly asInitiateTeleport: {2470 readonly assets: XcmV1MultiassetMultiAssetFilter;2471 readonly dest: XcmV1MultiLocation;2472 readonly effects: Vec<XcmV1Order>;2473 } & Struct;2474 readonly isQueryHolding: boolean;2475 readonly asQueryHolding: {2476 readonly queryId: Compact<u64>;2477 readonly dest: XcmV1MultiLocation;2478 readonly assets: XcmV1MultiassetMultiAssetFilter;2479 } & Struct;2480 readonly isBuyExecution: boolean;2481 readonly asBuyExecution: {2482 readonly fees: XcmV1MultiAsset;2483 readonly weight: u64;2484 readonly debt: u64;2485 readonly haltOnError: bool;2486 readonly instructions: Vec<XcmV1Xcm>;2487 } & Struct;2488 readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2489}24902491/** @name XcmV1Response */2492export interface XcmV1Response extends Enum {2493 readonly isAssets: boolean;2494 readonly asAssets: XcmV1MultiassetMultiAssets;2495 readonly isVersion: boolean;2496 readonly asVersion: u32;2497 readonly type: 'Assets' | 'Version';2498}24992500/** @name XcmV1Xcm */2501export interface XcmV1Xcm extends Enum {2502 readonly isWithdrawAsset: boolean;2503 readonly asWithdrawAsset: {2504 readonly assets: XcmV1MultiassetMultiAssets;2505 readonly effects: Vec<XcmV1Order>;2506 } & Struct;2507 readonly isReserveAssetDeposited: boolean;2508 readonly asReserveAssetDeposited: {2509 readonly assets: XcmV1MultiassetMultiAssets;2510 readonly effects: Vec<XcmV1Order>;2511 } & Struct;2512 readonly isReceiveTeleportedAsset: boolean;2513 readonly asReceiveTeleportedAsset: {2514 readonly assets: XcmV1MultiassetMultiAssets;2515 readonly effects: Vec<XcmV1Order>;2516 } & Struct;2517 readonly isQueryResponse: boolean;2518 readonly asQueryResponse: {2519 readonly queryId: Compact<u64>;2520 readonly response: XcmV1Response;2521 } & Struct;2522 readonly isTransferAsset: boolean;2523 readonly asTransferAsset: {2524 readonly assets: XcmV1MultiassetMultiAssets;2525 readonly beneficiary: XcmV1MultiLocation;2526 } & Struct;2527 readonly isTransferReserveAsset: boolean;2528 readonly asTransferReserveAsset: {2529 readonly assets: XcmV1MultiassetMultiAssets;2530 readonly dest: XcmV1MultiLocation;2531 readonly effects: Vec<XcmV1Order>;2532 } & Struct;2533 readonly isTransact: boolean;2534 readonly asTransact: {2535 readonly originType: XcmV0OriginKind;2536 readonly requireWeightAtMost: u64;2537 readonly call: XcmDoubleEncoded;2538 } & Struct;2539 readonly isHrmpNewChannelOpenRequest: boolean;2540 readonly asHrmpNewChannelOpenRequest: {2541 readonly sender: Compact<u32>;2542 readonly maxMessageSize: Compact<u32>;2543 readonly maxCapacity: Compact<u32>;2544 } & Struct;2545 readonly isHrmpChannelAccepted: boolean;2546 readonly asHrmpChannelAccepted: {2547 readonly recipient: Compact<u32>;2548 } & Struct;2549 readonly isHrmpChannelClosing: boolean;2550 readonly asHrmpChannelClosing: {2551 readonly initiator: Compact<u32>;2552 readonly sender: Compact<u32>;2553 readonly recipient: Compact<u32>;2554 } & Struct;2555 readonly isRelayedFrom: boolean;2556 readonly asRelayedFrom: {2557 readonly who: XcmV1MultilocationJunctions;2558 readonly message: XcmV1Xcm;2559 } & Struct;2560 readonly isSubscribeVersion: boolean;2561 readonly asSubscribeVersion: {2562 readonly queryId: Compact<u64>;2563 readonly maxResponseWeight: Compact<u64>;2564 } & Struct;2565 readonly isUnsubscribeVersion: boolean;2566 readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';2567}25682569/** @name XcmV2Instruction */2570export interface XcmV2Instruction extends Enum {2571 readonly isWithdrawAsset: boolean;2572 readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;2573 readonly isReserveAssetDeposited: boolean;2574 readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;2575 readonly isReceiveTeleportedAsset: boolean;2576 readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;2577 readonly isQueryResponse: boolean;2578 readonly asQueryResponse: {2579 readonly queryId: Compact<u64>;2580 readonly response: XcmV2Response;2581 readonly maxWeight: Compact<u64>;2582 } & Struct;2583 readonly isTransferAsset: boolean;2584 readonly asTransferAsset: {2585 readonly assets: XcmV1MultiassetMultiAssets;2586 readonly beneficiary: XcmV1MultiLocation;2587 } & Struct;2588 readonly isTransferReserveAsset: boolean;2589 readonly asTransferReserveAsset: {2590 readonly assets: XcmV1MultiassetMultiAssets;2591 readonly dest: XcmV1MultiLocation;2592 readonly xcm: XcmV2Xcm;2593 } & Struct;2594 readonly isTransact: boolean;2595 readonly asTransact: {2596 readonly originType: XcmV0OriginKind;2597 readonly requireWeightAtMost: Compact<u64>;2598 readonly call: XcmDoubleEncoded;2599 } & Struct;2600 readonly isHrmpNewChannelOpenRequest: boolean;2601 readonly asHrmpNewChannelOpenRequest: {2602 readonly sender: Compact<u32>;2603 readonly maxMessageSize: Compact<u32>;2604 readonly maxCapacity: Compact<u32>;2605 } & Struct;2606 readonly isHrmpChannelAccepted: boolean;2607 readonly asHrmpChannelAccepted: {2608 readonly recipient: Compact<u32>;2609 } & Struct;2610 readonly isHrmpChannelClosing: boolean;2611 readonly asHrmpChannelClosing: {2612 readonly initiator: Compact<u32>;2613 readonly sender: Compact<u32>;2614 readonly recipient: Compact<u32>;2615 } & Struct;2616 readonly isClearOrigin: boolean;2617 readonly isDescendOrigin: boolean;2618 readonly asDescendOrigin: XcmV1MultilocationJunctions;2619 readonly isReportError: boolean;2620 readonly asReportError: {2621 readonly queryId: Compact<u64>;2622 readonly dest: XcmV1MultiLocation;2623 readonly maxResponseWeight: Compact<u64>;2624 } & Struct;2625 readonly isDepositAsset: boolean;2626 readonly asDepositAsset: {2627 readonly assets: XcmV1MultiassetMultiAssetFilter;2628 readonly maxAssets: Compact<u32>;2629 readonly beneficiary: XcmV1MultiLocation;2630 } & Struct;2631 readonly isDepositReserveAsset: boolean;2632 readonly asDepositReserveAsset: {2633 readonly assets: XcmV1MultiassetMultiAssetFilter;2634 readonly maxAssets: Compact<u32>;2635 readonly dest: XcmV1MultiLocation;2636 readonly xcm: XcmV2Xcm;2637 } & Struct;2638 readonly isExchangeAsset: boolean;2639 readonly asExchangeAsset: {2640 readonly give: XcmV1MultiassetMultiAssetFilter;2641 readonly receive: XcmV1MultiassetMultiAssets;2642 } & Struct;2643 readonly isInitiateReserveWithdraw: boolean;2644 readonly asInitiateReserveWithdraw: {2645 readonly assets: XcmV1MultiassetMultiAssetFilter;2646 readonly reserve: XcmV1MultiLocation;2647 readonly xcm: XcmV2Xcm;2648 } & Struct;2649 readonly isInitiateTeleport: boolean;2650 readonly asInitiateTeleport: {2651 readonly assets: XcmV1MultiassetMultiAssetFilter;2652 readonly dest: XcmV1MultiLocation;2653 readonly xcm: XcmV2Xcm;2654 } & Struct;2655 readonly isQueryHolding: boolean;2656 readonly asQueryHolding: {2657 readonly queryId: Compact<u64>;2658 readonly dest: XcmV1MultiLocation;2659 readonly assets: XcmV1MultiassetMultiAssetFilter;2660 readonly maxResponseWeight: Compact<u64>;2661 } & Struct;2662 readonly isBuyExecution: boolean;2663 readonly asBuyExecution: {2664 readonly fees: XcmV1MultiAsset;2665 readonly weightLimit: XcmV2WeightLimit;2666 } & Struct;2667 readonly isRefundSurplus: boolean;2668 readonly isSetErrorHandler: boolean;2669 readonly asSetErrorHandler: XcmV2Xcm;2670 readonly isSetAppendix: boolean;2671 readonly asSetAppendix: XcmV2Xcm;2672 readonly isClearError: boolean;2673 readonly isClaimAsset: boolean;2674 readonly asClaimAsset: {2675 readonly assets: XcmV1MultiassetMultiAssets;2676 readonly ticket: XcmV1MultiLocation;2677 } & Struct;2678 readonly isTrap: boolean;2679 readonly asTrap: Compact<u64>;2680 readonly isSubscribeVersion: boolean;2681 readonly asSubscribeVersion: {2682 readonly queryId: Compact<u64>;2683 readonly maxResponseWeight: Compact<u64>;2684 } & Struct;2685 readonly isUnsubscribeVersion: boolean;2686 readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';2687}26882689/** @name XcmV2Response */2690export interface XcmV2Response extends Enum {2691 readonly isNull: boolean;2692 readonly isAssets: boolean;2693 readonly asAssets: XcmV1MultiassetMultiAssets;2694 readonly isExecutionResult: boolean;2695 readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;2696 readonly isVersion: boolean;2697 readonly asVersion: u32;2698 readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';2699}27002701/** @name XcmV2TraitsError */2702export interface XcmV2TraitsError extends Enum {2703 readonly isOverflow: boolean;2704 readonly isUnimplemented: boolean;2705 readonly isUntrustedReserveLocation: boolean;2706 readonly isUntrustedTeleportLocation: boolean;2707 readonly isMultiLocationFull: boolean;2708 readonly isMultiLocationNotInvertible: boolean;2709 readonly isBadOrigin: boolean;2710 readonly isInvalidLocation: boolean;2711 readonly isAssetNotFound: boolean;2712 readonly isFailedToTransactAsset: boolean;2713 readonly isNotWithdrawable: boolean;2714 readonly isLocationCannotHold: boolean;2715 readonly isExceedsMaxMessageSize: boolean;2716 readonly isDestinationUnsupported: boolean;2717 readonly isTransport: boolean;2718 readonly isUnroutable: boolean;2719 readonly isUnknownClaim: boolean;2720 readonly isFailedToDecode: boolean;2721 readonly isMaxWeightInvalid: boolean;2722 readonly isNotHoldingFees: boolean;2723 readonly isTooExpensive: boolean;2724 readonly isTrap: boolean;2725 readonly asTrap: u64;2726 readonly isUnhandledXcmVersion: boolean;2727 readonly isWeightLimitReached: boolean;2728 readonly asWeightLimitReached: u64;2729 readonly isBarrier: boolean;2730 readonly isWeightNotComputable: boolean;2731 readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';2732}27332734/** @name XcmV2TraitsOutcome */2735export interface XcmV2TraitsOutcome extends Enum {2736 readonly isComplete: boolean;2737 readonly asComplete: u64;2738 readonly isIncomplete: boolean;2739 readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2740 readonly isError: boolean;2741 readonly asError: XcmV2TraitsError;2742 readonly type: 'Complete' | 'Incomplete' | 'Error';2743}27442745/** @name XcmV2WeightLimit */2746export interface XcmV2WeightLimit extends Enum {2747 readonly isUnlimited: boolean;2748 readonly isLimited: boolean;2749 readonly asLimited: Compact<u64>;2750 readonly type: 'Unlimited' | 'Limited';2751}27522753/** @name XcmV2Xcm */2754export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}27552756/** @name XcmVersionedMultiAssets */2757export interface XcmVersionedMultiAssets extends Enum {2758 readonly isV0: boolean;2759 readonly asV0: Vec<XcmV0MultiAsset>;2760 readonly isV1: boolean;2761 readonly asV1: XcmV1MultiassetMultiAssets;2762 readonly type: 'V0' | 'V1';2763}27642765/** @name XcmVersionedMultiLocation */2766export interface XcmVersionedMultiLocation extends Enum {2767 readonly isV0: boolean;2768 readonly asV0: XcmV0MultiLocation;2769 readonly isV1: boolean;2770 readonly asV1: XcmV1MultiLocation;2771 readonly type: 'V0' | 'V1';2772}27732774/** @name XcmVersionedXcm */2775export interface XcmVersionedXcm extends Enum {2776 readonly isV0: boolean;2777 readonly asV0: XcmV0Xcm;2778 readonly isV1: boolean;2779 readonly asV1: XcmV1Xcm;2780 readonly isV2: boolean;2781 readonly asV2: XcmV2Xcm;2782 readonly type: 'V0' | 'V1' | 'V2';2783}27842785export type PHANTOM_UNIQUE = 'unique';tests/src/nesting/migration-check.test.tsdiffbeforeafterboth--- a/tests/src/nesting/migration-check.test.ts
+++ b/tests/src/nesting/migration-check.test.ts
@@ -5,6 +5,8 @@
import {IKeyringPair} from '@polkadot/types/types';
import {strToUTF16} from '../util/util';
import waitNewBlocks from '../substrate/wait-new-blocks';
+// Used for polkadot-launch signalling
+import find from 'find-process';
// todo skip
describe('Migration testing for pallet-common', () => {
@@ -54,13 +56,12 @@
let newVersion = oldVersion!;
let connectionFailCounter = 0;
- // Cooperate with polkadot-launch if it's running (assuming custom name change), and send a custom signal
- const find = require('find-process');
- find('name', 'polkadot-launch', true).then(function (list: [any]) {
- for (let proc of list) {
+ // Cooperate with polkadot-launch if it's running (assuming custom name change to 'polkadot-launch'), and send a custom signal
+ find('name', 'polkadot-launch', true).then((list) => {
+ for (const proc of list) {
process.kill(proc.pid, 'SIGUSR1');
}
- })
+ });
// And wait for the parachain upgrade
while (newVersion == oldVersion! && connectionFailCounter < 2) {
tests/src/nesting/properties.test.tsdiffbeforeafterboth--- /dev/null
+++ b/tests/src/nesting/properties.test.ts
@@ -0,0 +1,652 @@
+import {expect} from 'chai';
+import privateKey from '../substrate/privateKey';
+import usingApi, {executeTransaction} from '../substrate/substrate-api';
+import {
+ addCollectionAdminExpectSuccess,
+ createCollectionExpectSuccess,
+ createItemExpectSuccess,
+ getCreateCollectionResult,
+ transferExpectSuccess,
+} from '../util/helpers';
+import {IKeyringPair} from '@polkadot/types/types';
+
+let alice: IKeyringPair;
+let bob: IKeyringPair;
+let charlie: IKeyringPair;
+
+// ---------- COLLECTION PROPERTIES
+
+describe('Integration Test: Collection Properties', () => {
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ });
+
+ it('Reads properties from a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+ const properties = (await api.query.common.collectionProperties(collection)).toJSON();
+ expect(properties.map).to.be.empty;
+ expect(properties.consumedSpace).to.equal(0);
+ });
+ });
+
+ it('Sets properties for a collection', async () => {
+ await usingApi(async api => {
+ const events = await executeTransaction(api, bob, api.tx.unique.createCollectionEx({mode: 'NFT'}));
+ const {collectionId} = getCreateCollectionResult(events);
+
+ // As owner
+ await expect(executeTransaction(
+ api,
+ bob,
+ api.tx.unique.setCollectionProperties(collectionId, [{key: 'electron', value: 'come bond'}]),
+ )).to.not.be.rejected;
+
+ await addCollectionAdminExpectSuccess(bob, collectionId, alice.address);
+
+ // As administrator
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collectionId, [{key: 'black hole'}]),
+ )).to.not.be.rejected;
+
+ const properties = (await api.rpc.unique.collectionProperties(collectionId, ['electron', 'black hole'])).toJSON();
+ expect(properties).to.be.deep.equal([
+ {key: `0x${Buffer.from('electron').toString('hex')}`, value: `0x${Buffer.from('come bond').toString('hex')}`},
+ {key: `0x${Buffer.from('black hole').toString('hex')}`, value: `0x${Buffer.from('').toString('hex')}`},
+ ]);
+ });
+ });
+
+ it('Changes properties of a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'electron', value: 'come bond'}, {key: 'black hole'}]),
+ )).to.not.be.rejected;
+
+ // Mutate the properties
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'electron', value: 'bonded'}, {key: 'black hole', value: 'LIGO'}]),
+ )).to.not.be.rejected;
+
+ const properties = (await api.rpc.unique.collectionProperties(collection, ['electron', 'black hole'])).toJSON();
+ expect(properties).to.be.deep.equal([
+ {key: `0x${Buffer.from('electron').toString('hex')}`, value: `0x${Buffer.from('bonded').toString('hex')}`},
+ {key: `0x${Buffer.from('black hole').toString('hex')}`, value: `0x${Buffer.from('LIGO').toString('hex')}`},
+ ]);
+ });
+ });
+
+ it('Deletes properties of a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'electron', value: 'come bond'}, {key: 'black hole', value: 'LIGO'}]),
+ )).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.deleteCollectionProperties(collection, ['electron']),
+ )).to.not.be.rejected;
+
+ const properties = (await api.rpc.unique.collectionProperties(collection, ['electron', 'black hole'])).toJSON();
+ expect(properties).to.be.deep.equal([
+ {key: `0x${Buffer.from('black hole').toString('hex')}`, value: `0x${Buffer.from('LIGO').toString('hex')}`},
+ ]);
+ });
+ });
+});
+
+describe('Negative Integration Test: Collection Properties', () => {
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ });
+
+ it('Fails to set properties in a collection if not its onwer/administrator', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ bob,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'electron', value: 'come bond'}, {key: 'black hole', value: 'LIGO'}]),
+ )).to.be.rejectedWith(/common\.NoPermission/);
+
+ const properties = (await api.query.common.collectionProperties(collection)).toJSON();
+ expect(properties.map).to.be.empty;
+ expect(properties.consumedSpace).to.equal(0);
+ });
+ });
+
+ it('Fails to set properties that exceed the limits', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+ const spaceLimit = (await api.query.common.collectionProperties(collection)).toJSON().spaceLimit as number;
+
+ // Mute the general tx parsing error, too many bytes to process
+ {
+ console.error = () => {};
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'electron', value: 'low high '.repeat(Math.ceil(spaceLimit! / 9))}]),
+ )).to.be.rejected;
+ }
+
+ let properties = (await api.rpc.unique.collectionProperties(collection, ['electron'])).toJSON();
+ expect(properties).to.be.empty;
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [
+ {key: 'electron', value: 'low high '.repeat(Math.ceil(spaceLimit! / 18))},
+ {key: 'black hole', value: '0'.repeat(Math.ceil(spaceLimit! / 2))},
+ ]),
+ )).to.be.rejectedWith(/common\.NoSpaceForProperty/);
+
+ properties = (await api.rpc.unique.collectionProperties(collection, ['electron', 'black hole'])).toJSON();
+ expect(properties).to.be.empty;
+ });
+ });
+
+ it('Fails to set more properties than it is allowed', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ const propertiesToBeSet = [];
+ for (let i = 0; i < 65; i++) {
+ propertiesToBeSet.push({
+ key: 'electron ' + i,
+ value: Math.random() > 0.5 ? 'high' : 'low',
+ });
+ }
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, propertiesToBeSet),
+ )).to.be.rejectedWith(/common\.PropertyLimitReached/);
+
+ const properties = (await api.query.common.collectionProperties(collection)).toJSON();
+ expect(properties.map).to.be.empty;
+ expect(properties.consumedSpace).to.equal(0);
+ });
+ });
+});
+
+// ---------- ACCESS RIGHTS
+
+describe('Integration Test: Access Rights to Token Properties', () => {
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ });
+
+ it('Reads access rights to properties of a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+ const propertyRights = (await api.query.common.collectionPropertyPermissions(collection)).toJSON();
+ expect(propertyRights).to.be.empty;
+ });
+ });
+
+ it('Sets access rights to properties of a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {mutable: true}}]),
+ )).to.not.be.rejected;
+
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'mindgame', permission: {collectionAdmin: true, tokenOwner: false}}]),
+ )).to.not.be.rejected;
+
+ const propertyRights = (await api.rpc.unique.propertyPermissions(collection, ['skullduggery', 'mindgame'])).toJSON();
+ expect(propertyRights).to.be.deep.equal([
+ {key: `0x${Buffer.from('skullduggery').toString('hex')}`, permission: {'mutable': true, 'collectionAdmin': false, 'tokenOwner': false}},
+ {key: `0x${Buffer.from('mindgame').toString('hex')}`, permission: {'mutable': false, 'collectionAdmin': true, 'tokenOwner': false}},
+ ]);
+ });
+ });
+
+ it('Changes access rights to properties of a collection', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {mutable: true, collectionAdmin: true}}]),
+ )).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {mutable: false, tokenOwner: true}}]),
+ )).to.not.be.rejected;
+
+ const propertyRights = (await api.rpc.unique.propertyPermissions(collection, ['skullduggery'])).toJSON();
+ expect(propertyRights).to.be.deep.equal([
+ {key: `0x${Buffer.from('skullduggery').toString('hex')}`, permission: {'mutable': false, 'collectionAdmin': false, 'tokenOwner': true}},
+ ]);
+ });
+ });
+});
+
+describe('Negative Integration Test: Access Rights to Token Properties', () => {
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ });
+
+ it('Prevents from setting access rights to properties of a collection if not an onwer/admin', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ bob,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {mutable: true, tokenOwner: true}}]),
+ )).to.be.rejectedWith(/common\.NoPermission/);
+
+ const propertyRights = (await api.rpc.unique.propertyPermissions(collection, ['skullduggery'])).toJSON();
+ expect(propertyRights).to.be.empty;
+ });
+ });
+
+ it('Prevents from adding too many possible properties', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ const constitution = [];
+ for (let i = 0; i < 65; i++) {
+ constitution.push({
+ key: 'property ' + i,
+ permission: Math.random() > 0.5 ? {mutable: true, collectionAdmin: true, tokenOwner: true} : {},
+ });
+ }
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, constitution),
+ )).to.be.rejectedWith(/common\.PropertyLimitReached/);
+
+ const propertyRights = (await api.query.common.collectionPropertyPermissions(collection)).toJSON();
+ expect(propertyRights).to.be.empty;
+ });
+ });
+
+ it('Prevents access rights to be modified if constant', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {mutable: false, tokenOwner: true}}]),
+ )).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'skullduggery', permission: {}}]),
+ )).to.be.rejectedWith(/common\.NoPermission/);
+
+ const propertyRights = (await api.rpc.unique.propertyPermissions(collection, ['skullduggery'])).toJSON();
+ expect(propertyRights).to.deep.equal([
+ {key: `0x${Buffer.from('skullduggery').toString('hex')}`, permission: {'mutable': false, 'collectionAdmin': false, 'tokenOwner': true}},
+ ]);
+ });
+ });
+});
+
+// ---------- TOKEN PROPERTIES
+
+describe('Integration Test: Token Properties', () => {
+ let collection: number;
+ let token: number;
+ let permissions: {permission: any, signers: IKeyringPair[]}[];
+
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ charlie = privateKey('//Charlie');
+
+ permissions = [
+ {permission: {mutable: true, collectionAdmin: true}, signers: [alice, bob]},
+ {permission: {mutable: false, collectionAdmin: true}, signers: [alice, bob]},
+ {permission: {mutable: true, tokenOwner: true}, signers: [charlie]},
+ {permission: {mutable: false, tokenOwner: true}, signers: [charlie]},
+ {permission: {mutable: true, collectionAdmin: true, tokenOwner: true}, signers: [alice, bob, charlie]},
+ {permission: {mutable: false, collectionAdmin: true, tokenOwner: true}, signers: [alice, bob, charlie]},
+ ];
+ });
+
+ beforeEach(async () => {
+ collection = await createCollectionExpectSuccess();
+ token = await createItemExpectSuccess(alice, collection, 'NFT');
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+ await transferExpectSuccess(collection, token, alice, charlie);
+ });
+
+ it('Reads properties of a token', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess();
+ const token = await createItemExpectSuccess(alice, collection, 'NFT');
+
+ const properties = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON();
+ expect(properties.map).to.be.empty;
+ expect(properties.consumedSpace).to.be.equal(0);
+
+ const tokenData = (await api.rpc.unique.tokenData(collection, token, ['anything'])).toJSON().properties;
+ expect(tokenData).to.be.empty;
+ });
+ });
+
+ it('Assigns properties to a token according to permissions', async () => {
+ await usingApi(async api => {
+ const propertyKeys: string[] = [];
+ let i = 0;
+ for (const permission of permissions) {
+ for (const signer of permission.signers) {
+ const key = i + ' ' + signer.address;
+ propertyKeys.push(key);
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: key, permission: permission.permission}]),
+ ), `on setting permission ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.setTokenProperties(collection, token, [{key: key, value: 'Serotonin increase'}]),
+ ), `on adding property ${i} by ${signer.address}`).to.not.be.rejected;
+ }
+
+ i++;
+ }
+
+ const properties = (await api.rpc.unique.tokenProperties(collection, token, propertyKeys)).toJSON() as any[];
+ const tokensData = (await api.rpc.unique.tokenData(collection, token, propertyKeys)).toJSON().properties as any[];
+ for (let i = 0; i < properties.length; i++) {
+ expect(properties[i].value).to.be.equal(`0x${Buffer.from('Serotonin increase').toString('hex')}`);
+ expect(tokensData[i].value).to.be.equal(`0x${Buffer.from('Serotonin increase').toString('hex')}`);
+ }
+ });
+ });
+
+ it('Changes properties of a token according to permissions', async () => {
+ await usingApi(async api => {
+ const propertyKeys: string[] = [];
+ let i = 0;
+ for (const permission of permissions) {
+ if (!permission.permission.mutable) continue;
+
+ for (const signer of permission.signers) {
+ const key = i + ' ' + signer.address;
+ propertyKeys.push(key);
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: key, permission: permission.permission}]),
+ ), `on setting permission ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.setTokenProperties(collection, token, [{key: key, value: 'Serotonin increase'}]),
+ ), `on adding property ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.setTokenProperties(collection, token, [{key: key, value: 'Serotonin stable'}]),
+ ), `on changing property ${i} by ${signer.address}`).to.not.be.rejected;
+ }
+
+ i++;
+ }
+
+ const properties = (await api.rpc.unique.tokenProperties(collection, token, propertyKeys)).toJSON() as any[];
+ const tokensData = (await api.rpc.unique.tokenData(collection, token, propertyKeys)).toJSON().properties as any[];
+ for (let i = 0; i < properties.length; i++) {
+ expect(properties[i].value).to.be.equal(`0x${Buffer.from('Serotonin stable').toString('hex')}`);
+ expect(tokensData[i].value).to.be.equal(`0x${Buffer.from('Serotonin stable').toString('hex')}`);
+ }
+ });
+ });
+
+ it('Deletes properties of a token according to permissions', async () => {
+ await usingApi(async api => {
+ const propertyKeys: string[] = [];
+ let i = 0;
+
+ for (const permission of permissions) {
+ if (!permission.permission.mutable) continue;
+
+ for (const signer of permission.signers) {
+ const key = i + ' ' + signer.address;
+ propertyKeys.push(key);
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: key, permission: permission.permission}]),
+ ), `on setting permission ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.setTokenProperties(collection, token, [{key: key, value: 'Serotonin increase'}]),
+ ), `on adding property ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.deleteTokenProperties(collection, token, [key]),
+ ), `on deleting property ${i} by ${signer.address}`).to.not.be.rejected;
+ }
+
+ i++;
+ }
+
+ const properties = (await api.rpc.unique.tokenProperties(collection, token, propertyKeys)).toJSON() as any[];
+ expect(properties).to.be.empty;
+ const tokensData = (await api.rpc.unique.tokenData(collection, token, propertyKeys)).toJSON().properties as any[];
+ expect(tokensData).to.be.empty;
+ expect((await api.query.nonfungible.tokenProperties(collection, token)).toJSON().consumedSpace).to.be.equal(0);
+ });
+ });
+});
+
+describe('Negative Integration Test: Token Properties', () => {
+ let collection: number;
+ let token: number;
+ let originalSpace: number;
+ let constitution: {permission: any, signers: IKeyringPair[], sinner: IKeyringPair}[];
+
+ before(async () => {
+ alice = privateKey('//Alice');
+ bob = privateKey('//Bob');
+ charlie = privateKey('//Charlie');
+ const dave = privateKey('//Dave');
+
+ constitution = [
+ {permission: {mutable: true, collectionAdmin: true}, signers: [alice, bob], sinner: charlie},
+ {permission: {mutable: false, collectionAdmin: true}, signers: [alice, bob], sinner: charlie},
+ {permission: {mutable: true, tokenOwner: true}, signers: [charlie], sinner: alice},
+ {permission: {mutable: false, tokenOwner: true}, signers: [charlie], sinner: alice},
+ {permission: {mutable: true, collectionAdmin: true, tokenOwner: true}, signers: [alice, bob, charlie], sinner: dave},
+ {permission: {mutable: false, collectionAdmin: true, tokenOwner: true}, signers: [alice, bob, charlie], sinner: dave},
+ ];
+ });
+
+ beforeEach(async () => {
+ collection = await createCollectionExpectSuccess();
+ token = await createItemExpectSuccess(alice, collection, 'NFT');
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+ await transferExpectSuccess(collection, token, alice, charlie);
+
+ await usingApi(async api => {
+ let i = 0;
+ for (const passage of constitution) {
+ const signer = passage.signers[0];
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: i, permission: passage.permission}]),
+ ), `on setting permission ${i} by ${signer.address}`).to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ signer,
+ api.tx.unique.setTokenProperties(collection, token, [{key: i, value: 'Serotonin increase'}]),
+ ), `on adding property ${i} by ${signer.address}`).to.not.be.rejected;
+
+ i++;
+ }
+
+ originalSpace = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON().consumedSpace as number;
+ });
+ });
+
+ it('Forbids changing/deleting properties of a token if the user is outside of permissions', async () => {
+ await usingApi(async api => {
+ let i = -1;
+ for (const forbiddance of constitution) {
+ i++;
+ if (!forbiddance.permission.mutable) continue;
+
+ await expect(executeTransaction(
+ api,
+ forbiddance.sinner,
+ api.tx.unique.setTokenProperties(collection, token, [{key: i, value: 'Serotonin down'}]),
+ ), `on failing to change property ${i} by ${forbiddance.sinner.address}`).to.be.rejectedWith(/common\.NoPermission/);
+
+ await expect(executeTransaction(
+ api,
+ forbiddance.sinner,
+ api.tx.unique.deleteTokenProperties(collection, token, [forbiddance.permission]),
+ ), `on failing to delete property ${i} by ${forbiddance.sinner.address}`).to.be.rejectedWith(/common\.NoPermission/);
+ }
+
+ // todo RPC?
+ const properties = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON();
+ expect(properties.consumedSpace).to.be.equal(originalSpace);
+ });
+ });
+
+ it('Forbids changing/deleting properties of a token if the property is permanent (constant)', async () => {
+ await usingApi(async api => {
+ let i = -1;
+ for (const permission of constitution) {
+ i++;
+ if (permission.permission.mutable) continue;
+
+ await expect(executeTransaction(
+ api,
+ permission.signers[0],
+ api.tx.unique.setTokenProperties(collection, token, [{key: i, value: 'Serotonin down'}]),
+ ), `on failing to change property ${i} by ${permission.signers[0].address}`).to.be.rejectedWith(/common\.NoPermission/);
+
+ await expect(executeTransaction(
+ api,
+ permission.signers[0],
+ api.tx.unique.deleteTokenProperties(collection, token, [i.toString()]),
+ ), `on failing to delete property ${i} by ${permission.signers[0].address}`).to.be.rejectedWith(/common\.NoPermission/);
+ }
+
+ // todo RPC?
+ const properties = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON();
+ expect(properties.consumedSpace).to.be.equal(originalSpace);
+ });
+ });
+
+ it('Forbids adding properties to a token if the property is not declared / forbidden with the \'None\' permission', async () => {
+ await usingApi(async api => {
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setTokenProperties(collection, token, [{key: 'non-existent', value: 'I exist!'}]),
+ ), 'on failing to add a previously non-existent property').to.be.rejectedWith(/common\.NoPermission/);
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [{key: 'now-existent', permission: {}}]),
+ ), 'on setting a new non-permitted property').to.not.be.rejected;
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setTokenProperties(collection, token, [{key: 'now-existent', value: 'I exist!'}]),
+ ), 'on failing to add a property forbidden by the \'None\' permission').to.be.rejectedWith(/common\.NoPermission/);
+
+ expect((await api.rpc.unique.tokenProperties(collection, token, ['non-existent', 'now-existent'])).toJSON()).to.be.empty;
+ const properties = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON();
+ expect(properties.consumedSpace).to.be.equal(originalSpace);
+ });
+ });
+
+ it('Forbids adding too many properties to a token', async () => {
+ await usingApi(async api => {
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setPropertyPermissions(collection, [
+ {key: 'a holy book', permission: {collectionAdmin: true, tokenOwner: true}},
+ {key: 'young years', permission: {collectionAdmin: true, tokenOwner: true}},
+ ]),
+ ), 'on setting a new non-permitted property').to.not.be.rejected;
+
+ // Mute the general tx parsing error
+ {
+ console.error = () => {};
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setCollectionProperties(collection, [{key: 'a holy book', value: 'word '.repeat(6554)}]),
+ )).to.be.rejected;
+ }
+
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.setTokenProperties(collection, token, [
+ {key: 'a holy book', value: 'word '.repeat(3277)},
+ {key: 'young years', value: 'neverending'.repeat(1490)},
+ ]),
+ )).to.be.rejectedWith(/common\.NoSpaceForProperty/);
+
+ expect((await api.rpc.unique.tokenProperties(collection, token, ['a holy book', 'young years'])).toJSON()).to.be.empty;
+ const propertiesMap = (await api.query.nonfungible.tokenProperties(collection, token)).toJSON();
+ expect(propertiesMap.consumedSpace).to.be.equal(originalSpace);
+ });
+ });
+});
\ No newline at end of file
tests/src/nesting/unnest.test.tsdiffbeforeafterboth--- a/tests/src/nesting/unnest.test.ts
+++ b/tests/src/nesting/unnest.test.ts
@@ -10,7 +10,6 @@
getTopmostTokenOwner,
normalizeAccountId,
setCollectionLimitsExpectSuccess,
- transferExpectFailure,
transferExpectSuccess,
} from '../util/helpers';
import {IKeyringPair} from '@polkadot/types/types';