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.tsdiffbeforeafterboth1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import 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';5import type { Data, StorageKey } from '@polkadot/types';6import 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';7import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';8import type { BlockAttestations, IncludedBlocks, MoreAttestations } from '@polkadot/types/interfaces/attestations';9import type { RawAuraPreDigest } from '@polkadot/types/interfaces/aura';10import type { ExtrinsicOrHash, ExtrinsicStatus } from '@polkadot/types/interfaces/author';11import type { UncleEntryItem } from '@polkadot/types/interfaces/authorship';12import type { AllowedSlots, BabeAuthorityWeight, BabeBlockWeight, BabeEpochConfiguration, BabeEquivocationProof, BabeWeight, EpochAuthorship, MaybeRandomness, MaybeVrf, NextConfigDescriptor, NextConfigDescriptorV1, Randomness, RawBabePreDigest, RawBabePreDigestCompat, RawBabePreDigestPrimary, RawBabePreDigestPrimaryTo159, RawBabePreDigestSecondaryPlain, RawBabePreDigestSecondaryTo159, RawBabePreDigestSecondaryVRF, RawBabePreDigestTo159, SlotNumber, VrfData, VrfOutput, VrfProof } from '@polkadot/types/interfaces/babe';13import type { AccountData, BalanceLock, BalanceLockTo212, BalanceStatus, Reasons, ReserveData, ReserveIdentifier, VestingSchedule, WithdrawReasons } from '@polkadot/types/interfaces/balances';14import type { BeefyCommitment, BeefyId, BeefyNextAuthoritySet, BeefyPayload, BeefySignedCommitment, MmrRootHash, ValidatorSetId } from '@polkadot/types/interfaces/beefy';15import type { BridgeMessageId, BridgedBlockHash, BridgedBlockNumber, BridgedHeader, CallOrigin, ChainId, DeliveredMessages, DispatchFeePayment, InboundLaneData, InboundRelayer, InitializationData, LaneId, MessageData, MessageKey, MessageNonce, MessagesDeliveryProofOf, MessagesProofOf, OperatingMode, OutboundLaneData, OutboundMessageFee, OutboundPayload, Parameter, RelayerId, UnrewardedRelayer, UnrewardedRelayersState } from '@polkadot/types/interfaces/bridges';16import type { BlockHash } from '@polkadot/types/interfaces/chain';17import type { PrefixedStorageKey } from '@polkadot/types/interfaces/childstate';18import type { StatementKind } from '@polkadot/types/interfaces/claims';19import type { CollectiveOrigin, MemberCount, ProposalIndex, Votes, VotesTo230 } from '@polkadot/types/interfaces/collective';20import type { AuthorityId, RawVRFOutput } from '@polkadot/types/interfaces/consensus';21import type { AliveContractInfo, CodeHash, CodeSource, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultErr, ContractExecResultErrModule, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractInstantiateResultTo299, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateRequestV1, InstantiateRequestV2, InstantiateReturnValue, InstantiateReturnValueOk, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts';22import type { ContractConstructorSpecLatest, ContractConstructorSpecV0, ContractConstructorSpecV1, ContractConstructorSpecV2, ContractConstructorSpecV3, ContractContractSpecV0, ContractContractSpecV1, ContractContractSpecV2, ContractContractSpecV3, ContractCryptoHasher, ContractDiscriminant, ContractDisplayName, ContractEventParamSpecLatest, ContractEventParamSpecV0, ContractEventParamSpecV2, ContractEventSpecLatest, ContractEventSpecV0, ContractEventSpecV1, ContractEventSpecV2, ContractLayoutArray, ContractLayoutCell, ContractLayoutEnum, ContractLayoutHash, ContractLayoutHashingStrategy, ContractLayoutKey, ContractLayoutStruct, ContractLayoutStructField, ContractMessageParamSpecLatest, ContractMessageParamSpecV0, ContractMessageParamSpecV2, ContractMessageSpecLatest, ContractMessageSpecV0, ContractMessageSpecV1, ContractMessageSpecV2, ContractMetadata, ContractMetadataLatest, ContractMetadataV0, ContractMetadataV1, ContractMetadataV2, ContractMetadataV3, ContractProject, ContractProjectContract, ContractProjectInfo, ContractProjectSource, ContractProjectV0, ContractSelector, ContractStorageLayout, ContractTypeSpec } from '@polkadot/types/interfaces/contractsAbi';23import type { FundIndex, FundInfo, LastContribution, TrieIndex } from '@polkadot/types/interfaces/crowdloan';24import type { ConfigData, MessageId, OverweightIndex, PageCounter, PageIndexData } from '@polkadot/types/interfaces/cumulus';25import 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';26import type { BlockStats } from '@polkadot/types/interfaces/dev';27import type { ApprovalFlag, DefunctVoter, Renouncing, SetIndex, Vote, VoteIndex, VoteThreshold, VoterInfo } from '@polkadot/types/interfaces/elections';28import type { CreatedBlock, ImportedAux } from '@polkadot/types/interfaces/engine';29import 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';30import type { EvmAccount, EvmLog, EvmVicinity, ExitError, ExitFatal, ExitReason, ExitRevert, ExitSucceed } from '@polkadot/types/interfaces/evm';31import type { AnySignature, EcdsaSignature, Ed25519Signature, Era, Extrinsic, ExtrinsicEra, ExtrinsicPayload, ExtrinsicPayloadUnknown, ExtrinsicPayloadV4, ExtrinsicSignature, ExtrinsicSignatureV4, ExtrinsicUnknown, ExtrinsicV4, ImmortalEra, MortalEra, MultiSignature, Signature, SignerPayload, Sr25519Signature } from '@polkadot/types/interfaces/extrinsics';32import type { AssetOptions, Owner, PermissionLatest, PermissionVersions, PermissionsV1 } from '@polkadot/types/interfaces/genericAsset';33import type { ActiveGilt, ActiveGiltsTotal, ActiveIndex, GiltBid } from '@polkadot/types/interfaces/gilt';34import type { AuthorityIndex, AuthorityList, AuthoritySet, AuthoritySetChange, AuthoritySetChanges, AuthorityWeight, DelayKind, DelayKindBest, EncodedFinalityProofs, ForkTreePendingChange, ForkTreePendingChangeNode, GrandpaCommit, GrandpaEquivocation, GrandpaEquivocationProof, GrandpaEquivocationValue, GrandpaJustification, GrandpaPrecommit, GrandpaPrevote, GrandpaSignedPrecommit, JustificationNotification, KeyOwnerProof, NextAuthority, PendingChange, PendingPause, PendingResume, Precommits, Prevotes, ReportedRoundStates, RoundState, SetId, StoredPendingChange, StoredState } from '@polkadot/types/interfaces/grandpa';35import type { IdentityFields, IdentityInfo, IdentityInfoAdditional, IdentityInfoTo198, IdentityJudgement, RegistrarIndex, RegistrarInfo, Registration, RegistrationJudgement, RegistrationTo198 } from '@polkadot/types/interfaces/identity';36import type { AuthIndex, AuthoritySignature, Heartbeat, HeartbeatTo244, OpaqueMultiaddr, OpaqueNetworkState, OpaquePeerId } from '@polkadot/types/interfaces/imOnline';37import type { CallIndex, LotteryConfig } from '@polkadot/types/interfaces/lottery';38import type { ErrorMetadataLatest, ErrorMetadataV10, ErrorMetadataV11, ErrorMetadataV12, ErrorMetadataV13, ErrorMetadataV14, ErrorMetadataV9, EventMetadataLatest, EventMetadataV10, EventMetadataV11, EventMetadataV12, EventMetadataV13, EventMetadataV14, EventMetadataV9, ExtrinsicMetadataLatest, ExtrinsicMetadataV11, ExtrinsicMetadataV12, ExtrinsicMetadataV13, ExtrinsicMetadataV14, FunctionArgumentMetadataLatest, FunctionArgumentMetadataV10, FunctionArgumentMetadataV11, FunctionArgumentMetadataV12, FunctionArgumentMetadataV13, FunctionArgumentMetadataV14, FunctionArgumentMetadataV9, FunctionMetadataLatest, FunctionMetadataV10, FunctionMetadataV11, FunctionMetadataV12, FunctionMetadataV13, FunctionMetadataV14, FunctionMetadataV9, MetadataAll, MetadataLatest, MetadataV10, MetadataV11, MetadataV12, MetadataV13, MetadataV14, MetadataV9, ModuleConstantMetadataV10, ModuleConstantMetadataV11, ModuleConstantMetadataV12, ModuleConstantMetadataV13, ModuleConstantMetadataV9, ModuleMetadataV10, ModuleMetadataV11, ModuleMetadataV12, ModuleMetadataV13, ModuleMetadataV9, PalletCallMetadataLatest, PalletCallMetadataV14, PalletConstantMetadataLatest, PalletConstantMetadataV14, PalletErrorMetadataLatest, PalletErrorMetadataV14, PalletEventMetadataLatest, PalletEventMetadataV14, PalletMetadataLatest, PalletMetadataV14, PalletStorageMetadataLatest, PalletStorageMetadataV14, PortableType, PortableTypeV14, SignedExtensionMetadataLatest, SignedExtensionMetadataV14, StorageEntryMetadataLatest, StorageEntryMetadataV10, StorageEntryMetadataV11, StorageEntryMetadataV12, StorageEntryMetadataV13, StorageEntryMetadataV14, StorageEntryMetadataV9, StorageEntryModifierLatest, StorageEntryModifierV10, StorageEntryModifierV11, StorageEntryModifierV12, StorageEntryModifierV13, StorageEntryModifierV14, StorageEntryModifierV9, StorageEntryTypeLatest, StorageEntryTypeV10, StorageEntryTypeV11, StorageEntryTypeV12, StorageEntryTypeV13, StorageEntryTypeV14, StorageEntryTypeV9, StorageHasher, StorageHasherV10, StorageHasherV11, StorageHasherV12, StorageHasherV13, StorageHasherV14, StorageHasherV9, StorageMetadataV10, StorageMetadataV11, StorageMetadataV12, StorageMetadataV13, StorageMetadataV9 } from '@polkadot/types/interfaces/metadata';39import type { MmrLeafProof } from '@polkadot/types/interfaces/mmr';40import type { StorageKind } from '@polkadot/types/interfaces/offchain';41import type { DeferredOffenceOf, Kind, OffenceDetails, Offender, OpaqueTimeSlot, ReportIdOf, Reporter } from '@polkadot/types/interfaces/offences';42import type { AbridgedCandidateReceipt, AbridgedHostConfiguration, AbridgedHrmpChannel, AssignmentId, AssignmentKind, AttestedCandidate, AuctionIndex, AuthorityDiscoveryId, AvailabilityBitfield, AvailabilityBitfieldRecord, BackedCandidate, Bidder, BufferedSessionChange, CandidateCommitments, CandidateDescriptor, CandidateHash, CandidateInfo, CandidatePendingAvailability, CandidateReceipt, CollatorId, CollatorSignature, CommittedCandidateReceipt, CoreAssignment, CoreIndex, CoreOccupied, DisputeLocation, DisputeResult, DisputeState, DisputeStatement, DisputeStatementSet, DoubleVoteReport, DownwardMessage, ExplicitDisputeStatement, GlobalValidationData, GlobalValidationSchedule, GroupIndex, HeadData, HostConfiguration, HrmpChannel, HrmpChannelId, HrmpOpenChannelRequest, InboundDownwardMessage, InboundHrmpMessage, InboundHrmpMessages, IncomingParachain, IncomingParachainDeploy, IncomingParachainFixed, InvalidDisputeStatementKind, LeasePeriod, LeasePeriodOf, LocalValidationData, MessageIngestionType, MessageQueueChain, MessagingStateSnapshot, MessagingStateSnapshotEgressEntry, MultiDisputeStatementSet, NewBidder, OutboundHrmpMessage, ParaGenesisArgs, ParaId, ParaInfo, ParaLifecycle, ParaPastCodeMeta, ParaScheduling, ParaValidatorIndex, ParachainDispatchOrigin, ParachainInherentData, ParachainProposal, ParachainsInherentData, ParathreadClaim, ParathreadClaimQueue, ParathreadEntry, PersistedValidationData, QueuedParathread, RegisteredParachainInfo, RelayBlockNumber, RelayChainBlockNumber, RelayChainHash, RelayHash, Remark, ReplacementTimes, Retriable, Scheduling, ServiceQuality, SessionInfo, SessionInfoValidatorGroup, SignedAvailabilityBitfield, SignedAvailabilityBitfields, SigningContext, SlotRange, SlotRange10, Statement, SubId, SystemInherentData, TransientValidationData, UpgradeGoAhead, UpgradeRestriction, UpwardMessage, ValidDisputeStatementKind, ValidationCode, ValidationCodeHash, ValidationData, ValidationDataType, ValidationFunctionParams, ValidatorSignature, ValidityAttestation, VecInboundHrmpMessage, WinnersData, WinnersData10, WinnersDataTuple, WinnersDataTuple10, WinningData, WinningData10, WinningDataEntry } from '@polkadot/types/interfaces/parachains';43import type { FeeDetails, InclusionFee, RuntimeDispatchInfo } from '@polkadot/types/interfaces/payment';44import type { Approvals } from '@polkadot/types/interfaces/poll';45import type { ProxyAnnouncement, ProxyDefinition, ProxyType } from '@polkadot/types/interfaces/proxy';46import type { AccountStatus, AccountValidity } from '@polkadot/types/interfaces/purchase';47import type { ActiveRecovery, RecoveryConfig } from '@polkadot/types/interfaces/recovery';48import type { RpcMethods } from '@polkadot/types/interfaces/rpc';49import type { AccountId, AccountId20, AccountId32, AccountIdOf, AccountIndex, Address, AssetId, Balance, BalanceOf, Block, BlockNumber, BlockNumberFor, BlockNumberOf, Call, CallHash, CallHashOf, ChangesTrieConfiguration, ChangesTrieSignal, CodecHash, Consensus, ConsensusEngineId, CrateVersion, Digest, DigestItem, EncodedJustification, ExtrinsicsWeight, Fixed128, Fixed64, FixedI128, FixedI64, FixedU128, FixedU64, H1024, H128, H160, H2048, H256, H32, H512, H64, Hash, Header, HeaderPartial, I32F32, Index, IndicesLookupSource, Justification, Justifications, KeyTypeId, KeyValue, LockIdentifier, LookupSource, LookupTarget, ModuleId, Moment, MultiAddress, MultiSigner, OpaqueCall, Origin, OriginCaller, PalletId, PalletVersion, PalletsOrigin, Pays, PerU16, Perbill, Percent, Permill, Perquintill, Phantom, PhantomData, PreRuntime, Releases, RuntimeDbWeight, Seal, SealV0, SignedBlock, SignedBlockWithJustification, SignedBlockWithJustifications, Slot, StorageData, StorageProof, TransactionInfo, TransactionPriority, TransactionStorageProof, U32F32, ValidatorId, ValidatorIdOf, Weight, WeightMultiplier } from '@polkadot/types/interfaces/runtime';50import type { Si0Field, Si0LookupTypeId, Si0Path, Si0Type, Si0TypeDef, Si0TypeDefArray, Si0TypeDefBitSequence, Si0TypeDefCompact, Si0TypeDefComposite, Si0TypeDefPhantom, Si0TypeDefPrimitive, Si0TypeDefSequence, Si0TypeDefTuple, Si0TypeDefVariant, Si0TypeParameter, Si0Variant, Si1Field, Si1LookupTypeId, Si1Path, Si1Type, Si1TypeDef, Si1TypeDefArray, Si1TypeDefBitSequence, Si1TypeDefCompact, Si1TypeDefComposite, Si1TypeDefPrimitive, Si1TypeDefSequence, Si1TypeDefTuple, Si1TypeDefVariant, Si1TypeParameter, Si1Variant, SiField, SiLookupTypeId, SiPath, SiType, SiTypeDef, SiTypeDefArray, SiTypeDefBitSequence, SiTypeDefCompact, SiTypeDefComposite, SiTypeDefPrimitive, SiTypeDefSequence, SiTypeDefTuple, SiTypeDefVariant, SiTypeParameter, SiVariant } from '@polkadot/types/interfaces/scaleInfo';51import type { Period, Priority, SchedulePeriod, SchedulePriority, Scheduled, ScheduledTo254, TaskAddress } from '@polkadot/types/interfaces/scheduler';52import 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';53import type { Bid, BidKind, SocietyJudgement, SocietyVote, StrikeCount, VouchingStatus } from '@polkadot/types/interfaces/society';54import 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';55import type { ApiId, BlockTrace, BlockTraceEvent, BlockTraceEventData, BlockTraceSpan, KeyValueOption, MigrationStatusResult, ReadProof, RuntimeVersion, RuntimeVersionApi, RuntimeVersionPartial, SpecVersion, StorageChangeSet, TraceBlockResponse, TraceError } from '@polkadot/types/interfaces/state';56import type { WeightToFeeCoefficient } from '@polkadot/types/interfaces/support';57import 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';58import type { Bounty, BountyIndex, BountyStatus, BountyStatusActive, BountyStatusCuratorProposed, BountyStatusPendingPayout, OpenTip, OpenTipFinderTo225, OpenTipTip, OpenTipTo225, TreasuryProposal } from '@polkadot/types/interfaces/treasury';59import type { Multiplier } from '@polkadot/types/interfaces/txpayment';60import type { ClassDetails, ClassId, ClassMetadata, DepositBalance, DepositBalanceOf, DestroyWitness, InstanceDetails, InstanceId, InstanceMetadata } from '@polkadot/types/interfaces/uniques';61import type { Multisig, Timepoint } from '@polkadot/types/interfaces/utility';62import type { VestingInfo } from '@polkadot/types/interfaces/vesting';63import type { AssetInstance, AssetInstanceV0, AssetInstanceV1, AssetInstanceV2, BodyId, BodyPart, DoubleEncodedCall, Fungibility, FungibilityV0, FungibilityV1, FungibilityV2, InboundStatus, InstructionV2, InteriorMultiLocation, Junction, JunctionV0, JunctionV1, JunctionV2, Junctions, JunctionsV1, JunctionsV2, MultiAsset, MultiAssetFilter, MultiAssetFilterV1, MultiAssetFilterV2, MultiAssetV0, MultiAssetV1, MultiAssetV2, MultiAssets, MultiAssetsV1, MultiAssetsV2, MultiLocation, MultiLocationV0, MultiLocationV1, MultiLocationV2, NetworkId, OriginKindV0, OriginKindV1, OriginKindV2, OutboundStatus, Outcome, QueryId, QueryStatus, QueueConfigData, Response, ResponseV0, ResponseV1, ResponseV2, ResponseV2Error, ResponseV2Result, VersionMigrationStage, VersionedMultiAsset, VersionedMultiAssets, VersionedMultiLocation, VersionedResponse, VersionedXcm, WeightLimitV2, WildFungibility, WildFungibilityV0, WildFungibilityV1, WildFungibilityV2, WildMultiAsset, WildMultiAssetV1, WildMultiAssetV2, Xcm, XcmAssetId, XcmError, XcmErrorV0, XcmErrorV1, XcmErrorV2, XcmOrder, XcmOrderV0, XcmOrderV1, XcmOrderV2, XcmOrigin, XcmOriginKind, XcmV0, XcmV1, XcmV2, XcmVersion, XcmpMessageFormat } from '@polkadot/types/interfaces/xcm';6465declare module '@polkadot/types/types/registry' {66 export interface InterfaceTypes {67 AbridgedCandidateReceipt: AbridgedCandidateReceipt;68 AbridgedHostConfiguration: AbridgedHostConfiguration;69 AbridgedHrmpChannel: AbridgedHrmpChannel;70 AccountData: AccountData;71 AccountId: AccountId;72 AccountId20: AccountId20;73 AccountId32: AccountId32;74 AccountIdOf: AccountIdOf;75 AccountIndex: AccountIndex;76 AccountInfo: AccountInfo;77 AccountInfoWithDualRefCount: AccountInfoWithDualRefCount;78 AccountInfoWithProviders: AccountInfoWithProviders;79 AccountInfoWithRefCount: AccountInfoWithRefCount;80 AccountInfoWithRefCountU8: AccountInfoWithRefCountU8;81 AccountInfoWithTripleRefCount: AccountInfoWithTripleRefCount;82 AccountStatus: AccountStatus;83 AccountValidity: AccountValidity;84 AccountVote: AccountVote;85 AccountVoteSplit: AccountVoteSplit;86 AccountVoteStandard: AccountVoteStandard;87 ActiveEraInfo: ActiveEraInfo;88 ActiveGilt: ActiveGilt;89 ActiveGiltsTotal: ActiveGiltsTotal;90 ActiveIndex: ActiveIndex;91 ActiveRecovery: ActiveRecovery;92 Address: Address;93 AliveContractInfo: AliveContractInfo;94 AllowedSlots: AllowedSlots;95 AnySignature: AnySignature;96 ApiId: ApiId;97 ApplyExtrinsicResult: ApplyExtrinsicResult;98 ApprovalFlag: ApprovalFlag;99 Approvals: Approvals;100 ArithmeticError: ArithmeticError;101 AssetApproval: AssetApproval;102 AssetApprovalKey: AssetApprovalKey;103 AssetBalance: AssetBalance;104 AssetDestroyWitness: AssetDestroyWitness;105 AssetDetails: AssetDetails;106 AssetId: AssetId;107 AssetInstance: AssetInstance;108 AssetInstanceV0: AssetInstanceV0;109 AssetInstanceV1: AssetInstanceV1;110 AssetInstanceV2: AssetInstanceV2;111 AssetMetadata: AssetMetadata;112 AssetOptions: AssetOptions;113 AssignmentId: AssignmentId;114 AssignmentKind: AssignmentKind;115 AttestedCandidate: AttestedCandidate;116 AuctionIndex: AuctionIndex;117 AuthIndex: AuthIndex;118 AuthorityDiscoveryId: AuthorityDiscoveryId;119 AuthorityId: AuthorityId;120 AuthorityIndex: AuthorityIndex;121 AuthorityList: AuthorityList;122 AuthoritySet: AuthoritySet;123 AuthoritySetChange: AuthoritySetChange;124 AuthoritySetChanges: AuthoritySetChanges;125 AuthoritySignature: AuthoritySignature;126 AuthorityWeight: AuthorityWeight;127 AvailabilityBitfield: AvailabilityBitfield;128 AvailabilityBitfieldRecord: AvailabilityBitfieldRecord;129 BabeAuthorityWeight: BabeAuthorityWeight;130 BabeBlockWeight: BabeBlockWeight;131 BabeEpochConfiguration: BabeEpochConfiguration;132 BabeEquivocationProof: BabeEquivocationProof;133 BabeWeight: BabeWeight;134 BackedCandidate: BackedCandidate;135 Balance: Balance;136 BalanceLock: BalanceLock;137 BalanceLockTo212: BalanceLockTo212;138 BalanceOf: BalanceOf;139 BalanceStatus: BalanceStatus;140 BeefyCommitment: BeefyCommitment;141 BeefyId: BeefyId;142 BeefyKey: BeefyKey;143 BeefyNextAuthoritySet: BeefyNextAuthoritySet;144 BeefyPayload: BeefyPayload;145 BeefySignedCommitment: BeefySignedCommitment;146 Bid: Bid;147 Bidder: Bidder;148 BidKind: BidKind;149 BitVec: BitVec;150 Block: Block;151 BlockAttestations: BlockAttestations;152 BlockHash: BlockHash;153 BlockLength: BlockLength;154 BlockNumber: BlockNumber;155 BlockNumberFor: BlockNumberFor;156 BlockNumberOf: BlockNumberOf;157 BlockStats: BlockStats;158 BlockTrace: BlockTrace;159 BlockTraceEvent: BlockTraceEvent;160 BlockTraceEventData: BlockTraceEventData;161 BlockTraceSpan: BlockTraceSpan;162 BlockV0: BlockV0;163 BlockV1: BlockV1;164 BlockV2: BlockV2;165 BlockWeights: BlockWeights;166 BodyId: BodyId;167 BodyPart: BodyPart;168 bool: bool;169 Bool: Bool;170 Bounty: Bounty;171 BountyIndex: BountyIndex;172 BountyStatus: BountyStatus;173 BountyStatusActive: BountyStatusActive;174 BountyStatusCuratorProposed: BountyStatusCuratorProposed;175 BountyStatusPendingPayout: BountyStatusPendingPayout;176 BridgedBlockHash: BridgedBlockHash;177 BridgedBlockNumber: BridgedBlockNumber;178 BridgedHeader: BridgedHeader;179 BridgeMessageId: BridgeMessageId;180 BufferedSessionChange: BufferedSessionChange;181 Bytes: Bytes;182 Call: Call;183 CallHash: CallHash;184 CallHashOf: CallHashOf;185 CallIndex: CallIndex;186 CallOrigin: CallOrigin;187 CandidateCommitments: CandidateCommitments;188 CandidateDescriptor: CandidateDescriptor;189 CandidateHash: CandidateHash;190 CandidateInfo: CandidateInfo;191 CandidatePendingAvailability: CandidatePendingAvailability;192 CandidateReceipt: CandidateReceipt;193 ChainId: ChainId;194 ChainProperties: ChainProperties;195 ChainType: ChainType;196 ChangesTrieConfiguration: ChangesTrieConfiguration;197 ChangesTrieSignal: ChangesTrieSignal;198 ClassDetails: ClassDetails;199 ClassId: ClassId;200 ClassMetadata: ClassMetadata;201 CodecHash: CodecHash;202 CodeHash: CodeHash;203 CodeSource: CodeSource;204 CodeUploadRequest: CodeUploadRequest;205 CodeUploadResult: CodeUploadResult;206 CodeUploadResultValue: CodeUploadResultValue;207 CollatorId: CollatorId;208 CollatorSignature: CollatorSignature;209 CollectiveOrigin: CollectiveOrigin;210 CommittedCandidateReceipt: CommittedCandidateReceipt;211 CompactAssignments: CompactAssignments;212 CompactAssignmentsTo257: CompactAssignmentsTo257;213 CompactAssignmentsTo265: CompactAssignmentsTo265;214 CompactAssignmentsWith16: CompactAssignmentsWith16;215 CompactAssignmentsWith24: CompactAssignmentsWith24;216 CompactScore: CompactScore;217 CompactScoreCompact: CompactScoreCompact;218 ConfigData: ConfigData;219 Consensus: Consensus;220 ConsensusEngineId: ConsensusEngineId;221 ConsumedWeight: ConsumedWeight;222 ContractCallFlags: ContractCallFlags;223 ContractCallRequest: ContractCallRequest;224 ContractConstructorSpecLatest: ContractConstructorSpecLatest;225 ContractConstructorSpecV0: ContractConstructorSpecV0;226 ContractConstructorSpecV1: ContractConstructorSpecV1;227 ContractConstructorSpecV2: ContractConstructorSpecV2;228 ContractConstructorSpecV3: ContractConstructorSpecV3;229 ContractContractSpecV0: ContractContractSpecV0;230 ContractContractSpecV1: ContractContractSpecV1;231 ContractContractSpecV2: ContractContractSpecV2;232 ContractContractSpecV3: ContractContractSpecV3;233 ContractCryptoHasher: ContractCryptoHasher;234 ContractDiscriminant: ContractDiscriminant;235 ContractDisplayName: ContractDisplayName;236 ContractEventParamSpecLatest: ContractEventParamSpecLatest;237 ContractEventParamSpecV0: ContractEventParamSpecV0;238 ContractEventParamSpecV2: ContractEventParamSpecV2;239 ContractEventSpecLatest: ContractEventSpecLatest;240 ContractEventSpecV0: ContractEventSpecV0;241 ContractEventSpecV1: ContractEventSpecV1;242 ContractEventSpecV2: ContractEventSpecV2;243 ContractExecResult: ContractExecResult;244 ContractExecResultErr: ContractExecResultErr;245 ContractExecResultErrModule: ContractExecResultErrModule;246 ContractExecResultOk: ContractExecResultOk;247 ContractExecResultResult: ContractExecResultResult;248 ContractExecResultSuccessTo255: ContractExecResultSuccessTo255;249 ContractExecResultSuccessTo260: ContractExecResultSuccessTo260;250 ContractExecResultTo255: ContractExecResultTo255;251 ContractExecResultTo260: ContractExecResultTo260;252 ContractExecResultTo267: ContractExecResultTo267;253 ContractInfo: ContractInfo;254 ContractInstantiateResult: ContractInstantiateResult;255 ContractInstantiateResultTo267: ContractInstantiateResultTo267;256 ContractInstantiateResultTo299: ContractInstantiateResultTo299;257 ContractLayoutArray: ContractLayoutArray;258 ContractLayoutCell: ContractLayoutCell;259 ContractLayoutEnum: ContractLayoutEnum;260 ContractLayoutHash: ContractLayoutHash;261 ContractLayoutHashingStrategy: ContractLayoutHashingStrategy;262 ContractLayoutKey: ContractLayoutKey;263 ContractLayoutStruct: ContractLayoutStruct;264 ContractLayoutStructField: ContractLayoutStructField;265 ContractMessageParamSpecLatest: ContractMessageParamSpecLatest;266 ContractMessageParamSpecV0: ContractMessageParamSpecV0;267 ContractMessageParamSpecV2: ContractMessageParamSpecV2;268 ContractMessageSpecLatest: ContractMessageSpecLatest;269 ContractMessageSpecV0: ContractMessageSpecV0;270 ContractMessageSpecV1: ContractMessageSpecV1;271 ContractMessageSpecV2: ContractMessageSpecV2;272 ContractMetadata: ContractMetadata;273 ContractMetadataLatest: ContractMetadataLatest;274 ContractMetadataV0: ContractMetadataV0;275 ContractMetadataV1: ContractMetadataV1;276 ContractMetadataV2: ContractMetadataV2;277 ContractMetadataV3: ContractMetadataV3;278 ContractProject: ContractProject;279 ContractProjectContract: ContractProjectContract;280 ContractProjectInfo: ContractProjectInfo;281 ContractProjectSource: ContractProjectSource;282 ContractProjectV0: ContractProjectV0;283 ContractReturnFlags: ContractReturnFlags;284 ContractSelector: ContractSelector;285 ContractStorageKey: ContractStorageKey;286 ContractStorageLayout: ContractStorageLayout;287 ContractTypeSpec: ContractTypeSpec;288 Conviction: Conviction;289 CoreAssignment: CoreAssignment;290 CoreIndex: CoreIndex;291 CoreOccupied: CoreOccupied;292 CrateVersion: CrateVersion;293 CreatedBlock: CreatedBlock;294 CumulusPalletDmpQueueCall: CumulusPalletDmpQueueCall;295 CumulusPalletDmpQueueConfigData: CumulusPalletDmpQueueConfigData;296 CumulusPalletDmpQueueError: CumulusPalletDmpQueueError;297 CumulusPalletDmpQueueEvent: CumulusPalletDmpQueueEvent;298 CumulusPalletDmpQueuePageIndexData: CumulusPalletDmpQueuePageIndexData;299 CumulusPalletParachainSystemCall: CumulusPalletParachainSystemCall;300 CumulusPalletParachainSystemError: CumulusPalletParachainSystemError;301 CumulusPalletParachainSystemEvent: CumulusPalletParachainSystemEvent;302 CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot: CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot;303 CumulusPalletXcmCall: CumulusPalletXcmCall;304 CumulusPalletXcmError: CumulusPalletXcmError;305 CumulusPalletXcmEvent: CumulusPalletXcmEvent;306 CumulusPalletXcmpQueueCall: CumulusPalletXcmpQueueCall;307 CumulusPalletXcmpQueueError: CumulusPalletXcmpQueueError;308 CumulusPalletXcmpQueueEvent: CumulusPalletXcmpQueueEvent;309 CumulusPalletXcmpQueueInboundChannelDetails: CumulusPalletXcmpQueueInboundChannelDetails;310 CumulusPalletXcmpQueueInboundState: CumulusPalletXcmpQueueInboundState;311 CumulusPalletXcmpQueueOutboundChannelDetails: CumulusPalletXcmpQueueOutboundChannelDetails;312 CumulusPalletXcmpQueueOutboundState: CumulusPalletXcmpQueueOutboundState;313 CumulusPalletXcmpQueueQueueConfigData: CumulusPalletXcmpQueueQueueConfigData;314 CumulusPrimitivesParachainInherentParachainInherentData: CumulusPrimitivesParachainInherentParachainInherentData;315 Data: Data;316 DeferredOffenceOf: DeferredOffenceOf;317 DefunctVoter: DefunctVoter;318 DelayKind: DelayKind;319 DelayKindBest: DelayKindBest;320 Delegations: Delegations;321 DeletedContract: DeletedContract;322 DeliveredMessages: DeliveredMessages;323 DepositBalance: DepositBalance;324 DepositBalanceOf: DepositBalanceOf;325 DestroyWitness: DestroyWitness;326 Digest: Digest;327 DigestItem: DigestItem;328 DigestOf: DigestOf;329 DispatchClass: DispatchClass;330 DispatchError: DispatchError;331 DispatchErrorModule: DispatchErrorModule;332 DispatchErrorModuleU8a: DispatchErrorModuleU8a;333 DispatchErrorTo198: DispatchErrorTo198;334 DispatchFeePayment: DispatchFeePayment;335 DispatchInfo: DispatchInfo;336 DispatchInfoTo190: DispatchInfoTo190;337 DispatchInfoTo244: DispatchInfoTo244;338 DispatchOutcome: DispatchOutcome;339 DispatchResult: DispatchResult;340 DispatchResultOf: DispatchResultOf;341 DispatchResultTo198: DispatchResultTo198;342 DisputeLocation: DisputeLocation;343 DisputeResult: DisputeResult;344 DisputeState: DisputeState;345 DisputeStatement: DisputeStatement;346 DisputeStatementSet: DisputeStatementSet;347 DoubleEncodedCall: DoubleEncodedCall;348 DoubleVoteReport: DoubleVoteReport;349 DownwardMessage: DownwardMessage;350 EcdsaSignature: EcdsaSignature;351 Ed25519Signature: Ed25519Signature;352 EIP1559Transaction: EIP1559Transaction;353 EIP2930Transaction: EIP2930Transaction;354 ElectionCompute: ElectionCompute;355 ElectionPhase: ElectionPhase;356 ElectionResult: ElectionResult;357 ElectionScore: ElectionScore;358 ElectionSize: ElectionSize;359 ElectionStatus: ElectionStatus;360 EncodedFinalityProofs: EncodedFinalityProofs;361 EncodedJustification: EncodedJustification;362 EpochAuthorship: EpochAuthorship;363 Era: Era;364 EraIndex: EraIndex;365 EraPoints: EraPoints;366 EraRewardPoints: EraRewardPoints;367 EraRewards: EraRewards;368 ErrorMetadataLatest: ErrorMetadataLatest;369 ErrorMetadataV10: ErrorMetadataV10;370 ErrorMetadataV11: ErrorMetadataV11;371 ErrorMetadataV12: ErrorMetadataV12;372 ErrorMetadataV13: ErrorMetadataV13;373 ErrorMetadataV14: ErrorMetadataV14;374 ErrorMetadataV9: ErrorMetadataV9;375 EthAccessList: EthAccessList;376 EthAccessListItem: EthAccessListItem;377 EthAccount: EthAccount;378 EthAddress: EthAddress;379 EthBlock: EthBlock;380 EthBloom: EthBloom;381 EthbloomBloom: EthbloomBloom;382 EthCallRequest: EthCallRequest;383 EthereumAccountId: EthereumAccountId;384 EthereumAddress: EthereumAddress;385 EthereumBlock: EthereumBlock;386 EthereumHeader: EthereumHeader;387 EthereumLog: EthereumLog;388 EthereumLookupSource: EthereumLookupSource;389 EthereumReceiptEip658ReceiptData: EthereumReceiptEip658ReceiptData;390 EthereumReceiptReceiptV3: EthereumReceiptReceiptV3;391 EthereumSignature: EthereumSignature;392 EthereumTransactionAccessListItem: EthereumTransactionAccessListItem;393 EthereumTransactionEip1559Transaction: EthereumTransactionEip1559Transaction;394 EthereumTransactionEip2930Transaction: EthereumTransactionEip2930Transaction;395 EthereumTransactionLegacyTransaction: EthereumTransactionLegacyTransaction;396 EthereumTransactionTransactionAction: EthereumTransactionTransactionAction;397 EthereumTransactionTransactionSignature: EthereumTransactionTransactionSignature;398 EthereumTransactionTransactionV2: EthereumTransactionTransactionV2;399 EthereumTypesHashH64: EthereumTypesHashH64;400 EthFilter: EthFilter;401 EthFilterAddress: EthFilterAddress;402 EthFilterChanges: EthFilterChanges;403 EthFilterTopic: EthFilterTopic;404 EthFilterTopicEntry: EthFilterTopicEntry;405 EthFilterTopicInner: EthFilterTopicInner;406 EthHeader: EthHeader;407 EthLog: EthLog;408 EthReceipt: EthReceipt;409 EthRichBlock: EthRichBlock;410 EthRichHeader: EthRichHeader;411 EthStorageProof: EthStorageProof;412 EthSubKind: EthSubKind;413 EthSubParams: EthSubParams;414 EthSubResult: EthSubResult;415 EthSyncInfo: EthSyncInfo;416 EthSyncStatus: EthSyncStatus;417 EthTransaction: EthTransaction;418 EthTransactionAction: EthTransactionAction;419 EthTransactionCondition: EthTransactionCondition;420 EthTransactionRequest: EthTransactionRequest;421 EthTransactionSignature: EthTransactionSignature;422 EthTransactionStatus: EthTransactionStatus;423 EthWork: EthWork;424 Event: Event;425 EventId: EventId;426 EventIndex: EventIndex;427 EventMetadataLatest: EventMetadataLatest;428 EventMetadataV10: EventMetadataV10;429 EventMetadataV11: EventMetadataV11;430 EventMetadataV12: EventMetadataV12;431 EventMetadataV13: EventMetadataV13;432 EventMetadataV14: EventMetadataV14;433 EventMetadataV9: EventMetadataV9;434 EventRecord: EventRecord;435 EvmAccount: EvmAccount;436 EvmCoreErrorExitError: EvmCoreErrorExitError;437 EvmCoreErrorExitFatal: EvmCoreErrorExitFatal;438 EvmCoreErrorExitReason: EvmCoreErrorExitReason;439 EvmCoreErrorExitRevert: EvmCoreErrorExitRevert;440 EvmCoreErrorExitSucceed: EvmCoreErrorExitSucceed;441 EvmLog: EvmLog;442 EvmVicinity: EvmVicinity;443 ExecReturnValue: ExecReturnValue;444 ExitError: ExitError;445 ExitFatal: ExitFatal;446 ExitReason: ExitReason;447 ExitRevert: ExitRevert;448 ExitSucceed: ExitSucceed;449 ExplicitDisputeStatement: ExplicitDisputeStatement;450 Exposure: Exposure;451 ExtendedBalance: ExtendedBalance;452 Extrinsic: Extrinsic;453 ExtrinsicEra: ExtrinsicEra;454 ExtrinsicMetadataLatest: ExtrinsicMetadataLatest;455 ExtrinsicMetadataV11: ExtrinsicMetadataV11;456 ExtrinsicMetadataV12: ExtrinsicMetadataV12;457 ExtrinsicMetadataV13: ExtrinsicMetadataV13;458 ExtrinsicMetadataV14: ExtrinsicMetadataV14;459 ExtrinsicOrHash: ExtrinsicOrHash;460 ExtrinsicPayload: ExtrinsicPayload;461 ExtrinsicPayloadUnknown: ExtrinsicPayloadUnknown;462 ExtrinsicPayloadV4: ExtrinsicPayloadV4;463 ExtrinsicSignature: ExtrinsicSignature;464 ExtrinsicSignatureV4: ExtrinsicSignatureV4;465 ExtrinsicStatus: ExtrinsicStatus;466 ExtrinsicsWeight: ExtrinsicsWeight;467 ExtrinsicUnknown: ExtrinsicUnknown;468 ExtrinsicV4: ExtrinsicV4;469 FeeDetails: FeeDetails;470 Fixed128: Fixed128;471 Fixed64: Fixed64;472 FixedI128: FixedI128;473 FixedI64: FixedI64;474 FixedU128: FixedU128;475 FixedU64: FixedU64;476 Forcing: Forcing;477 ForkTreePendingChange: ForkTreePendingChange;478 ForkTreePendingChangeNode: ForkTreePendingChangeNode;479 FpRpcTransactionStatus: FpRpcTransactionStatus;480 FrameSupportPalletId: FrameSupportPalletId;481 FrameSupportStorageBoundedBTreeSet: FrameSupportStorageBoundedBTreeSet;482 FrameSupportTokensMiscBalanceStatus: FrameSupportTokensMiscBalanceStatus;483 FrameSupportWeightsDispatchClass: FrameSupportWeightsDispatchClass;484 FrameSupportWeightsDispatchInfo: FrameSupportWeightsDispatchInfo;485 FrameSupportWeightsPays: FrameSupportWeightsPays;486 FrameSupportWeightsPerDispatchClassU32: FrameSupportWeightsPerDispatchClassU32;487 FrameSupportWeightsPerDispatchClassU64: FrameSupportWeightsPerDispatchClassU64;488 FrameSupportWeightsPerDispatchClassWeightsPerClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;489 FrameSupportWeightsRuntimeDbWeight: FrameSupportWeightsRuntimeDbWeight;490 FrameSupportWeightsWeightToFeeCoefficient: FrameSupportWeightsWeightToFeeCoefficient;491 FrameSystemAccountInfo: FrameSystemAccountInfo;492 FrameSystemCall: FrameSystemCall;493 FrameSystemError: FrameSystemError;494 FrameSystemEvent: FrameSystemEvent;495 FrameSystemEventRecord: FrameSystemEventRecord;496 FrameSystemExtensionsCheckGenesis: FrameSystemExtensionsCheckGenesis;497 FrameSystemExtensionsCheckNonce: FrameSystemExtensionsCheckNonce;498 FrameSystemExtensionsCheckSpecVersion: FrameSystemExtensionsCheckSpecVersion;499 FrameSystemExtensionsCheckWeight: FrameSystemExtensionsCheckWeight;500 FrameSystemLastRuntimeUpgradeInfo: FrameSystemLastRuntimeUpgradeInfo;501 FrameSystemLimitsBlockLength: FrameSystemLimitsBlockLength;502 FrameSystemLimitsBlockWeights: FrameSystemLimitsBlockWeights;503 FrameSystemLimitsWeightsPerClass: FrameSystemLimitsWeightsPerClass;504 FrameSystemPhase: FrameSystemPhase;505 FullIdentification: FullIdentification;506 FunctionArgumentMetadataLatest: FunctionArgumentMetadataLatest;507 FunctionArgumentMetadataV10: FunctionArgumentMetadataV10;508 FunctionArgumentMetadataV11: FunctionArgumentMetadataV11;509 FunctionArgumentMetadataV12: FunctionArgumentMetadataV12;510 FunctionArgumentMetadataV13: FunctionArgumentMetadataV13;511 FunctionArgumentMetadataV14: FunctionArgumentMetadataV14;512 FunctionArgumentMetadataV9: FunctionArgumentMetadataV9;513 FunctionMetadataLatest: FunctionMetadataLatest;514 FunctionMetadataV10: FunctionMetadataV10;515 FunctionMetadataV11: FunctionMetadataV11;516 FunctionMetadataV12: FunctionMetadataV12;517 FunctionMetadataV13: FunctionMetadataV13;518 FunctionMetadataV14: FunctionMetadataV14;519 FunctionMetadataV9: FunctionMetadataV9;520 FundIndex: FundIndex;521 FundInfo: FundInfo;522 Fungibility: Fungibility;523 FungibilityV0: FungibilityV0;524 FungibilityV1: FungibilityV1;525 FungibilityV2: FungibilityV2;526 Gas: Gas;527 GiltBid: GiltBid;528 GlobalValidationData: GlobalValidationData;529 GlobalValidationSchedule: GlobalValidationSchedule;530 GrandpaCommit: GrandpaCommit;531 GrandpaEquivocation: GrandpaEquivocation;532 GrandpaEquivocationProof: GrandpaEquivocationProof;533 GrandpaEquivocationValue: GrandpaEquivocationValue;534 GrandpaJustification: GrandpaJustification;535 GrandpaPrecommit: GrandpaPrecommit;536 GrandpaPrevote: GrandpaPrevote;537 GrandpaSignedPrecommit: GrandpaSignedPrecommit;538 GroupIndex: GroupIndex;539 H1024: H1024;540 H128: H128;541 H160: H160;542 H2048: H2048;543 H256: H256;544 H32: H32;545 H512: H512;546 H64: H64;547 Hash: Hash;548 HeadData: HeadData;549 Header: Header;550 HeaderPartial: HeaderPartial;551 Health: Health;552 Heartbeat: Heartbeat;553 HeartbeatTo244: HeartbeatTo244;554 HostConfiguration: HostConfiguration;555 HostFnWeights: HostFnWeights;556 HostFnWeightsTo264: HostFnWeightsTo264;557 HrmpChannel: HrmpChannel;558 HrmpChannelId: HrmpChannelId;559 HrmpOpenChannelRequest: HrmpOpenChannelRequest;560 i128: i128;561 I128: I128;562 i16: i16;563 I16: I16;564 i256: i256;565 I256: I256;566 i32: i32;567 I32: I32;568 I32F32: I32F32;569 i64: i64;570 I64: I64;571 i8: i8;572 I8: I8;573 IdentificationTuple: IdentificationTuple;574 IdentityFields: IdentityFields;575 IdentityInfo: IdentityInfo;576 IdentityInfoAdditional: IdentityInfoAdditional;577 IdentityInfoTo198: IdentityInfoTo198;578 IdentityJudgement: IdentityJudgement;579 ImmortalEra: ImmortalEra;580 ImportedAux: ImportedAux;581 InboundDownwardMessage: InboundDownwardMessage;582 InboundHrmpMessage: InboundHrmpMessage;583 InboundHrmpMessages: InboundHrmpMessages;584 InboundLaneData: InboundLaneData;585 InboundRelayer: InboundRelayer;586 InboundStatus: InboundStatus;587 IncludedBlocks: IncludedBlocks;588 InclusionFee: InclusionFee;589 IncomingParachain: IncomingParachain;590 IncomingParachainDeploy: IncomingParachainDeploy;591 IncomingParachainFixed: IncomingParachainFixed;592 Index: Index;593 IndicesLookupSource: IndicesLookupSource;594 IndividualExposure: IndividualExposure;595 InitializationData: InitializationData;596 InstanceDetails: InstanceDetails;597 InstanceId: InstanceId;598 InstanceMetadata: InstanceMetadata;599 InstantiateRequest: InstantiateRequest;600 InstantiateRequestV1: InstantiateRequestV1;601 InstantiateRequestV2: InstantiateRequestV2;602 InstantiateReturnValue: InstantiateReturnValue;603 InstantiateReturnValueOk: InstantiateReturnValueOk;604 InstantiateReturnValueTo267: InstantiateReturnValueTo267;605 InstructionV2: InstructionV2;606 InstructionWeights: InstructionWeights;607 InteriorMultiLocation: InteriorMultiLocation;608 InvalidDisputeStatementKind: InvalidDisputeStatementKind;609 InvalidTransaction: InvalidTransaction;610 Json: Json;611 Junction: Junction;612 Junctions: Junctions;613 JunctionsV1: JunctionsV1;614 JunctionsV2: JunctionsV2;615 JunctionV0: JunctionV0;616 JunctionV1: JunctionV1;617 JunctionV2: JunctionV2;618 Justification: Justification;619 JustificationNotification: JustificationNotification;620 Justifications: Justifications;621 Key: Key;622 KeyOwnerProof: KeyOwnerProof;623 Keys: Keys;624 KeyType: KeyType;625 KeyTypeId: KeyTypeId;626 KeyValue: KeyValue;627 KeyValueOption: KeyValueOption;628 Kind: Kind;629 LaneId: LaneId;630 LastContribution: LastContribution;631 LastRuntimeUpgradeInfo: LastRuntimeUpgradeInfo;632 LeasePeriod: LeasePeriod;633 LeasePeriodOf: LeasePeriodOf;634 LegacyTransaction: LegacyTransaction;635 Limits: Limits;636 LimitsTo264: LimitsTo264;637 LocalValidationData: LocalValidationData;638 LockIdentifier: LockIdentifier;639 LookupSource: LookupSource;640 LookupTarget: LookupTarget;641 LotteryConfig: LotteryConfig;642 MaybeRandomness: MaybeRandomness;643 MaybeVrf: MaybeVrf;644 MemberCount: MemberCount;645 MembershipProof: MembershipProof;646 MessageData: MessageData;647 MessageId: MessageId;648 MessageIngestionType: MessageIngestionType;649 MessageKey: MessageKey;650 MessageNonce: MessageNonce;651 MessageQueueChain: MessageQueueChain;652 MessagesDeliveryProofOf: MessagesDeliveryProofOf;653 MessagesProofOf: MessagesProofOf;654 MessagingStateSnapshot: MessagingStateSnapshot;655 MessagingStateSnapshotEgressEntry: MessagingStateSnapshotEgressEntry;656 MetadataAll: MetadataAll;657 MetadataLatest: MetadataLatest;658 MetadataV10: MetadataV10;659 MetadataV11: MetadataV11;660 MetadataV12: MetadataV12;661 MetadataV13: MetadataV13;662 MetadataV14: MetadataV14;663 MetadataV9: MetadataV9;664 MigrationStatusResult: MigrationStatusResult;665 MmrLeafProof: MmrLeafProof;666 MmrRootHash: MmrRootHash;667 ModuleConstantMetadataV10: ModuleConstantMetadataV10;668 ModuleConstantMetadataV11: ModuleConstantMetadataV11;669 ModuleConstantMetadataV12: ModuleConstantMetadataV12;670 ModuleConstantMetadataV13: ModuleConstantMetadataV13;671 ModuleConstantMetadataV9: ModuleConstantMetadataV9;672 ModuleId: ModuleId;673 ModuleMetadataV10: ModuleMetadataV10;674 ModuleMetadataV11: ModuleMetadataV11;675 ModuleMetadataV12: ModuleMetadataV12;676 ModuleMetadataV13: ModuleMetadataV13;677 ModuleMetadataV9: ModuleMetadataV9;678 Moment: Moment;679 MomentOf: MomentOf;680 MoreAttestations: MoreAttestations;681 MortalEra: MortalEra;682 MultiAddress: MultiAddress;683 MultiAsset: MultiAsset;684 MultiAssetFilter: MultiAssetFilter;685 MultiAssetFilterV1: MultiAssetFilterV1;686 MultiAssetFilterV2: MultiAssetFilterV2;687 MultiAssets: MultiAssets;688 MultiAssetsV1: MultiAssetsV1;689 MultiAssetsV2: MultiAssetsV2;690 MultiAssetV0: MultiAssetV0;691 MultiAssetV1: MultiAssetV1;692 MultiAssetV2: MultiAssetV2;693 MultiDisputeStatementSet: MultiDisputeStatementSet;694 MultiLocation: MultiLocation;695 MultiLocationV0: MultiLocationV0;696 MultiLocationV1: MultiLocationV1;697 MultiLocationV2: MultiLocationV2;698 Multiplier: Multiplier;699 Multisig: Multisig;700 MultiSignature: MultiSignature;701 MultiSigner: MultiSigner;702 NetworkId: NetworkId;703 NetworkState: NetworkState;704 NetworkStatePeerset: NetworkStatePeerset;705 NetworkStatePeersetInfo: NetworkStatePeersetInfo;706 NewBidder: NewBidder;707 NextAuthority: NextAuthority;708 NextConfigDescriptor: NextConfigDescriptor;709 NextConfigDescriptorV1: NextConfigDescriptorV1;710 NodeRole: NodeRole;711 Nominations: Nominations;712 NominatorIndex: NominatorIndex;713 NominatorIndexCompact: NominatorIndexCompact;714 NotConnectedPeer: NotConnectedPeer;715 Null: Null;716 OffchainAccuracy: OffchainAccuracy;717 OffchainAccuracyCompact: OffchainAccuracyCompact;718 OffenceDetails: OffenceDetails;719 Offender: Offender;720 OpalRuntimeRuntime: OpalRuntimeRuntime;721 OpaqueCall: OpaqueCall;722 OpaqueMultiaddr: OpaqueMultiaddr;723 OpaqueNetworkState: OpaqueNetworkState;724 OpaquePeerId: OpaquePeerId;725 OpaqueTimeSlot: OpaqueTimeSlot;726 OpenTip: OpenTip;727 OpenTipFinderTo225: OpenTipFinderTo225;728 OpenTipTip: OpenTipTip;729 OpenTipTo225: OpenTipTo225;730 OperatingMode: OperatingMode;731 Origin: Origin;732 OriginCaller: OriginCaller;733 OriginKindV0: OriginKindV0;734 OriginKindV1: OriginKindV1;735 OriginKindV2: OriginKindV2;736 OrmlVestingModuleCall: OrmlVestingModuleCall;737 OrmlVestingModuleError: OrmlVestingModuleError;738 OrmlVestingModuleEvent: OrmlVestingModuleEvent;739 OrmlVestingVestingSchedule: OrmlVestingVestingSchedule;740 OutboundHrmpMessage: OutboundHrmpMessage;741 OutboundLaneData: OutboundLaneData;742 OutboundMessageFee: OutboundMessageFee;743 OutboundPayload: OutboundPayload;744 OutboundStatus: OutboundStatus;745 Outcome: Outcome;746 OverweightIndex: OverweightIndex;747 Owner: Owner;748 PageCounter: PageCounter;749 PageIndexData: PageIndexData;750 PalletBalancesAccountData: PalletBalancesAccountData;751 PalletBalancesBalanceLock: PalletBalancesBalanceLock;752 PalletBalancesCall: PalletBalancesCall;753 PalletBalancesError: PalletBalancesError;754 PalletBalancesEvent: PalletBalancesEvent;755 PalletBalancesReasons: PalletBalancesReasons;756 PalletBalancesReleases: PalletBalancesReleases;757 PalletBalancesReserveData: PalletBalancesReserveData;758 PalletCallMetadataLatest: PalletCallMetadataLatest;759 PalletCallMetadataV14: PalletCallMetadataV14;760 PalletCommonError: PalletCommonError;761 PalletCommonEvent: PalletCommonEvent;762 PalletConstantMetadataLatest: PalletConstantMetadataLatest;763 PalletConstantMetadataV14: PalletConstantMetadataV14;764 PalletErrorMetadataLatest: PalletErrorMetadataLatest;765 PalletErrorMetadataV14: PalletErrorMetadataV14;766 PalletEthereumCall: PalletEthereumCall;767 PalletEthereumError: PalletEthereumError;768 PalletEthereumEvent: PalletEthereumEvent;769 PalletEventMetadataLatest: PalletEventMetadataLatest;770 PalletEventMetadataV14: PalletEventMetadataV14;771 PalletEvmAccountBasicCrossAccountIdRepr: PalletEvmAccountBasicCrossAccountIdRepr;772 PalletEvmCall: PalletEvmCall;773 PalletEvmCoderSubstrateError: PalletEvmCoderSubstrateError;774 PalletEvmContractHelpersError: PalletEvmContractHelpersError;775 PalletEvmContractHelpersSponsoringModeT: PalletEvmContractHelpersSponsoringModeT;776 PalletEvmError: PalletEvmError;777 PalletEvmEvent: PalletEvmEvent;778 PalletEvmMigrationCall: PalletEvmMigrationCall;779 PalletEvmMigrationError: PalletEvmMigrationError;780 PalletFungibleError: PalletFungibleError;781 PalletId: PalletId;782 PalletInflationCall: PalletInflationCall;783 PalletMetadataLatest: PalletMetadataLatest;784 PalletMetadataV14: PalletMetadataV14;785 PalletNonfungibleError: PalletNonfungibleError;786 PalletNonfungibleItemData: PalletNonfungibleItemData;787 PalletRefungibleError: PalletRefungibleError;788 PalletRefungibleItemData: PalletRefungibleItemData;789 PalletsOrigin: PalletsOrigin;790 PalletStorageMetadataLatest: PalletStorageMetadataLatest;791 PalletStorageMetadataV14: PalletStorageMetadataV14;792 PalletStructureCall: PalletStructureCall;793 PalletStructureError: PalletStructureError;794 PalletStructureEvent: PalletStructureEvent;795 PalletSudoCall: PalletSudoCall;796 PalletSudoError: PalletSudoError;797 PalletSudoEvent: PalletSudoEvent;798 PalletTemplateTransactionPaymentCall: PalletTemplateTransactionPaymentCall;799 PalletTemplateTransactionPaymentChargeTransactionPayment: PalletTemplateTransactionPaymentChargeTransactionPayment;800 PalletTimestampCall: PalletTimestampCall;801 PalletTransactionPaymentReleases: PalletTransactionPaymentReleases;802 PalletTreasuryCall: PalletTreasuryCall;803 PalletTreasuryError: PalletTreasuryError;804 PalletTreasuryEvent: PalletTreasuryEvent;805 PalletTreasuryProposal: PalletTreasuryProposal;806 PalletUniqueCall: PalletUniqueCall;807 PalletUniqueError: PalletUniqueError;808 PalletUniqueRawEvent: PalletUniqueRawEvent;809 PalletVersion: PalletVersion;810 PalletXcmCall: PalletXcmCall;811 PalletXcmError: PalletXcmError;812 PalletXcmEvent: PalletXcmEvent;813 ParachainDispatchOrigin: ParachainDispatchOrigin;814 ParachainInherentData: ParachainInherentData;815 ParachainProposal: ParachainProposal;816 ParachainsInherentData: ParachainsInherentData;817 ParaGenesisArgs: ParaGenesisArgs;818 ParaId: ParaId;819 ParaInfo: ParaInfo;820 ParaLifecycle: ParaLifecycle;821 Parameter: Parameter;822 ParaPastCodeMeta: ParaPastCodeMeta;823 ParaScheduling: ParaScheduling;824 ParathreadClaim: ParathreadClaim;825 ParathreadClaimQueue: ParathreadClaimQueue;826 ParathreadEntry: ParathreadEntry;827 ParaValidatorIndex: ParaValidatorIndex;828 Pays: Pays;829 Peer: Peer;830 PeerEndpoint: PeerEndpoint;831 PeerEndpointAddr: PeerEndpointAddr;832 PeerInfo: PeerInfo;833 PeerPing: PeerPing;834 PendingChange: PendingChange;835 PendingPause: PendingPause;836 PendingResume: PendingResume;837 Perbill: Perbill;838 Percent: Percent;839 PerDispatchClassU32: PerDispatchClassU32;840 PerDispatchClassWeight: PerDispatchClassWeight;841 PerDispatchClassWeightsPerClass: PerDispatchClassWeightsPerClass;842 Period: Period;843 Permill: Permill;844 PermissionLatest: PermissionLatest;845 PermissionsV1: PermissionsV1;846 PermissionVersions: PermissionVersions;847 Perquintill: Perquintill;848 PersistedValidationData: PersistedValidationData;849 PerU16: PerU16;850 Phantom: Phantom;851 PhantomData: PhantomData;852 PhantomTypeUpDataStructs: PhantomTypeUpDataStructs;853 Phase: Phase;854 PhragmenScore: PhragmenScore;855 Points: Points;856 PolkadotCorePrimitivesInboundDownwardMessage: PolkadotCorePrimitivesInboundDownwardMessage;857 PolkadotCorePrimitivesInboundHrmpMessage: PolkadotCorePrimitivesInboundHrmpMessage;858 PolkadotCorePrimitivesOutboundHrmpMessage: PolkadotCorePrimitivesOutboundHrmpMessage;859 PolkadotParachainPrimitivesXcmpMessageFormat: PolkadotParachainPrimitivesXcmpMessageFormat;860 PolkadotPrimitivesV1AbridgedHostConfiguration: PolkadotPrimitivesV1AbridgedHostConfiguration;861 PolkadotPrimitivesV1AbridgedHrmpChannel: PolkadotPrimitivesV1AbridgedHrmpChannel;862 PolkadotPrimitivesV1PersistedValidationData: PolkadotPrimitivesV1PersistedValidationData;863 PolkadotPrimitivesV1UpgradeRestriction: PolkadotPrimitivesV1UpgradeRestriction;864 PortableType: PortableType;865 PortableTypeV14: PortableTypeV14;866 Precommits: Precommits;867 PrefabWasmModule: PrefabWasmModule;868 PrefixedStorageKey: PrefixedStorageKey;869 PreimageStatus: PreimageStatus;870 PreimageStatusAvailable: PreimageStatusAvailable;871 PreRuntime: PreRuntime;872 Prevotes: Prevotes;873 Priority: Priority;874 PriorLock: PriorLock;875 PropIndex: PropIndex;876 Proposal: Proposal;877 ProposalIndex: ProposalIndex;878 ProxyAnnouncement: ProxyAnnouncement;879 ProxyDefinition: ProxyDefinition;880 ProxyState: ProxyState;881 ProxyType: ProxyType;882 QueryId: QueryId;883 QueryStatus: QueryStatus;884 QueueConfigData: QueueConfigData;885 QueuedParathread: QueuedParathread;886 Randomness: Randomness;887 Raw: Raw;888 RawAuraPreDigest: RawAuraPreDigest;889 RawBabePreDigest: RawBabePreDigest;890 RawBabePreDigestCompat: RawBabePreDigestCompat;891 RawBabePreDigestPrimary: RawBabePreDigestPrimary;892 RawBabePreDigestPrimaryTo159: RawBabePreDigestPrimaryTo159;893 RawBabePreDigestSecondaryPlain: RawBabePreDigestSecondaryPlain;894 RawBabePreDigestSecondaryTo159: RawBabePreDigestSecondaryTo159;895 RawBabePreDigestSecondaryVRF: RawBabePreDigestSecondaryVRF;896 RawBabePreDigestTo159: RawBabePreDigestTo159;897 RawOrigin: RawOrigin;898 RawSolution: RawSolution;899 RawSolutionTo265: RawSolutionTo265;900 RawSolutionWith16: RawSolutionWith16;901 RawSolutionWith24: RawSolutionWith24;902 RawVRFOutput: RawVRFOutput;903 ReadProof: ReadProof;904 ReadySolution: ReadySolution;905 Reasons: Reasons;906 RecoveryConfig: RecoveryConfig;907 RefCount: RefCount;908 RefCountTo259: RefCountTo259;909 ReferendumIndex: ReferendumIndex;910 ReferendumInfo: ReferendumInfo;911 ReferendumInfoFinished: ReferendumInfoFinished;912 ReferendumInfoTo239: ReferendumInfoTo239;913 ReferendumStatus: ReferendumStatus;914 RegisteredParachainInfo: RegisteredParachainInfo;915 RegistrarIndex: RegistrarIndex;916 RegistrarInfo: RegistrarInfo;917 Registration: Registration;918 RegistrationJudgement: RegistrationJudgement;919 RegistrationTo198: RegistrationTo198;920 RelayBlockNumber: RelayBlockNumber;921 RelayChainBlockNumber: RelayChainBlockNumber;922 RelayChainHash: RelayChainHash;923 RelayerId: RelayerId;924 RelayHash: RelayHash;925 Releases: Releases;926 Remark: Remark;927 Renouncing: Renouncing;928 RentProjection: RentProjection;929 ReplacementTimes: ReplacementTimes;930 ReportedRoundStates: ReportedRoundStates;931 Reporter: Reporter;932 ReportIdOf: ReportIdOf;933 ReserveData: ReserveData;934 ReserveIdentifier: ReserveIdentifier;935 Response: Response;936 ResponseV0: ResponseV0;937 ResponseV1: ResponseV1;938 ResponseV2: ResponseV2;939 ResponseV2Error: ResponseV2Error;940 ResponseV2Result: ResponseV2Result;941 Retriable: Retriable;942 RewardDestination: RewardDestination;943 RewardPoint: RewardPoint;944 RoundSnapshot: RoundSnapshot;945 RoundState: RoundState;946 RpcMethods: RpcMethods;947 RuntimeDbWeight: RuntimeDbWeight;948 RuntimeDispatchInfo: RuntimeDispatchInfo;949 RuntimeVersion: RuntimeVersion;950 RuntimeVersionApi: RuntimeVersionApi;951 RuntimeVersionPartial: RuntimeVersionPartial;952 Schedule: Schedule;953 Scheduled: Scheduled;954 ScheduledTo254: ScheduledTo254;955 SchedulePeriod: SchedulePeriod;956 SchedulePriority: SchedulePriority;957 ScheduleTo212: ScheduleTo212;958 ScheduleTo258: ScheduleTo258;959 ScheduleTo264: ScheduleTo264;960 Scheduling: Scheduling;961 Seal: Seal;962 SealV0: SealV0;963 SeatHolder: SeatHolder;964 SeedOf: SeedOf;965 ServiceQuality: ServiceQuality;966 SessionIndex: SessionIndex;967 SessionInfo: SessionInfo;968 SessionInfoValidatorGroup: SessionInfoValidatorGroup;969 SessionKeys1: SessionKeys1;970 SessionKeys10: SessionKeys10;971 SessionKeys10B: SessionKeys10B;972 SessionKeys2: SessionKeys2;973 SessionKeys3: SessionKeys3;974 SessionKeys4: SessionKeys4;975 SessionKeys5: SessionKeys5;976 SessionKeys6: SessionKeys6;977 SessionKeys6B: SessionKeys6B;978 SessionKeys7: SessionKeys7;979 SessionKeys7B: SessionKeys7B;980 SessionKeys8: SessionKeys8;981 SessionKeys8B: SessionKeys8B;982 SessionKeys9: SessionKeys9;983 SessionKeys9B: SessionKeys9B;984 SetId: SetId;985 SetIndex: SetIndex;986 Si0Field: Si0Field;987 Si0LookupTypeId: Si0LookupTypeId;988 Si0Path: Si0Path;989 Si0Type: Si0Type;990 Si0TypeDef: Si0TypeDef;991 Si0TypeDefArray: Si0TypeDefArray;992 Si0TypeDefBitSequence: Si0TypeDefBitSequence;993 Si0TypeDefCompact: Si0TypeDefCompact;994 Si0TypeDefComposite: Si0TypeDefComposite;995 Si0TypeDefPhantom: Si0TypeDefPhantom;996 Si0TypeDefPrimitive: Si0TypeDefPrimitive;997 Si0TypeDefSequence: Si0TypeDefSequence;998 Si0TypeDefTuple: Si0TypeDefTuple;999 Si0TypeDefVariant: Si0TypeDefVariant;1000 Si0TypeParameter: Si0TypeParameter;1001 Si0Variant: Si0Variant;1002 Si1Field: Si1Field;1003 Si1LookupTypeId: Si1LookupTypeId;1004 Si1Path: Si1Path;1005 Si1Type: Si1Type;1006 Si1TypeDef: Si1TypeDef;1007 Si1TypeDefArray: Si1TypeDefArray;1008 Si1TypeDefBitSequence: Si1TypeDefBitSequence;1009 Si1TypeDefCompact: Si1TypeDefCompact;1010 Si1TypeDefComposite: Si1TypeDefComposite;1011 Si1TypeDefPrimitive: Si1TypeDefPrimitive;1012 Si1TypeDefSequence: Si1TypeDefSequence;1013 Si1TypeDefTuple: Si1TypeDefTuple;1014 Si1TypeDefVariant: Si1TypeDefVariant;1015 Si1TypeParameter: Si1TypeParameter;1016 Si1Variant: Si1Variant;1017 SiField: SiField;1018 Signature: Signature;1019 SignedAvailabilityBitfield: SignedAvailabilityBitfield;1020 SignedAvailabilityBitfields: SignedAvailabilityBitfields;1021 SignedBlock: SignedBlock;1022 SignedBlockWithJustification: SignedBlockWithJustification;1023 SignedBlockWithJustifications: SignedBlockWithJustifications;1024 SignedExtensionMetadataLatest: SignedExtensionMetadataLatest;1025 SignedExtensionMetadataV14: SignedExtensionMetadataV14;1026 SignedSubmission: SignedSubmission;1027 SignedSubmissionOf: SignedSubmissionOf;1028 SignedSubmissionTo276: SignedSubmissionTo276;1029 SignerPayload: SignerPayload;1030 SigningContext: SigningContext;1031 SiLookupTypeId: SiLookupTypeId;1032 SiPath: SiPath;1033 SiType: SiType;1034 SiTypeDef: SiTypeDef;1035 SiTypeDefArray: SiTypeDefArray;1036 SiTypeDefBitSequence: SiTypeDefBitSequence;1037 SiTypeDefCompact: SiTypeDefCompact;1038 SiTypeDefComposite: SiTypeDefComposite;1039 SiTypeDefPrimitive: SiTypeDefPrimitive;1040 SiTypeDefSequence: SiTypeDefSequence;1041 SiTypeDefTuple: SiTypeDefTuple;1042 SiTypeDefVariant: SiTypeDefVariant;1043 SiTypeParameter: SiTypeParameter;1044 SiVariant: SiVariant;1045 SlashingSpans: SlashingSpans;1046 SlashingSpansTo204: SlashingSpansTo204;1047 SlashJournalEntry: SlashJournalEntry;1048 Slot: Slot;1049 SlotNumber: SlotNumber;1050 SlotRange: SlotRange;1051 SlotRange10: SlotRange10;1052 SocietyJudgement: SocietyJudgement;1053 SocietyVote: SocietyVote;1054 SolutionOrSnapshotSize: SolutionOrSnapshotSize;1055 SolutionSupport: SolutionSupport;1056 SolutionSupports: SolutionSupports;1057 SpanIndex: SpanIndex;1058 SpanRecord: SpanRecord;1059 SpCoreEcdsaSignature: SpCoreEcdsaSignature;1060 SpCoreEd25519Signature: SpCoreEd25519Signature;1061 SpCoreSr25519Signature: SpCoreSr25519Signature;1062 SpecVersion: SpecVersion;1063 SpRuntimeArithmeticError: SpRuntimeArithmeticError;1064 SpRuntimeDigest: SpRuntimeDigest;1065 SpRuntimeDigestDigestItem: SpRuntimeDigestDigestItem;1066 SpRuntimeDispatchError: SpRuntimeDispatchError;1067 SpRuntimeModuleError: SpRuntimeModuleError;1068 SpRuntimeMultiSignature: SpRuntimeMultiSignature;1069 SpRuntimeTokenError: SpRuntimeTokenError;1070 SpTrieStorageProof: SpTrieStorageProof;1071 SpVersionRuntimeVersion: SpVersionRuntimeVersion;1072 Sr25519Signature: Sr25519Signature;1073 StakingLedger: StakingLedger;1074 StakingLedgerTo223: StakingLedgerTo223;1075 StakingLedgerTo240: StakingLedgerTo240;1076 Statement: Statement;1077 StatementKind: StatementKind;1078 StorageChangeSet: StorageChangeSet;1079 StorageData: StorageData;1080 StorageDeposit: StorageDeposit;1081 StorageEntryMetadataLatest: StorageEntryMetadataLatest;1082 StorageEntryMetadataV10: StorageEntryMetadataV10;1083 StorageEntryMetadataV11: StorageEntryMetadataV11;1084 StorageEntryMetadataV12: StorageEntryMetadataV12;1085 StorageEntryMetadataV13: StorageEntryMetadataV13;1086 StorageEntryMetadataV14: StorageEntryMetadataV14;1087 StorageEntryMetadataV9: StorageEntryMetadataV9;1088 StorageEntryModifierLatest: StorageEntryModifierLatest;1089 StorageEntryModifierV10: StorageEntryModifierV10;1090 StorageEntryModifierV11: StorageEntryModifierV11;1091 StorageEntryModifierV12: StorageEntryModifierV12;1092 StorageEntryModifierV13: StorageEntryModifierV13;1093 StorageEntryModifierV14: StorageEntryModifierV14;1094 StorageEntryModifierV9: StorageEntryModifierV9;1095 StorageEntryTypeLatest: StorageEntryTypeLatest;1096 StorageEntryTypeV10: StorageEntryTypeV10;1097 StorageEntryTypeV11: StorageEntryTypeV11;1098 StorageEntryTypeV12: StorageEntryTypeV12;1099 StorageEntryTypeV13: StorageEntryTypeV13;1100 StorageEntryTypeV14: StorageEntryTypeV14;1101 StorageEntryTypeV9: StorageEntryTypeV9;1102 StorageHasher: StorageHasher;1103 StorageHasherV10: StorageHasherV10;1104 StorageHasherV11: StorageHasherV11;1105 StorageHasherV12: StorageHasherV12;1106 StorageHasherV13: StorageHasherV13;1107 StorageHasherV14: StorageHasherV14;1108 StorageHasherV9: StorageHasherV9;1109 StorageKey: StorageKey;1110 StorageKind: StorageKind;1111 StorageMetadataV10: StorageMetadataV10;1112 StorageMetadataV11: StorageMetadataV11;1113 StorageMetadataV12: StorageMetadataV12;1114 StorageMetadataV13: StorageMetadataV13;1115 StorageMetadataV9: StorageMetadataV9;1116 StorageProof: StorageProof;1117 StoredPendingChange: StoredPendingChange;1118 StoredState: StoredState;1119 StrikeCount: StrikeCount;1120 SubId: SubId;1121 SubmissionIndicesOf: SubmissionIndicesOf;1122 Supports: Supports;1123 SyncState: SyncState;1124 SystemInherentData: SystemInherentData;1125 SystemOrigin: SystemOrigin;1126 Tally: Tally;1127 TaskAddress: TaskAddress;1128 TAssetBalance: TAssetBalance;1129 TAssetDepositBalance: TAssetDepositBalance;1130 Text: Text;1131 Timepoint: Timepoint;1132 TokenError: TokenError;1133 TombstoneContractInfo: TombstoneContractInfo;1134 TraceBlockResponse: TraceBlockResponse;1135 TraceError: TraceError;1136 TransactionInfo: TransactionInfo;1137 TransactionPriority: TransactionPriority;1138 TransactionStorageProof: TransactionStorageProof;1139 TransactionV0: TransactionV0;1140 TransactionV1: TransactionV1;1141 TransactionV2: TransactionV2;1142 TransactionValidityError: TransactionValidityError;1143 TransientValidationData: TransientValidationData;1144 TreasuryProposal: TreasuryProposal;1145 TrieId: TrieId;1146 TrieIndex: TrieIndex;1147 Type: Type;1148 u128: u128;1149 U128: U128;1150 u16: u16;1151 U16: U16;1152 u256: u256;1153 U256: U256;1154 u32: u32;1155 U32: U32;1156 U32F32: U32F32;1157 u64: u64;1158 U64: U64;1159 u8: u8;1160 U8: U8;1161 UnappliedSlash: UnappliedSlash;1162 UnappliedSlashOther: UnappliedSlashOther;1163 UncleEntryItem: UncleEntryItem;1164 UnknownTransaction: UnknownTransaction;1165 UnlockChunk: UnlockChunk;1166 UnrewardedRelayer: UnrewardedRelayer;1167 UnrewardedRelayersState: UnrewardedRelayersState;1168 UpDataStructsAccessMode: UpDataStructsAccessMode;1169 UpDataStructsCollection: UpDataStructsCollection;1170 UpDataStructsCollectionField: UpDataStructsCollectionField;1171 UpDataStructsCollectionLimits: UpDataStructsCollectionLimits;1172 UpDataStructsCollectionMode: UpDataStructsCollectionMode;1173 UpDataStructsCollectionStats: UpDataStructsCollectionStats;1174 UpDataStructsCreateCollectionData: UpDataStructsCreateCollectionData;1175 UpDataStructsCreateFungibleData: UpDataStructsCreateFungibleData;1176 UpDataStructsCreateItemData: UpDataStructsCreateItemData;1177 UpDataStructsCreateItemExData: UpDataStructsCreateItemExData;1178 UpDataStructsCreateNftData: UpDataStructsCreateNftData;1179 UpDataStructsCreateNftExData: UpDataStructsCreateNftExData;1180 UpDataStructsCreateReFungibleData: UpDataStructsCreateReFungibleData;1181 UpDataStructsCreateRefungibleExData: UpDataStructsCreateRefungibleExData;1182 UpDataStructsMetaUpdatePermission: UpDataStructsMetaUpdatePermission;1183 UpDataStructsNestingRule: UpDataStructsNestingRule;1184 UpDataStructsProperties: UpDataStructsProperties;1185 UpDataStructsProperty: UpDataStructsProperty;1186 UpDataStructsPropertyKeyPermission: UpDataStructsPropertyKeyPermission;1187 UpDataStructsPropertyPermission: UpDataStructsPropertyPermission;1188 UpDataStructsRpcCollection: UpDataStructsRpcCollection;1189 UpDataStructsSchemaVersion: UpDataStructsSchemaVersion;1190 UpDataStructsSponsoringRateLimit: UpDataStructsSponsoringRateLimit;1191 UpDataStructsSponsorshipState: UpDataStructsSponsorshipState;1192 UpgradeGoAhead: UpgradeGoAhead;1193 UpgradeRestriction: UpgradeRestriction;1194 UpwardMessage: UpwardMessage;1195 usize: usize;1196 USize: USize;1197 ValidationCode: ValidationCode;1198 ValidationCodeHash: ValidationCodeHash;1199 ValidationData: ValidationData;1200 ValidationDataType: ValidationDataType;1201 ValidationFunctionParams: ValidationFunctionParams;1202 ValidatorCount: ValidatorCount;1203 ValidatorId: ValidatorId;1204 ValidatorIdOf: ValidatorIdOf;1205 ValidatorIndex: ValidatorIndex;1206 ValidatorIndexCompact: ValidatorIndexCompact;1207 ValidatorPrefs: ValidatorPrefs;1208 ValidatorPrefsTo145: ValidatorPrefsTo145;1209 ValidatorPrefsTo196: ValidatorPrefsTo196;1210 ValidatorPrefsWithBlocked: ValidatorPrefsWithBlocked;1211 ValidatorPrefsWithCommission: ValidatorPrefsWithCommission;1212 ValidatorSetId: ValidatorSetId;1213 ValidatorSignature: ValidatorSignature;1214 ValidDisputeStatementKind: ValidDisputeStatementKind;1215 ValidityAttestation: ValidityAttestation;1216 VecInboundHrmpMessage: VecInboundHrmpMessage;1217 VersionedMultiAsset: VersionedMultiAsset;1218 VersionedMultiAssets: VersionedMultiAssets;1219 VersionedMultiLocation: VersionedMultiLocation;1220 VersionedResponse: VersionedResponse;1221 VersionedXcm: VersionedXcm;1222 VersionMigrationStage: VersionMigrationStage;1223 VestingInfo: VestingInfo;1224 VestingSchedule: VestingSchedule;1225 Vote: Vote;1226 VoteIndex: VoteIndex;1227 Voter: Voter;1228 VoterInfo: VoterInfo;1229 Votes: Votes;1230 VotesTo230: VotesTo230;1231 VoteThreshold: VoteThreshold;1232 VoteWeight: VoteWeight;1233 Voting: Voting;1234 VotingDelegating: VotingDelegating;1235 VotingDirect: VotingDirect;1236 VotingDirectVote: VotingDirectVote;1237 VouchingStatus: VouchingStatus;1238 VrfData: VrfData;1239 VrfOutput: VrfOutput;1240 VrfProof: VrfProof;1241 Weight: Weight;1242 WeightLimitV2: WeightLimitV2;1243 WeightMultiplier: WeightMultiplier;1244 WeightPerClass: WeightPerClass;1245 WeightToFeeCoefficient: WeightToFeeCoefficient;1246 WildFungibility: WildFungibility;1247 WildFungibilityV0: WildFungibilityV0;1248 WildFungibilityV1: WildFungibilityV1;1249 WildFungibilityV2: WildFungibilityV2;1250 WildMultiAsset: WildMultiAsset;1251 WildMultiAssetV1: WildMultiAssetV1;1252 WildMultiAssetV2: WildMultiAssetV2;1253 WinnersData: WinnersData;1254 WinnersData10: WinnersData10;1255 WinnersDataTuple: WinnersDataTuple;1256 WinnersDataTuple10: WinnersDataTuple10;1257 WinningData: WinningData;1258 WinningData10: WinningData10;1259 WinningDataEntry: WinningDataEntry;1260 WithdrawReasons: WithdrawReasons;1261 Xcm: Xcm;1262 XcmAssetId: XcmAssetId;1263 XcmDoubleEncoded: XcmDoubleEncoded;1264 XcmError: XcmError;1265 XcmErrorV0: XcmErrorV0;1266 XcmErrorV1: XcmErrorV1;1267 XcmErrorV2: XcmErrorV2;1268 XcmOrder: XcmOrder;1269 XcmOrderV0: XcmOrderV0;1270 XcmOrderV1: XcmOrderV1;1271 XcmOrderV2: XcmOrderV2;1272 XcmOrigin: XcmOrigin;1273 XcmOriginKind: XcmOriginKind;1274 XcmpMessageFormat: XcmpMessageFormat;1275 XcmV0: XcmV0;1276 XcmV0Junction: XcmV0Junction;1277 XcmV0JunctionBodyId: XcmV0JunctionBodyId;1278 XcmV0JunctionBodyPart: XcmV0JunctionBodyPart;1279 XcmV0JunctionNetworkId: XcmV0JunctionNetworkId;1280 XcmV0MultiAsset: XcmV0MultiAsset;1281 XcmV0MultiLocation: XcmV0MultiLocation;1282 XcmV0Order: XcmV0Order;1283 XcmV0OriginKind: XcmV0OriginKind;1284 XcmV0Response: XcmV0Response;1285 XcmV0Xcm: XcmV0Xcm;1286 XcmV1: XcmV1;1287 XcmV1Junction: XcmV1Junction;1288 XcmV1MultiAsset: XcmV1MultiAsset;1289 XcmV1MultiassetAssetId: XcmV1MultiassetAssetId;1290 XcmV1MultiassetAssetInstance: XcmV1MultiassetAssetInstance;1291 XcmV1MultiassetFungibility: XcmV1MultiassetFungibility;1292 XcmV1MultiassetMultiAssetFilter: XcmV1MultiassetMultiAssetFilter;1293 XcmV1MultiassetMultiAssets: XcmV1MultiassetMultiAssets;1294 XcmV1MultiassetWildFungibility: XcmV1MultiassetWildFungibility;1295 XcmV1MultiassetWildMultiAsset: XcmV1MultiassetWildMultiAsset;1296 XcmV1MultiLocation: XcmV1MultiLocation;1297 XcmV1MultilocationJunctions: XcmV1MultilocationJunctions;1298 XcmV1Order: XcmV1Order;1299 XcmV1Response: XcmV1Response;1300 XcmV1Xcm: XcmV1Xcm;1301 XcmV2: XcmV2;1302 XcmV2Instruction: XcmV2Instruction;1303 XcmV2Response: XcmV2Response;1304 XcmV2TraitsError: XcmV2TraitsError;1305 XcmV2TraitsOutcome: XcmV2TraitsOutcome;1306 XcmV2WeightLimit: XcmV2WeightLimit;1307 XcmV2Xcm: XcmV2Xcm;1308 XcmVersion: XcmVersion;1309 XcmVersionedMultiAssets: XcmVersionedMultiAssets;1310 XcmVersionedMultiLocation: XcmVersionedMultiLocation;1311 XcmVersionedXcm: XcmVersionedXcm;1312 } // InterfaceTypes1313} // declare moduletests/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.tsdiffbeforeafterboth--- a/tests/src/interfaces/unique/types.ts
+++ b/tests/src/interfaces/unique/types.ts
@@ -1,7 +1,7 @@
// Auto-generated via `yarn polkadot-types-from-defs`, do not edit
/* eslint-disable */
-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';
@@ -447,7 +447,7 @@
export interface FrameSupportPalletId extends U8aFixed {}
/** @name FrameSupportStorageBoundedBTreeSet */
-export interface FrameSupportStorageBoundedBTreeSet extends BTreeSet<u32> {}
+export interface FrameSupportStorageBoundedBTreeSet extends Vec<u32> {}
/** @name FrameSupportTokensMiscBalanceStatus */
export interface FrameSupportTokensMiscBalanceStatus extends Enum {
@@ -1086,8 +1086,8 @@
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 PalletInflationCall */
@@ -1118,8 +1118,8 @@
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 PalletRefungibleItemData */
@@ -1632,8 +1632,11 @@
readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';
}
-/** @name PhantomTypeUpDataStructs */
-export interface PhantomTypeUpDataStructs extends Vec<Lookup326> {}
+/** @name PhantomTypeUpDataStructsRpcCollection */
+export interface PhantomTypeUpDataStructsRpcCollection extends Vec<Lookup330> {}
+
+/** @name PhantomTypeUpDataStructsTokenData */
+export interface PhantomTypeUpDataStructsTokenData extends Vec<Lookup326> {}
/** @name PolkadotCorePrimitivesInboundDownwardMessage */
export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {
@@ -1782,7 +1785,7 @@
/** @name SpTrieStorageProof */
export interface SpTrieStorageProof extends Struct {
- readonly trieNodes: BTreeSet<Bytes>;
+ readonly trieNodes: Vec<Bytes>;
}
/** @name SpVersionRuntimeVersion */
@@ -1908,12 +1911,14 @@
export interface UpDataStructsCreateNftData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
}
/** @name UpDataStructsCreateNftExData */
export interface UpDataStructsCreateNftExData extends Struct {
readonly constData: Bytes;
readonly variableData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
}
@@ -1968,14 +1973,10 @@
}
/** @name UpDataStructsPropertyPermission */
-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 UpDataStructsRpcCollection */
@@ -2021,6 +2022,13 @@
readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
}
+/** @name UpDataStructsTokenData */
+export interface UpDataStructsTokenData extends Struct {
+ readonly constData: Bytes;
+ readonly properties: Vec<UpDataStructsProperty>;
+ readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
+}
+
/** @name XcmDoubleEncoded */
export interface XcmDoubleEncoded extends Struct {
readonly encoded: Bytes;
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';