difftreelog
Merge pull request #383 from UniqueNetwork/test/nesting-admin
in: master
11 files changed
pallets/common/src/benchmarking.rsdiffbeforeafterboth--- a/pallets/common/src/benchmarking.rs
+++ b/pallets/common/src/benchmarking.rs
@@ -96,7 +96,7 @@
permissions: Some(CollectionPermissions {
nesting: Some(NestingPermissions {
token_owner: false,
- admin: false,
+ collection_admin: false,
restricted: None,
permissive: true,
}),
pallets/nonfungible/src/lib.rsdiffbeforeafterboth--- a/pallets/nonfungible/src/lib.rs
+++ b/pallets/nonfungible/src/lib.rs
@@ -1008,7 +1008,7 @@
nesting_budget,
)? {
// Pass
- } else if nesting.admin && handle.is_owner_or_admin(&sender) {
+ } else if nesting.collection_admin && handle.is_owner_or_admin(&sender) {
// Pass
} else {
fail!(<CommonError<T>>::UserIsNotAllowedToNest);
pallets/proxy-rmrk-core/src/lib.rsdiffbeforeafterboth--- a/pallets/proxy-rmrk-core/src/lib.rs
+++ b/pallets/proxy-rmrk-core/src/lib.rs
@@ -199,7 +199,7 @@
permissions: Some(CollectionPermissions {
nesting: Some(NestingPermissions {
token_owner: true,
- admin: false,
+ collection_admin: false,
restricted: None,
permissive: false,
primitives/data-structs/src/lib.rsdiffbeforeafterboth--- a/primitives/data-structs/src/lib.rs
+++ b/primitives/data-structs/src/lib.rs
@@ -447,7 +447,7 @@
pub fn nesting(&self) -> &NestingPermissions {
static DEFAULT: NestingPermissions = NestingPermissions {
token_owner: false,
- admin: false,
+ collection_admin: false,
restricted: None,
permissive: false,
@@ -490,7 +490,7 @@
/// Owner of token can nest tokens under it
pub token_owner: bool,
/// Admin of token collection can nest tokens under token
- pub admin: bool,
+ pub collection_admin: bool,
/// If set - only tokens from specified collections can be nested
pub restricted: Option<OwnerRestrictedSet>,
tests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -458,6 +458,7 @@
ResourceNotPending: AugmentedError<ApiType>;
RmrkPropertyKeyIsTooLong: AugmentedError<ApiType>;
RmrkPropertyValueIsTooLong: AugmentedError<ApiType>;
+ UnableToDecodeRmrkData: AugmentedError<ApiType>;
/**
* Generic error
**/
tests/src/interfaces/augment-api-query.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -417,7 +417,6 @@
};
rmrkCore: {
collectionIndex: AugmentedQuery<ApiType, () => Observable<u32>, []> & QueryableStorageEntry<ApiType, []>;
- rmrkInernalCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
uniqueCollectionId: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
/**
* Generic query
tests/src/interfaces/augment-api-tx.tsdiffbeforeafterboth--- a/tests/src/interfaces/augment-api-tx.ts
+++ b/tests/src/interfaces/augment-api-tx.ts
@@ -5,7 +5,7 @@
import type { Bytes, Compact, Option, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';
import type { AnyNumber, IMethod, ITuple } from '@polkadot/types-codec/types';
import type { AccountId32, Call, H160, H256, MultiAddress, Perbill, Permill } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, FrameSupportScheduleMaybeHashed, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsPartPartType, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, FrameSupportScheduleMaybeHashed, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, RmrkTraitsNftAccountIdOrCollectionNftTuple, RmrkTraitsPartPartType, RmrkTraitsResourceBasicResource, RmrkTraitsResourceComposableResource, RmrkTraitsResourceResourceTypes, RmrkTraitsResourceSlotResource, RmrkTraitsTheme, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionPermissions, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsProperty, UpDataStructsPropertyKeyPermission, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
declare module '@polkadot/api-base/types/submittable' {
export interface AugmentedSubmittables<ApiType extends ApiTypes> {
@@ -373,7 +373,7 @@
/**
* Create composable resource
**/
- addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resourceId: Bytes | string | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, Bytes, RmrkTraitsResourceComposableResource]>;
+ addComposableResource: AugmentedSubmittable<(rmrkCollectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, resource: RmrkTraitsResourceComposableResource | { parts?: any; base?: any; src?: any; metadata?: any; license?: any; thumb?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, RmrkTraitsResourceComposableResource]>;
/**
* Create slot resource
**/
@@ -381,7 +381,7 @@
/**
* burn nft
**/
- burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32]>;
+ burnNft: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, nftId: u32 | AnyNumber | Uint8Array, maxBurns: u32 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, u32, u32]>;
/**
* Change the issuer of a collection
*
@@ -415,7 +415,7 @@
* - `metadata`: Arbitrary data about an nft, e.g. IPFS hash
* - `transferable`: Ability to transfer this NFT
**/
- mintNft: AugmentedSubmittable<(owner: AccountId32 | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option<AccountId32> | null | object | string | Uint8Array, royaltyAmount: Option<Permill> | null | object | string | Uint8Array, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, u32, Option<AccountId32>, Option<Permill>, Bytes, bool]>;
+ mintNft: AugmentedSubmittable<(owner: AccountId32 | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, recipient: Option<AccountId32> | null | object | string | Uint8Array, royaltyAmount: Option<Permill> | null | object | string | Uint8Array, metadata: Bytes | string | Uint8Array, transferable: bool | boolean | Uint8Array, resources: Option<Vec<RmrkTraitsResourceResourceTypes>> | null | object | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [AccountId32, u32, Option<AccountId32>, Option<Permill>, Bytes, bool, Option<Vec<RmrkTraitsResourceResourceTypes>>]>;
/**
* Rejects an NFT sent from another account to self or owned NFT
*
tests/src/interfaces/default/types.tsdiffbeforeafterboth--- a/tests/src/interfaces/default/types.ts
+++ b/tests/src/interfaces/default/types.ts
@@ -1214,11 +1214,13 @@
readonly royaltyAmount: Option<Permill>;
readonly metadata: Bytes;
readonly transferable: bool;
+ readonly resources: Option<Vec<RmrkTraitsResourceResourceTypes>>;
} & Struct;
readonly isBurnNft: boolean;
readonly asBurnNft: {
readonly collectionId: u32;
readonly nftId: u32;
+ readonly maxBurns: u32;
} & Struct;
readonly isSend: boolean;
readonly asSend: {
@@ -1272,7 +1274,6 @@
readonly asAddComposableResource: {
readonly rmrkCollectionId: u32;
readonly nftId: u32;
- readonly resourceId: Bytes;
readonly resource: RmrkTraitsResourceComposableResource;
} & Struct;
readonly isAddSlotResource: boolean;
@@ -1296,6 +1297,7 @@
readonly isNftTypeEncodeError: boolean;
readonly isRmrkPropertyKeyIsTooLong: boolean;
readonly isRmrkPropertyValueIsTooLong: boolean;
+ readonly isUnableToDecodeRmrkData: boolean;
readonly isCollectionNotEmpty: boolean;
readonly isNoAvailableCollectionId: boolean;
readonly isNoAvailableNftId: boolean;
@@ -1308,7 +1310,7 @@
readonly isCannotAcceptNonOwnedNft: boolean;
readonly isCannotRejectNonOwnedNft: boolean;
readonly isResourceNotPending: boolean;
- readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'ResourceNotPending';
+ readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'ResourceNotPending';
}
/** @name PalletRmrkCoreEvent */
@@ -2427,7 +2429,7 @@
/** @name UpDataStructsNestingPermissions */
export interface UpDataStructsNestingPermissions extends Struct {
readonly tokenOwner: bool;
- readonly admin: bool;
+ readonly collectionAdmin: bool;
readonly restricted: Option<UpDataStructsOwnerRestrictedSet>;
readonly permissive: bool;
}
tests/src/interfaces/lookup.tsdiffbeforeafterboth1432 **/1432 **/1433 UpDataStructsNestingPermissions: {1433 UpDataStructsNestingPermissions: {1434 tokenOwner: 'bool',1434 tokenOwner: 'bool',1435 admin: 'bool',1435 collectionAdmin: 'bool',1436 restricted: 'Option<UpDataStructsOwnerRestrictedSet>',1436 restricted: 'Option<UpDataStructsOwnerRestrictedSet>',1437 permissive: 'bool'1437 permissive: 'bool'1438 },1438 },1593 royaltyAmount: 'Option<Permill>',1593 royaltyAmount: 'Option<Permill>',1594 metadata: 'Bytes',1594 metadata: 'Bytes',1595 transferable: 'bool',1595 transferable: 'bool',1596 resources: 'Option<Vec<RmrkTraitsResourceResourceTypes>>',1596 },1597 },1597 burn_nft: {1598 burn_nft: {1598 collectionId: 'u32',1599 collectionId: 'u32',1599 nftId: 'u32',1600 nftId: 'u32',1601 maxBurns: 'u32',1600 },1602 },1601 send: {1603 send: {1602 rmrkCollectionId: 'u32',1604 rmrkCollectionId: 'u32',1641 add_composable_resource: {1643 add_composable_resource: {1642 rmrkCollectionId: 'u32',1644 rmrkCollectionId: 'u32',1643 nftId: 'u32',1645 nftId: 'u32',1644 resourceId: 'Bytes',1645 resource: 'RmrkTraitsResourceComposableResource',1646 resource: 'RmrkTraitsResourceComposableResource',1646 },1647 },1647 add_slot_resource: {1648 add_slot_resource: {1656 }1657 }1657 }1658 }1658 },1659 },1659 /**1660 /**1660 * Lookup215: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>1661 * Lookup217: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1661 **/1662 **/1662 RmrkTraitsNftAccountIdOrCollectionNftTuple: {1663 RmrkTraitsResourceResourceTypes: {1663 _enum: {1664 _enum: {1664 AccountId: 'AccountId32',1665 Basic: 'RmrkTraitsResourceBasicResource',1666 Composable: 'RmrkTraitsResourceComposableResource',1665 CollectionAndNftTuple: '(u32,u32)'1667 Slot: 'RmrkTraitsResourceSlotResource'1666 }1668 }1667 },1669 },1668 /**1670 /**1674 license: 'Option<Bytes>',1676 license: 'Option<Bytes>',1675 thumb: 'Option<Bytes>'1677 thumb: 'Option<Bytes>'1676 },1678 },1677 /**1679 /**1678 * Lookup222: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1680 * Lookup221: rmrk_traits::resource::ComposableResource<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1679 **/1681 **/1680 RmrkTraitsResourceComposableResource: {1682 RmrkTraitsResourceComposableResource: {1681 parts: 'Vec<u32>',1683 parts: 'Vec<u32>',1682 base: 'u32',1684 base: 'u32',1685 license: 'Option<Bytes>',1687 license: 'Option<Bytes>',1686 thumb: 'Option<Bytes>'1688 thumb: 'Option<Bytes>'1687 },1689 },1688 /**1690 /**1689 * Lookup224: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1691 * Lookup222: rmrk_traits::resource::SlotResource<frame_support::storage::bounded_vec::BoundedVec<T, S>>1690 **/1692 **/1691 RmrkTraitsResourceSlotResource: {1693 RmrkTraitsResourceSlotResource: {1692 base: 'u32',1694 base: 'u32',1693 src: 'Option<Bytes>',1695 src: 'Option<Bytes>',1696 license: 'Option<Bytes>',1698 license: 'Option<Bytes>',1697 thumb: 'Option<Bytes>'1699 thumb: 'Option<Bytes>'1698 },1700 },1701 /**1702 * Lookup224: rmrk_traits::nft::AccountIdOrCollectionNftTuple<sp_core::crypto::AccountId32>1703 **/1704 RmrkTraitsNftAccountIdOrCollectionNftTuple: {1705 _enum: {1706 AccountId: 'AccountId32',1707 CollectionAndNftTuple: '(u32,u32)'1708 }1709 },1699 /**1710 /**1700 * Lookup225: pallet_rmrk_equip::pallet::Call<T>1711 * Lookup228: pallet_rmrk_equip::pallet::Call<T>1701 **/1712 **/1702 PalletRmrkEquipCall: {1713 PalletRmrkEquipCall: {1703 _enum: {1714 _enum: {1704 create_base: {1715 create_base: {1712 }1723 }1713 }1724 }1714 },1725 },1715 /**1726 /**1716 * Lookup227: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1727 * Lookup230: rmrk_traits::part::PartType<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1717 **/1728 **/1718 RmrkTraitsPartPartType: {1729 RmrkTraitsPartPartType: {1719 _enum: {1730 _enum: {1720 FixedPart: 'RmrkTraitsPartFixedPart',1731 FixedPart: 'RmrkTraitsPartFixedPart',1721 SlotPart: 'RmrkTraitsPartSlotPart'1732 SlotPart: 'RmrkTraitsPartSlotPart'1722 }1733 }1723 },1734 },1724 /**1735 /**1725 * Lookup229: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>1736 * Lookup232: rmrk_traits::part::FixedPart<frame_support::storage::bounded_vec::BoundedVec<T, S>>1726 **/1737 **/1727 RmrkTraitsPartFixedPart: {1738 RmrkTraitsPartFixedPart: {1728 id: 'u32',1739 id: 'u32',1729 z: 'u32',1740 z: 'u32',1730 src: 'Bytes'1741 src: 'Bytes'1731 },1742 },1732 /**1743 /**1733 * Lookup230: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1744 * Lookup233: rmrk_traits::part::SlotPart<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>1734 **/1745 **/1735 RmrkTraitsPartSlotPart: {1746 RmrkTraitsPartSlotPart: {1736 id: 'u32',1747 id: 'u32',1737 equippable: 'RmrkTraitsPartEquippableList',1748 equippable: 'RmrkTraitsPartEquippableList',1738 src: 'Bytes',1749 src: 'Bytes',1739 z: 'u32'1750 z: 'u32'1740 },1751 },1741 /**1752 /**1742 * Lookup231: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>1753 * Lookup234: rmrk_traits::part::EquippableList<frame_support::storage::bounded_vec::BoundedVec<T, S>>1743 **/1754 **/1744 RmrkTraitsPartEquippableList: {1755 RmrkTraitsPartEquippableList: {1745 _enum: {1756 _enum: {1746 All: 'Null',1757 All: 'Null',1747 Empty: 'Null',1758 Empty: 'Null',1748 Custom: 'Vec<u32>'1759 Custom: 'Vec<u32>'1749 }1760 }1750 },1761 },1751 /**1762 /**1752 * Lookup233: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, PropertyList>1763 * Lookup236: rmrk_traits::theme::Theme<frame_support::storage::bounded_vec::BoundedVec<T, S>, PropertyList>1753 **/1764 **/1754 RmrkTraitsTheme: {1765 RmrkTraitsTheme: {1755 name: 'Bytes',1766 name: 'Bytes',1756 properties: 'Vec<RmrkTraitsThemeThemeProperty>',1767 properties: 'Vec<RmrkTraitsThemeThemeProperty>',1757 inherit: 'bool'1768 inherit: 'bool'1758 },1769 },1759 /**1770 /**1760 * Lookup235: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>1771 * Lookup238: rmrk_traits::theme::ThemeProperty<frame_support::storage::bounded_vec::BoundedVec<T, S>>1761 **/1772 **/1762 RmrkTraitsThemeThemeProperty: {1773 RmrkTraitsThemeThemeProperty: {1763 key: 'Bytes',1774 key: 'Bytes',1764 value: 'Bytes'1775 value: 'Bytes'1765 },1776 },1766 /**1777 /**1767 * Lookup236: pallet_evm::pallet::Call<T>1778 * Lookup239: pallet_evm::pallet::Call<T>1768 **/1779 **/1769 PalletEvmCall: {1780 PalletEvmCall: {1770 _enum: {1781 _enum: {1771 withdraw: {1782 withdraw: {1806 }1817 }1807 }1818 }1808 },1819 },1809 /**1820 /**1810 * Lookup242: pallet_ethereum::pallet::Call<T>1821 * Lookup245: pallet_ethereum::pallet::Call<T>1811 **/1822 **/1812 PalletEthereumCall: {1823 PalletEthereumCall: {1813 _enum: {1824 _enum: {1814 transact: {1825 transact: {1815 transaction: 'EthereumTransactionTransactionV2'1826 transaction: 'EthereumTransactionTransactionV2'1816 }1827 }1817 }1828 }1818 },1829 },1819 /**1830 /**1820 * Lookup243: ethereum::transaction::TransactionV21831 * Lookup246: ethereum::transaction::TransactionV21821 **/1832 **/1822 EthereumTransactionTransactionV2: {1833 EthereumTransactionTransactionV2: {1823 _enum: {1834 _enum: {1824 Legacy: 'EthereumTransactionLegacyTransaction',1835 Legacy: 'EthereumTransactionLegacyTransaction',1825 EIP2930: 'EthereumTransactionEip2930Transaction',1836 EIP2930: 'EthereumTransactionEip2930Transaction',1826 EIP1559: 'EthereumTransactionEip1559Transaction'1837 EIP1559: 'EthereumTransactionEip1559Transaction'1827 }1838 }1828 },1839 },1829 /**1840 /**1830 * Lookup244: ethereum::transaction::LegacyTransaction1841 * Lookup247: ethereum::transaction::LegacyTransaction1831 **/1842 **/1832 EthereumTransactionLegacyTransaction: {1843 EthereumTransactionLegacyTransaction: {1833 nonce: 'U256',1844 nonce: 'U256',1834 gasPrice: 'U256',1845 gasPrice: 'U256',1838 input: 'Bytes',1849 input: 'Bytes',1839 signature: 'EthereumTransactionTransactionSignature'1850 signature: 'EthereumTransactionTransactionSignature'1840 },1851 },1841 /**1852 /**1842 * Lookup245: ethereum::transaction::TransactionAction1853 * Lookup248: ethereum::transaction::TransactionAction1843 **/1854 **/1844 EthereumTransactionTransactionAction: {1855 EthereumTransactionTransactionAction: {1845 _enum: {1856 _enum: {1846 Call: 'H160',1857 Call: 'H160',1847 Create: 'Null'1858 Create: 'Null'1848 }1859 }1849 },1860 },1850 /**1861 /**1851 * Lookup246: ethereum::transaction::TransactionSignature1862 * Lookup249: ethereum::transaction::TransactionSignature1852 **/1863 **/1853 EthereumTransactionTransactionSignature: {1864 EthereumTransactionTransactionSignature: {1854 v: 'u64',1865 v: 'u64',1855 r: 'H256',1866 r: 'H256',1856 s: 'H256'1867 s: 'H256'1857 },1868 },1858 /**1869 /**1859 * Lookup248: ethereum::transaction::EIP2930Transaction1870 * Lookup251: ethereum::transaction::EIP2930Transaction1860 **/1871 **/1861 EthereumTransactionEip2930Transaction: {1872 EthereumTransactionEip2930Transaction: {1862 chainId: 'u64',1873 chainId: 'u64',1863 nonce: 'U256',1874 nonce: 'U256',1871 r: 'H256',1882 r: 'H256',1872 s: 'H256'1883 s: 'H256'1873 },1884 },1874 /**1885 /**1875 * Lookup250: ethereum::transaction::AccessListItem1886 * Lookup253: ethereum::transaction::AccessListItem1876 **/1887 **/1877 EthereumTransactionAccessListItem: {1888 EthereumTransactionAccessListItem: {1878 address: 'H160',1889 address: 'H160',1879 storageKeys: 'Vec<H256>'1890 storageKeys: 'Vec<H256>'1880 },1891 },1881 /**1892 /**1882 * Lookup251: ethereum::transaction::EIP1559Transaction1893 * Lookup254: ethereum::transaction::EIP1559Transaction1883 **/1894 **/1884 EthereumTransactionEip1559Transaction: {1895 EthereumTransactionEip1559Transaction: {1885 chainId: 'u64',1896 chainId: 'u64',1886 nonce: 'U256',1897 nonce: 'U256',1895 r: 'H256',1906 r: 'H256',1896 s: 'H256'1907 s: 'H256'1897 },1908 },1898 /**1909 /**1899 * Lookup252: pallet_evm_migration::pallet::Call<T>1910 * Lookup255: pallet_evm_migration::pallet::Call<T>1900 **/1911 **/1901 PalletEvmMigrationCall: {1912 PalletEvmMigrationCall: {1902 _enum: {1913 _enum: {1903 begin: {1914 begin: {1913 }1924 }1914 }1925 }1915 },1926 },1916 /**1927 /**1917 * Lookup255: pallet_sudo::pallet::Event<T>1928 * Lookup258: pallet_sudo::pallet::Event<T>1918 **/1929 **/1919 PalletSudoEvent: {1930 PalletSudoEvent: {1920 _enum: {1931 _enum: {1921 Sudid: {1932 Sudid: {1929 }1940 }1930 }1941 }1931 },1942 },1932 /**1943 /**1933 * Lookup257: sp_runtime::DispatchError1944 * Lookup260: sp_runtime::DispatchError1934 **/1945 **/1935 SpRuntimeDispatchError: {1946 SpRuntimeDispatchError: {1936 _enum: {1947 _enum: {1937 Other: 'Null',1948 Other: 'Null',1946 Transactional: 'SpRuntimeTransactionalError'1957 Transactional: 'SpRuntimeTransactionalError'1947 }1958 }1948 },1959 },1949 /**1960 /**1950 * Lookup258: sp_runtime::ModuleError1961 * Lookup261: sp_runtime::ModuleError1951 **/1962 **/1952 SpRuntimeModuleError: {1963 SpRuntimeModuleError: {1953 index: 'u8',1964 index: 'u8',1954 error: '[u8;4]'1965 error: '[u8;4]'1955 },1966 },1956 /**1967 /**1957 * Lookup259: sp_runtime::TokenError1968 * Lookup262: sp_runtime::TokenError1958 **/1969 **/1959 SpRuntimeTokenError: {1970 SpRuntimeTokenError: {1960 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']1971 _enum: ['NoFunds', 'WouldDie', 'BelowMinimum', 'CannotCreate', 'UnknownAsset', 'Frozen', 'Unsupported']1961 },1972 },1962 /**1973 /**1963 * Lookup260: sp_runtime::ArithmeticError1974 * Lookup263: sp_runtime::ArithmeticError1964 **/1975 **/1965 SpRuntimeArithmeticError: {1976 SpRuntimeArithmeticError: {1966 _enum: ['Underflow', 'Overflow', 'DivisionByZero']1977 _enum: ['Underflow', 'Overflow', 'DivisionByZero']1967 },1978 },1968 /**1979 /**1969 * Lookup261: sp_runtime::TransactionalError1980 * Lookup264: sp_runtime::TransactionalError1970 **/1981 **/1971 SpRuntimeTransactionalError: {1982 SpRuntimeTransactionalError: {1972 _enum: ['LimitReached', 'NoLayer']1983 _enum: ['LimitReached', 'NoLayer']1973 },1984 },1974 /**1985 /**1975 * Lookup262: pallet_sudo::pallet::Error<T>1986 * Lookup265: pallet_sudo::pallet::Error<T>1976 **/1987 **/1977 PalletSudoError: {1988 PalletSudoError: {1978 _enum: ['RequireSudo']1989 _enum: ['RequireSudo']1979 },1990 },1980 /**1991 /**1981 * Lookup263: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>1992 * Lookup266: frame_system::AccountInfo<Index, pallet_balances::AccountData<Balance>>1982 **/1993 **/1983 FrameSystemAccountInfo: {1994 FrameSystemAccountInfo: {1984 nonce: 'u32',1995 nonce: 'u32',1985 consumers: 'u32',1996 consumers: 'u32',1986 providers: 'u32',1997 providers: 'u32',1987 sufficients: 'u32',1998 sufficients: 'u32',1988 data: 'PalletBalancesAccountData'1999 data: 'PalletBalancesAccountData'1989 },2000 },1990 /**2001 /**1991 * Lookup264: frame_support::weights::PerDispatchClass<T>2002 * Lookup267: frame_support::weights::PerDispatchClass<T>1992 **/2003 **/1993 FrameSupportWeightsPerDispatchClassU64: {2004 FrameSupportWeightsPerDispatchClassU64: {1994 normal: 'u64',2005 normal: 'u64',1995 operational: 'u64',2006 operational: 'u64',1996 mandatory: 'u64'2007 mandatory: 'u64'1997 },2008 },1998 /**2009 /**1999 * Lookup265: sp_runtime::generic::digest::Digest2010 * Lookup268: sp_runtime::generic::digest::Digest2000 **/2011 **/2001 SpRuntimeDigest: {2012 SpRuntimeDigest: {2002 logs: 'Vec<SpRuntimeDigestDigestItem>'2013 logs: 'Vec<SpRuntimeDigestDigestItem>'2003 },2014 },2004 /**2015 /**2005 * Lookup267: sp_runtime::generic::digest::DigestItem2016 * Lookup270: sp_runtime::generic::digest::DigestItem2006 **/2017 **/2007 SpRuntimeDigestDigestItem: {2018 SpRuntimeDigestDigestItem: {2008 _enum: {2019 _enum: {2009 Other: 'Bytes',2020 Other: 'Bytes',2017 RuntimeEnvironmentUpdated: 'Null'2028 RuntimeEnvironmentUpdated: 'Null'2018 }2029 }2019 },2030 },2020 /**2031 /**2021 * Lookup269: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>2032 * Lookup272: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>2022 **/2033 **/2023 FrameSystemEventRecord: {2034 FrameSystemEventRecord: {2024 phase: 'FrameSystemPhase',2035 phase: 'FrameSystemPhase',2025 event: 'Event',2036 event: 'Event',2026 topics: 'Vec<H256>'2037 topics: 'Vec<H256>'2027 },2038 },2028 /**2039 /**2029 * Lookup271: frame_system::pallet::Event<T>2040 * Lookup274: frame_system::pallet::Event<T>2030 **/2041 **/2031 FrameSystemEvent: {2042 FrameSystemEvent: {2032 _enum: {2043 _enum: {2033 ExtrinsicSuccess: {2044 ExtrinsicSuccess: {2053 }2064 }2054 }2065 }2055 },2066 },2056 /**2067 /**2057 * Lookup272: frame_support::weights::DispatchInfo2068 * Lookup275: frame_support::weights::DispatchInfo2058 **/2069 **/2059 FrameSupportWeightsDispatchInfo: {2070 FrameSupportWeightsDispatchInfo: {2060 weight: 'u64',2071 weight: 'u64',2061 class: 'FrameSupportWeightsDispatchClass',2072 class: 'FrameSupportWeightsDispatchClass',2062 paysFee: 'FrameSupportWeightsPays'2073 paysFee: 'FrameSupportWeightsPays'2063 },2074 },2064 /**2075 /**2065 * Lookup273: frame_support::weights::DispatchClass2076 * Lookup276: frame_support::weights::DispatchClass2066 **/2077 **/2067 FrameSupportWeightsDispatchClass: {2078 FrameSupportWeightsDispatchClass: {2068 _enum: ['Normal', 'Operational', 'Mandatory']2079 _enum: ['Normal', 'Operational', 'Mandatory']2069 },2080 },2070 /**2081 /**2071 * Lookup274: frame_support::weights::Pays2082 * Lookup277: frame_support::weights::Pays2072 **/2083 **/2073 FrameSupportWeightsPays: {2084 FrameSupportWeightsPays: {2074 _enum: ['Yes', 'No']2085 _enum: ['Yes', 'No']2075 },2086 },2076 /**2087 /**2077 * Lookup275: orml_vesting::module::Event<T>2088 * Lookup278: orml_vesting::module::Event<T>2078 **/2089 **/2079 OrmlVestingModuleEvent: {2090 OrmlVestingModuleEvent: {2080 _enum: {2091 _enum: {2081 VestingScheduleAdded: {2092 VestingScheduleAdded: {2092 }2103 }2093 }2104 }2094 },2105 },2095 /**2106 /**2096 * Lookup276: cumulus_pallet_xcmp_queue::pallet::Event<T>2107 * Lookup279: cumulus_pallet_xcmp_queue::pallet::Event<T>2097 **/2108 **/2098 CumulusPalletXcmpQueueEvent: {2109 CumulusPalletXcmpQueueEvent: {2099 _enum: {2110 _enum: {2100 Success: 'Option<H256>',2111 Success: 'Option<H256>',2107 OverweightServiced: '(u64,u64)'2118 OverweightServiced: '(u64,u64)'2108 }2119 }2109 },2120 },2110 /**2121 /**2111 * Lookup277: pallet_xcm::pallet::Event<T>2122 * Lookup280: pallet_xcm::pallet::Event<T>2112 **/2123 **/2113 PalletXcmEvent: {2124 PalletXcmEvent: {2114 _enum: {2125 _enum: {2115 Attempted: 'XcmV2TraitsOutcome',2126 Attempted: 'XcmV2TraitsOutcome',2130 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'2141 NotifyTargetMigrationFail: '(XcmVersionedMultiLocation,u64)'2131 }2142 }2132 },2143 },2133 /**2144 /**2134 * Lookup278: xcm::v2::traits::Outcome2145 * Lookup281: xcm::v2::traits::Outcome2135 **/2146 **/2136 XcmV2TraitsOutcome: {2147 XcmV2TraitsOutcome: {2137 _enum: {2148 _enum: {2138 Complete: 'u64',2149 Complete: 'u64',2139 Incomplete: '(u64,XcmV2TraitsError)',2150 Incomplete: '(u64,XcmV2TraitsError)',2140 Error: 'XcmV2TraitsError'2151 Error: 'XcmV2TraitsError'2141 }2152 }2142 },2153 },2143 /**2154 /**2144 * Lookup280: cumulus_pallet_xcm::pallet::Event<T>2155 * Lookup283: cumulus_pallet_xcm::pallet::Event<T>2145 **/2156 **/2146 CumulusPalletXcmEvent: {2157 CumulusPalletXcmEvent: {2147 _enum: {2158 _enum: {2148 InvalidFormat: '[u8;8]',2159 InvalidFormat: '[u8;8]',2149 UnsupportedVersion: '[u8;8]',2160 UnsupportedVersion: '[u8;8]',2150 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'2161 ExecutedDownward: '([u8;8],XcmV2TraitsOutcome)'2151 }2162 }2152 },2163 },2153 /**2164 /**2154 * Lookup281: cumulus_pallet_dmp_queue::pallet::Event<T>2165 * Lookup284: cumulus_pallet_dmp_queue::pallet::Event<T>2155 **/2166 **/2156 CumulusPalletDmpQueueEvent: {2167 CumulusPalletDmpQueueEvent: {2157 _enum: {2168 _enum: {2158 InvalidFormat: '[u8;32]',2169 InvalidFormat: '[u8;32]',2163 OverweightServiced: '(u64,u64)'2174 OverweightServiced: '(u64,u64)'2164 }2175 }2165 },2176 },2166 /**2177 /**2167 * Lookup282: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2178 * Lookup285: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2168 **/2179 **/2169 PalletUniqueRawEvent: {2180 PalletUniqueRawEvent: {2170 _enum: {2181 _enum: {2171 CollectionSponsorRemoved: 'u32',2182 CollectionSponsorRemoved: 'u32',2180 CollectionPermissionSet: 'u32'2191 CollectionPermissionSet: 'u32'2181 }2192 }2182 },2193 },2183 /**2194 /**2184 * Lookup283: pallet_unique_scheduler::pallet::Event<T>2195 * Lookup286: pallet_unique_scheduler::pallet::Event<T>2185 **/2196 **/2186 PalletUniqueSchedulerEvent: {2197 PalletUniqueSchedulerEvent: {2187 _enum: {2198 _enum: {2188 Scheduled: {2199 Scheduled: {2205 }2216 }2206 }2217 }2207 },2218 },2208 /**2219 /**2209 * Lookup285: frame_support::traits::schedule::LookupError2220 * Lookup288: frame_support::traits::schedule::LookupError2210 **/2221 **/2211 FrameSupportScheduleLookupError: {2222 FrameSupportScheduleLookupError: {2212 _enum: ['Unknown', 'BadFormat']2223 _enum: ['Unknown', 'BadFormat']2213 },2224 },2214 /**2225 /**2215 * Lookup286: pallet_common::pallet::Event<T>2226 * Lookup289: pallet_common::pallet::Event<T>2216 **/2227 **/2217 PalletCommonEvent: {2228 PalletCommonEvent: {2218 _enum: {2229 _enum: {2219 CollectionCreated: '(u32,u8,AccountId32)',2230 CollectionCreated: '(u32,u8,AccountId32)',2229 PropertyPermissionSet: '(u32,Bytes)'2240 PropertyPermissionSet: '(u32,Bytes)'2230 }2241 }2231 },2242 },2232 /**2243 /**2233 * Lookup287: pallet_structure::pallet::Event<T>2244 * Lookup290: pallet_structure::pallet::Event<T>2234 **/2245 **/2235 PalletStructureEvent: {2246 PalletStructureEvent: {2236 _enum: {2247 _enum: {2237 Executed: 'Result<Null, SpRuntimeDispatchError>'2248 Executed: 'Result<Null, SpRuntimeDispatchError>'2238 }2249 }2239 },2250 },2240 /**2251 /**2241 * Lookup288: pallet_rmrk_core::pallet::Event<T>2252 * Lookup291: pallet_rmrk_core::pallet::Event<T>2242 **/2253 **/2243 PalletRmrkCoreEvent: {2254 PalletRmrkCoreEvent: {2244 _enum: {2255 _enum: {2245 CollectionCreated: {2256 CollectionCreated: {2314 }2325 }2315 }2326 }2316 },2327 },2317 /**2328 /**2318 * Lookup289: pallet_rmrk_equip::pallet::Event<T>2329 * Lookup292: pallet_rmrk_equip::pallet::Event<T>2319 **/2330 **/2320 PalletRmrkEquipEvent: {2331 PalletRmrkEquipEvent: {2321 _enum: {2332 _enum: {2322 BaseCreated: {2333 BaseCreated: {2325 }2336 }2326 }2337 }2327 },2338 },2328 /**2339 /**2329 * Lookup290: pallet_evm::pallet::Event<T>2340 * Lookup293: pallet_evm::pallet::Event<T>2330 **/2341 **/2331 PalletEvmEvent: {2342 PalletEvmEvent: {2332 _enum: {2343 _enum: {2333 Log: 'EthereumLog',2344 Log: 'EthereumLog',2339 BalanceWithdraw: '(AccountId32,H160,U256)'2350 BalanceWithdraw: '(AccountId32,H160,U256)'2340 }2351 }2341 },2352 },2342 /**2353 /**2343 * Lookup291: ethereum::log::Log2354 * Lookup294: ethereum::log::Log2344 **/2355 **/2345 EthereumLog: {2356 EthereumLog: {2346 address: 'H160',2357 address: 'H160',2347 topics: 'Vec<H256>',2358 topics: 'Vec<H256>',2348 data: 'Bytes'2359 data: 'Bytes'2349 },2360 },2350 /**2361 /**2351 * Lookup292: pallet_ethereum::pallet::Event2362 * Lookup295: pallet_ethereum::pallet::Event2352 **/2363 **/2353 PalletEthereumEvent: {2364 PalletEthereumEvent: {2354 _enum: {2365 _enum: {2355 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'2366 Executed: '(H160,H160,H256,EvmCoreErrorExitReason)'2356 }2367 }2357 },2368 },2358 /**2369 /**2359 * Lookup293: evm_core::error::ExitReason2370 * Lookup296: evm_core::error::ExitReason2360 **/2371 **/2361 EvmCoreErrorExitReason: {2372 EvmCoreErrorExitReason: {2362 _enum: {2373 _enum: {2363 Succeed: 'EvmCoreErrorExitSucceed',2374 Succeed: 'EvmCoreErrorExitSucceed',2366 Fatal: 'EvmCoreErrorExitFatal'2377 Fatal: 'EvmCoreErrorExitFatal'2367 }2378 }2368 },2379 },2369 /**2380 /**2370 * Lookup294: evm_core::error::ExitSucceed2381 * Lookup297: evm_core::error::ExitSucceed2371 **/2382 **/2372 EvmCoreErrorExitSucceed: {2383 EvmCoreErrorExitSucceed: {2373 _enum: ['Stopped', 'Returned', 'Suicided']2384 _enum: ['Stopped', 'Returned', 'Suicided']2374 },2385 },2375 /**2386 /**2376 * Lookup295: evm_core::error::ExitError2387 * Lookup298: evm_core::error::ExitError2377 **/2388 **/2378 EvmCoreErrorExitError: {2389 EvmCoreErrorExitError: {2379 _enum: {2390 _enum: {2380 StackUnderflow: 'Null',2391 StackUnderflow: 'Null',2394 InvalidCode: 'Null'2405 InvalidCode: 'Null'2395 }2406 }2396 },2407 },2397 /**2408 /**2398 * Lookup298: evm_core::error::ExitRevert2409 * Lookup301: evm_core::error::ExitRevert2399 **/2410 **/2400 EvmCoreErrorExitRevert: {2411 EvmCoreErrorExitRevert: {2401 _enum: ['Reverted']2412 _enum: ['Reverted']2402 },2413 },2403 /**2414 /**2404 * Lookup299: evm_core::error::ExitFatal2415 * Lookup302: evm_core::error::ExitFatal2405 **/2416 **/2406 EvmCoreErrorExitFatal: {2417 EvmCoreErrorExitFatal: {2407 _enum: {2418 _enum: {2408 NotSupported: 'Null',2419 NotSupported: 'Null',2411 Other: 'Text'2422 Other: 'Text'2412 }2423 }2413 },2424 },2414 /**2425 /**2415 * Lookup300: frame_system::Phase2426 * Lookup303: frame_system::Phase2416 **/2427 **/2417 FrameSystemPhase: {2428 FrameSystemPhase: {2418 _enum: {2429 _enum: {2419 ApplyExtrinsic: 'u32',2430 ApplyExtrinsic: 'u32',2420 Finalization: 'Null',2431 Finalization: 'Null',2421 Initialization: 'Null'2432 Initialization: 'Null'2422 }2433 }2423 },2434 },2424 /**2435 /**2425 * Lookup302: frame_system::LastRuntimeUpgradeInfo2436 * Lookup305: frame_system::LastRuntimeUpgradeInfo2426 **/2437 **/2427 FrameSystemLastRuntimeUpgradeInfo: {2438 FrameSystemLastRuntimeUpgradeInfo: {2428 specVersion: 'Compact<u32>',2439 specVersion: 'Compact<u32>',2429 specName: 'Text'2440 specName: 'Text'2430 },2441 },2431 /**2442 /**2432 * Lookup303: frame_system::limits::BlockWeights2443 * Lookup306: frame_system::limits::BlockWeights2433 **/2444 **/2434 FrameSystemLimitsBlockWeights: {2445 FrameSystemLimitsBlockWeights: {2435 baseBlock: 'u64',2446 baseBlock: 'u64',2436 maxBlock: 'u64',2447 maxBlock: 'u64',2437 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'2448 perClass: 'FrameSupportWeightsPerDispatchClassWeightsPerClass'2438 },2449 },2439 /**2450 /**2440 * Lookup304: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>2451 * Lookup307: frame_support::weights::PerDispatchClass<frame_system::limits::WeightsPerClass>2441 **/2452 **/2442 FrameSupportWeightsPerDispatchClassWeightsPerClass: {2453 FrameSupportWeightsPerDispatchClassWeightsPerClass: {2443 normal: 'FrameSystemLimitsWeightsPerClass',2454 normal: 'FrameSystemLimitsWeightsPerClass',2444 operational: 'FrameSystemLimitsWeightsPerClass',2455 operational: 'FrameSystemLimitsWeightsPerClass',2445 mandatory: 'FrameSystemLimitsWeightsPerClass'2456 mandatory: 'FrameSystemLimitsWeightsPerClass'2446 },2457 },2447 /**2458 /**2448 * Lookup305: frame_system::limits::WeightsPerClass2459 * Lookup308: frame_system::limits::WeightsPerClass2449 **/2460 **/2450 FrameSystemLimitsWeightsPerClass: {2461 FrameSystemLimitsWeightsPerClass: {2451 baseExtrinsic: 'u64',2462 baseExtrinsic: 'u64',2452 maxExtrinsic: 'Option<u64>',2463 maxExtrinsic: 'Option<u64>',2453 maxTotal: 'Option<u64>',2464 maxTotal: 'Option<u64>',2454 reserved: 'Option<u64>'2465 reserved: 'Option<u64>'2455 },2466 },2456 /**2467 /**2457 * Lookup307: frame_system::limits::BlockLength2468 * Lookup310: frame_system::limits::BlockLength2458 **/2469 **/2459 FrameSystemLimitsBlockLength: {2470 FrameSystemLimitsBlockLength: {2460 max: 'FrameSupportWeightsPerDispatchClassU32'2471 max: 'FrameSupportWeightsPerDispatchClassU32'2461 },2472 },2462 /**2473 /**2463 * Lookup308: frame_support::weights::PerDispatchClass<T>2474 * Lookup311: frame_support::weights::PerDispatchClass<T>2464 **/2475 **/2465 FrameSupportWeightsPerDispatchClassU32: {2476 FrameSupportWeightsPerDispatchClassU32: {2466 normal: 'u32',2477 normal: 'u32',2467 operational: 'u32',2478 operational: 'u32',2468 mandatory: 'u32'2479 mandatory: 'u32'2469 },2480 },2470 /**2481 /**2471 * Lookup309: frame_support::weights::RuntimeDbWeight2482 * Lookup312: frame_support::weights::RuntimeDbWeight2472 **/2483 **/2473 FrameSupportWeightsRuntimeDbWeight: {2484 FrameSupportWeightsRuntimeDbWeight: {2474 read: 'u64',2485 read: 'u64',2475 write: 'u64'2486 write: 'u64'2476 },2487 },2477 /**2488 /**2478 * Lookup310: sp_version::RuntimeVersion2489 * Lookup313: sp_version::RuntimeVersion2479 **/2490 **/2480 SpVersionRuntimeVersion: {2491 SpVersionRuntimeVersion: {2481 specName: 'Text',2492 specName: 'Text',2482 implName: 'Text',2493 implName: 'Text',2487 transactionVersion: 'u32',2498 transactionVersion: 'u32',2488 stateVersion: 'u8'2499 stateVersion: 'u8'2489 },2500 },2490 /**2501 /**2491 * Lookup314: frame_system::pallet::Error<T>2502 * Lookup317: frame_system::pallet::Error<T>2492 **/2503 **/2493 FrameSystemError: {2504 FrameSystemError: {2494 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']2505 _enum: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered']2495 },2506 },2496 /**2507 /**2497 * Lookup316: orml_vesting::module::Error<T>2508 * Lookup319: orml_vesting::module::Error<T>2498 **/2509 **/2499 OrmlVestingModuleError: {2510 OrmlVestingModuleError: {2500 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2511 _enum: ['ZeroVestingPeriod', 'ZeroVestingPeriodCount', 'InsufficientBalanceToLock', 'TooManyVestingSchedules', 'AmountLow', 'MaxVestingSchedulesExceeded']2501 },2512 },2502 /**2513 /**2503 * Lookup318: cumulus_pallet_xcmp_queue::InboundChannelDetails2514 * Lookup321: cumulus_pallet_xcmp_queue::InboundChannelDetails2504 **/2515 **/2505 CumulusPalletXcmpQueueInboundChannelDetails: {2516 CumulusPalletXcmpQueueInboundChannelDetails: {2506 sender: 'u32',2517 sender: 'u32',2507 state: 'CumulusPalletXcmpQueueInboundState',2518 state: 'CumulusPalletXcmpQueueInboundState',2508 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2519 messageMetadata: 'Vec<(u32,PolkadotParachainPrimitivesXcmpMessageFormat)>'2509 },2520 },2510 /**2521 /**2511 * Lookup319: cumulus_pallet_xcmp_queue::InboundState2522 * Lookup322: cumulus_pallet_xcmp_queue::InboundState2512 **/2523 **/2513 CumulusPalletXcmpQueueInboundState: {2524 CumulusPalletXcmpQueueInboundState: {2514 _enum: ['Ok', 'Suspended']2525 _enum: ['Ok', 'Suspended']2515 },2526 },2516 /**2527 /**2517 * Lookup322: polkadot_parachain::primitives::XcmpMessageFormat2528 * Lookup325: polkadot_parachain::primitives::XcmpMessageFormat2518 **/2529 **/2519 PolkadotParachainPrimitivesXcmpMessageFormat: {2530 PolkadotParachainPrimitivesXcmpMessageFormat: {2520 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2531 _enum: ['ConcatenatedVersionedXcm', 'ConcatenatedEncodedBlob', 'Signals']2521 },2532 },2522 /**2533 /**2523 * Lookup325: cumulus_pallet_xcmp_queue::OutboundChannelDetails2534 * Lookup328: cumulus_pallet_xcmp_queue::OutboundChannelDetails2524 **/2535 **/2525 CumulusPalletXcmpQueueOutboundChannelDetails: {2536 CumulusPalletXcmpQueueOutboundChannelDetails: {2526 recipient: 'u32',2537 recipient: 'u32',2527 state: 'CumulusPalletXcmpQueueOutboundState',2538 state: 'CumulusPalletXcmpQueueOutboundState',2528 signalsExist: 'bool',2539 signalsExist: 'bool',2529 firstIndex: 'u16',2540 firstIndex: 'u16',2530 lastIndex: 'u16'2541 lastIndex: 'u16'2531 },2542 },2532 /**2543 /**2533 * Lookup326: cumulus_pallet_xcmp_queue::OutboundState2544 * Lookup329: cumulus_pallet_xcmp_queue::OutboundState2534 **/2545 **/2535 CumulusPalletXcmpQueueOutboundState: {2546 CumulusPalletXcmpQueueOutboundState: {2536 _enum: ['Ok', 'Suspended']2547 _enum: ['Ok', 'Suspended']2537 },2548 },2538 /**2549 /**2539 * Lookup328: cumulus_pallet_xcmp_queue::QueueConfigData2550 * Lookup331: cumulus_pallet_xcmp_queue::QueueConfigData2540 **/2551 **/2541 CumulusPalletXcmpQueueQueueConfigData: {2552 CumulusPalletXcmpQueueQueueConfigData: {2542 suspendThreshold: 'u32',2553 suspendThreshold: 'u32',2543 dropThreshold: 'u32',2554 dropThreshold: 'u32',2546 weightRestrictDecay: 'u64',2557 weightRestrictDecay: 'u64',2547 xcmpMaxIndividualWeight: 'u64'2558 xcmpMaxIndividualWeight: 'u64'2548 },2559 },2549 /**2560 /**2550 * Lookup330: cumulus_pallet_xcmp_queue::pallet::Error<T>2561 * Lookup333: cumulus_pallet_xcmp_queue::pallet::Error<T>2551 **/2562 **/2552 CumulusPalletXcmpQueueError: {2563 CumulusPalletXcmpQueueError: {2553 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']2564 _enum: ['FailedToSend', 'BadXcmOrigin', 'BadXcm', 'BadOverweightIndex', 'WeightOverLimit']2554 },2565 },2555 /**2566 /**2556 * Lookup331: pallet_xcm::pallet::Error<T>2567 * Lookup334: pallet_xcm::pallet::Error<T>2557 **/2568 **/2558 PalletXcmError: {2569 PalletXcmError: {2559 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']2570 _enum: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed']2560 },2571 },2561 /**2572 /**2562 * Lookup332: cumulus_pallet_xcm::pallet::Error<T>2573 * Lookup335: cumulus_pallet_xcm::pallet::Error<T>2563 **/2574 **/2564 CumulusPalletXcmError: 'Null',2575 CumulusPalletXcmError: 'Null',2565 /**2576 /**2566 * Lookup333: cumulus_pallet_dmp_queue::ConfigData2577 * Lookup336: cumulus_pallet_dmp_queue::ConfigData2567 **/2578 **/2568 CumulusPalletDmpQueueConfigData: {2579 CumulusPalletDmpQueueConfigData: {2569 maxIndividual: 'u64'2580 maxIndividual: 'u64'2570 },2581 },2571 /**2582 /**2572 * Lookup334: cumulus_pallet_dmp_queue::PageIndexData2583 * Lookup337: cumulus_pallet_dmp_queue::PageIndexData2573 **/2584 **/2574 CumulusPalletDmpQueuePageIndexData: {2585 CumulusPalletDmpQueuePageIndexData: {2575 beginUsed: 'u32',2586 beginUsed: 'u32',2576 endUsed: 'u32',2587 endUsed: 'u32',2577 overweightCount: 'u64'2588 overweightCount: 'u64'2578 },2589 },2579 /**2590 /**2580 * Lookup337: cumulus_pallet_dmp_queue::pallet::Error<T>2591 * Lookup340: cumulus_pallet_dmp_queue::pallet::Error<T>2581 **/2592 **/2582 CumulusPalletDmpQueueError: {2593 CumulusPalletDmpQueueError: {2583 _enum: ['Unknown', 'OverLimit']2594 _enum: ['Unknown', 'OverLimit']2584 },2595 },2585 /**2596 /**2586 * Lookup341: pallet_unique::Error<T>2597 * Lookup344: pallet_unique::Error<T>2587 **/2598 **/2588 PalletUniqueError: {2599 PalletUniqueError: {2589 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument']2600 _enum: ['CollectionDecimalPointLimitExceeded', 'ConfirmUnsetSponsorFail', 'EmptyArgument']2590 },2601 },2591 /**2602 /**2592 * Lookup344: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>2603 * Lookup347: pallet_unique_scheduler::ScheduledV3<frame_support::traits::schedule::MaybeHashed<opal_runtime::Call, primitive_types::H256>, BlockNumber, opal_runtime::OriginCaller, sp_core::crypto::AccountId32>2593 **/2604 **/2594 PalletUniqueSchedulerScheduledV3: {2605 PalletUniqueSchedulerScheduledV3: {2595 maybeId: 'Option<[u8;16]>',2606 maybeId: 'Option<[u8;16]>',2596 priority: 'u8',2607 priority: 'u8',2597 call: 'FrameSupportScheduleMaybeHashed',2608 call: 'FrameSupportScheduleMaybeHashed',2598 maybePeriodic: 'Option<(u32,u32)>',2609 maybePeriodic: 'Option<(u32,u32)>',2599 origin: 'OpalRuntimeOriginCaller'2610 origin: 'OpalRuntimeOriginCaller'2600 },2611 },2601 /**2612 /**2602 * Lookup345: opal_runtime::OriginCaller2613 * Lookup348: opal_runtime::OriginCaller2603 **/2614 **/2604 OpalRuntimeOriginCaller: {2615 OpalRuntimeOriginCaller: {2605 _enum: {2616 _enum: {2606 __Unused0: 'Null',2617 __Unused0: 'Null',2707 Ethereum: 'PalletEthereumRawOrigin'2718 Ethereum: 'PalletEthereumRawOrigin'2708 }2719 }2709 },2720 },2710 /**2721 /**2711 * Lookup346: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>2722 * Lookup349: frame_support::dispatch::RawOrigin<sp_core::crypto::AccountId32>2712 **/2723 **/2713 FrameSupportDispatchRawOrigin: {2724 FrameSupportDispatchRawOrigin: {2714 _enum: {2725 _enum: {2715 Root: 'Null',2726 Root: 'Null',2716 Signed: 'AccountId32',2727 Signed: 'AccountId32',2717 None: 'Null'2728 None: 'Null'2718 }2729 }2719 },2730 },2720 /**2731 /**2721 * Lookup347: pallet_xcm::pallet::Origin2732 * Lookup350: pallet_xcm::pallet::Origin2722 **/2733 **/2723 PalletXcmOrigin: {2734 PalletXcmOrigin: {2724 _enum: {2735 _enum: {2725 Xcm: 'XcmV1MultiLocation',2736 Xcm: 'XcmV1MultiLocation',2726 Response: 'XcmV1MultiLocation'2737 Response: 'XcmV1MultiLocation'2727 }2738 }2728 },2739 },2729 /**2740 /**2730 * Lookup348: cumulus_pallet_xcm::pallet::Origin2741 * Lookup351: cumulus_pallet_xcm::pallet::Origin2731 **/2742 **/2732 CumulusPalletXcmOrigin: {2743 CumulusPalletXcmOrigin: {2733 _enum: {2744 _enum: {2734 Relay: 'Null',2745 Relay: 'Null',2735 SiblingParachain: 'u32'2746 SiblingParachain: 'u32'2736 }2747 }2737 },2748 },2738 /**2749 /**2739 * Lookup349: pallet_ethereum::RawOrigin2750 * Lookup352: pallet_ethereum::RawOrigin2740 **/2751 **/2741 PalletEthereumRawOrigin: {2752 PalletEthereumRawOrigin: {2742 _enum: {2753 _enum: {2743 EthereumTransaction: 'H160'2754 EthereumTransaction: 'H160'2744 }2755 }2745 },2756 },2746 /**2757 /**2747 * Lookup350: sp_core::Void2758 * Lookup353: sp_core::Void2748 **/2759 **/2749 SpCoreVoid: 'Null',2760 SpCoreVoid: 'Null',2750 /**2761 /**2751 * Lookup351: pallet_unique_scheduler::pallet::Error<T>2762 * Lookup354: pallet_unique_scheduler::pallet::Error<T>2752 **/2763 **/2753 PalletUniqueSchedulerError: {2764 PalletUniqueSchedulerError: {2754 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']2765 _enum: ['FailedToSchedule', 'NotFound', 'TargetBlockNumberInPast', 'RescheduleNoChange']2755 },2766 },2756 /**2767 /**2757 * Lookup352: up_data_structs::Collection<sp_core::crypto::AccountId32>2768 * Lookup355: up_data_structs::Collection<sp_core::crypto::AccountId32>2758 **/2769 **/2759 UpDataStructsCollection: {2770 UpDataStructsCollection: {2760 owner: 'AccountId32',2771 owner: 'AccountId32',2761 mode: 'UpDataStructsCollectionMode',2772 mode: 'UpDataStructsCollectionMode',2767 permissions: 'UpDataStructsCollectionPermissions',2778 permissions: 'UpDataStructsCollectionPermissions',2768 externalCollection: 'bool'2779 externalCollection: 'bool'2769 },2780 },2770 /**2781 /**2771 * Lookup353: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>2782 * Lookup356: up_data_structs::SponsorshipState<sp_core::crypto::AccountId32>2772 **/2783 **/2773 UpDataStructsSponsorshipState: {2784 UpDataStructsSponsorshipState: {2774 _enum: {2785 _enum: {2775 Disabled: 'Null',2786 Disabled: 'Null',2776 Unconfirmed: 'AccountId32',2787 Unconfirmed: 'AccountId32',2777 Confirmed: 'AccountId32'2788 Confirmed: 'AccountId32'2778 }2789 }2779 },2790 },2780 /**2791 /**2781 * Lookup354: up_data_structs::Properties2792 * Lookup357: up_data_structs::Properties2782 **/2793 **/2783 UpDataStructsProperties: {2794 UpDataStructsProperties: {2784 map: 'UpDataStructsPropertiesMapBoundedVec',2795 map: 'UpDataStructsPropertiesMapBoundedVec',2785 consumedSpace: 'u32',2796 consumedSpace: 'u32',2786 spaceLimit: 'u32'2797 spaceLimit: 'u32'2787 },2798 },2788 /**2799 /**2789 * Lookup355: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>2800 * Lookup358: up_data_structs::PropertiesMap<frame_support::storage::bounded_vec::BoundedVec<T, S>>2790 **/2801 **/2791 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',2802 UpDataStructsPropertiesMapBoundedVec: 'BTreeMap<Bytes, Bytes>',2792 /**2803 /**2793 * Lookup360: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>2804 * Lookup363: up_data_structs::PropertiesMap<up_data_structs::PropertyPermission>2794 **/2805 **/2795 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',2806 UpDataStructsPropertiesMapPropertyPermission: 'BTreeMap<Bytes, UpDataStructsPropertyPermission>',2796 /**2807 /**2797 * Lookup367: up_data_structs::CollectionStats2808 * Lookup370: up_data_structs::CollectionStats2798 **/2809 **/2799 UpDataStructsCollectionStats: {2810 UpDataStructsCollectionStats: {2800 created: 'u32',2811 created: 'u32',2801 destroyed: 'u32',2812 destroyed: 'u32',2802 alive: 'u32'2813 alive: 'u32'2803 },2814 },2804 /**2815 /**2805 * Lookup368: up_data_structs::TokenChild2816 * Lookup371: up_data_structs::TokenChild2806 **/2817 **/2807 UpDataStructsTokenChild: {2818 UpDataStructsTokenChild: {2808 token: 'u32',2819 token: 'u32',2809 collection: 'u32'2820 collection: 'u32'2810 },2821 },2811 /**2822 /**2812 * Lookup369: PhantomType::up_data_structs<T>2823 * Lookup372: PhantomType::up_data_structs<T>2813 **/2824 **/2814 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',2825 PhantomTypeUpDataStructs: '[(UpDataStructsTokenData,UpDataStructsRpcCollection,RmrkTraitsCollectionCollectionInfo,RmrkTraitsNftNftInfo,RmrkTraitsResourceResourceInfo,RmrkTraitsPropertyPropertyInfo,RmrkTraitsBaseBaseInfo,RmrkTraitsPartPartType,RmrkTraitsTheme,RmrkTraitsNftNftChild);0]',2815 /**2826 /**2816 * Lookup371: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2827 * Lookup374: up_data_structs::TokenData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2817 **/2828 **/2818 UpDataStructsTokenData: {2829 UpDataStructsTokenData: {2819 properties: 'Vec<UpDataStructsProperty>',2830 properties: 'Vec<UpDataStructsProperty>',2820 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>'2831 owner: 'Option<PalletEvmAccountBasicCrossAccountIdRepr>'2821 },2832 },2822 /**2833 /**2823 * Lookup373: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>2834 * Lookup376: up_data_structs::RpcCollection<sp_core::crypto::AccountId32>2824 **/2835 **/2825 UpDataStructsRpcCollection: {2836 UpDataStructsRpcCollection: {2826 owner: 'AccountId32',2837 owner: 'AccountId32',2827 mode: 'UpDataStructsCollectionMode',2838 mode: 'UpDataStructsCollectionMode',2835 properties: 'Vec<UpDataStructsProperty>',2846 properties: 'Vec<UpDataStructsProperty>',2836 readOnly: 'bool'2847 readOnly: 'bool'2837 },2848 },2838 /**2849 /**2839 * Lookup374: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>2850 * Lookup377: rmrk_traits::collection::CollectionInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>, sp_core::crypto::AccountId32>2840 **/2851 **/2841 RmrkTraitsCollectionCollectionInfo: {2852 RmrkTraitsCollectionCollectionInfo: {2842 issuer: 'AccountId32',2853 issuer: 'AccountId32',2843 metadata: 'Bytes',2854 metadata: 'Bytes',2844 max: 'Option<u32>',2855 max: 'Option<u32>',2845 symbol: 'Bytes',2856 symbol: 'Bytes',2846 nftsCount: 'u32'2857 nftsCount: 'u32'2847 },2858 },2848 /**2859 /**2849 * Lookup375: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>2860 * Lookup378: rmrk_traits::nft::NftInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill, frame_support::storage::bounded_vec::BoundedVec<T, S>>2850 **/2861 **/2851 RmrkTraitsNftNftInfo: {2862 RmrkTraitsNftNftInfo: {2852 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',2863 owner: 'RmrkTraitsNftAccountIdOrCollectionNftTuple',2853 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',2864 royalty: 'Option<RmrkTraitsNftRoyaltyInfo>',2854 metadata: 'Bytes',2865 metadata: 'Bytes',2855 equipped: 'bool',2866 equipped: 'bool',2856 pending: 'bool'2867 pending: 'bool'2857 },2868 },2858 /**2869 /**2859 * Lookup377: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>2870 * Lookup380: rmrk_traits::nft::RoyaltyInfo<sp_core::crypto::AccountId32, sp_arithmetic::per_things::Permill>2860 **/2871 **/2861 RmrkTraitsNftRoyaltyInfo: {2872 RmrkTraitsNftRoyaltyInfo: {2862 recipient: 'AccountId32',2873 recipient: 'AccountId32',2863 amount: 'Permill'2874 amount: 'Permill'2864 },2875 },2865 /**2876 /**2866 * Lookup378: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2877 * Lookup381: rmrk_traits::resource::ResourceInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2867 **/2878 **/2868 RmrkTraitsResourceResourceInfo: {2879 RmrkTraitsResourceResourceInfo: {2869 id: 'u32',2880 id: 'u32',2870 resource: 'RmrkTraitsResourceResourceTypes',2881 resource: 'RmrkTraitsResourceResourceTypes',2871 pending: 'bool',2882 pending: 'bool',2872 pendingRemoval: 'bool'2883 pendingRemoval: 'bool'2873 },2884 },2874 /**2875 * Lookup379: rmrk_traits::resource::ResourceTypes<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2876 **/2877 RmrkTraitsResourceResourceTypes: {2878 _enum: {2879 Basic: 'RmrkTraitsResourceBasicResource',2880 Composable: 'RmrkTraitsResourceComposableResource',2881 Slot: 'RmrkTraitsResourceSlotResource'2882 }2883 },2884 /**2885 /**2885 * Lookup380: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2886 * Lookup382: rmrk_traits::property::PropertyInfo<frame_support::storage::bounded_vec::BoundedVec<T, S>, frame_support::storage::bounded_vec::BoundedVec<T, S>>2886 **/2887 **/2887 RmrkTraitsPropertyPropertyInfo: {2888 RmrkTraitsPropertyPropertyInfo: {2888 key: 'Bytes',2889 key: 'Bytes',2889 value: 'Bytes'2890 value: 'Bytes'2890 },2891 },2891 /**2892 /**2892 * Lookup381: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>2893 * Lookup383: rmrk_traits::base::BaseInfo<sp_core::crypto::AccountId32, frame_support::storage::bounded_vec::BoundedVec<T, S>>2893 **/2894 **/2894 RmrkTraitsBaseBaseInfo: {2895 RmrkTraitsBaseBaseInfo: {2895 issuer: 'AccountId32',2896 issuer: 'AccountId32',2896 baseType: 'Bytes',2897 baseType: 'Bytes',2897 symbol: 'Bytes'2898 symbol: 'Bytes'2898 },2899 },2899 /**2900 /**2900 * Lookup382: rmrk_traits::nft::NftChild2901 * Lookup384: rmrk_traits::nft::NftChild2901 **/2902 **/2902 RmrkTraitsNftNftChild: {2903 RmrkTraitsNftNftChild: {2903 collectionId: 'u32',2904 collectionId: 'u32',2904 nftId: 'u32'2905 nftId: 'u32'2905 },2906 },2906 /**2907 /**2907 * Lookup384: pallet_common::pallet::Error<T>2908 * Lookup386: pallet_common::pallet::Error<T>2908 **/2909 **/2909 PalletCommonError: {2910 PalletCommonError: {2910 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal']2911 _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'CantDestroyNotEmptyCollection', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds', 'UserIsNotAllowedToNest', 'SourceCollectionIsNotAllowedToNest', 'CollectionFieldSizeExceeded', 'NoSpaceForProperty', 'PropertyLimitReached', 'PropertyKeyIsTooLong', 'InvalidCharacterInPropertyKey', 'EmptyPropertyKey', 'CollectionIsExternal', 'CollectionIsInternal']2911 },2912 },2912 /**2913 /**2913 * Lookup386: pallet_fungible::pallet::Error<T>2914 * Lookup388: pallet_fungible::pallet::Error<T>2914 **/2915 **/2915 PalletFungibleError: {2916 PalletFungibleError: {2916 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2917 _enum: ['NotFungibleDataUsedToMintFungibleCollectionToken', 'FungibleItemsHaveNoId', 'FungibleItemsDontHaveData', 'FungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2917 },2918 },2918 /**2919 /**2919 * Lookup387: pallet_refungible::ItemData2920 * Lookup389: pallet_refungible::ItemData2920 **/2921 **/2921 PalletRefungibleItemData: {2922 PalletRefungibleItemData: {2922 constData: 'Bytes'2923 constData: 'Bytes'2923 },2924 },2924 /**2925 /**2925 * Lookup391: pallet_refungible::pallet::Error<T>2926 * Lookup393: pallet_refungible::pallet::Error<T>2926 **/2927 **/2927 PalletRefungibleError: {2928 PalletRefungibleError: {2928 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2929 _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces', 'RefungibleDisallowsNesting', 'SettingPropertiesNotAllowed']2929 },2930 },2930 /**2931 /**2931 * Lookup392: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2932 * Lookup394: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>2932 **/2933 **/2933 PalletNonfungibleItemData: {2934 PalletNonfungibleItemData: {2934 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'2935 owner: 'PalletEvmAccountBasicCrossAccountIdRepr'2935 },2936 },2936 /**2937 /**2937 * Lookup394: pallet_nonfungible::pallet::Error<T>2938 * Lookup396: pallet_nonfungible::pallet::Error<T>2938 **/2939 **/2939 PalletNonfungibleError: {2940 PalletNonfungibleError: {2940 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']2941 _enum: ['NotNonfungibleDataUsedToMintFungibleCollectionToken', 'NonfungibleItemsHaveNoAmount', 'CantBurnNftWithChildren']2941 },2942 },2942 /**2943 /**2943 * Lookup395: pallet_structure::pallet::Error<T>2944 * Lookup397: pallet_structure::pallet::Error<T>2944 **/2945 **/2945 PalletStructureError: {2946 PalletStructureError: {2946 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']2947 _enum: ['OuroborosDetected', 'DepthLimit', 'BreadthLimit', 'TokenNotFound']2947 },2948 },2948 /**2949 /**2949 * Lookup396: pallet_rmrk_core::pallet::Error<T>2950 * Lookup398: pallet_rmrk_core::pallet::Error<T>2950 **/2951 **/2951 PalletRmrkCoreError: {2952 PalletRmrkCoreError: {2952 _enum: ['CorruptedCollectionType', 'NftTypeEncodeError', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'ResourceNotPending']2953 _enum: ['CorruptedCollectionType', 'NftTypeEncodeError', 'RmrkPropertyKeyIsTooLong', 'RmrkPropertyValueIsTooLong', 'UnableToDecodeRmrkData', 'CollectionNotEmpty', 'NoAvailableCollectionId', 'NoAvailableNftId', 'CollectionUnknown', 'NoPermission', 'NonTransferable', 'CollectionFullOrLocked', 'ResourceDoesntExist', 'CannotSendToDescendentOrSelf', 'CannotAcceptNonOwnedNft', 'CannotRejectNonOwnedNft', 'ResourceNotPending']2953 },2954 },2954 /**2955 /**2955 * Lookup398: pallet_rmrk_equip::pallet::Error<T>2956 * Lookup400: pallet_rmrk_equip::pallet::Error<T>2956 **/2957 **/2957 PalletRmrkEquipError: {2958 PalletRmrkEquipError: {2958 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst']2959 _enum: ['PermissionError', 'NoAvailableBaseId', 'NoAvailablePartId', 'BaseDoesntExist', 'NeedsDefaultThemeFirst']2959 },2960 },2960 /**2961 /**2961 * Lookup401: pallet_evm::pallet::Error<T>2962 * Lookup403: pallet_evm::pallet::Error<T>2962 **/2963 **/2963 PalletEvmError: {2964 PalletEvmError: {2964 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']2965 _enum: ['BalanceLow', 'FeeOverflow', 'PaymentOverflow', 'WithdrawFailed', 'GasPriceTooLow', 'InvalidNonce']2965 },2966 },2966 /**2967 /**2967 * Lookup404: fp_rpc::TransactionStatus2968 * Lookup406: fp_rpc::TransactionStatus2968 **/2969 **/2969 FpRpcTransactionStatus: {2970 FpRpcTransactionStatus: {2970 transactionHash: 'H256',2971 transactionHash: 'H256',2971 transactionIndex: 'u32',2972 transactionIndex: 'u32',2975 logs: 'Vec<EthereumLog>',2976 logs: 'Vec<EthereumLog>',2976 logsBloom: 'EthbloomBloom'2977 logsBloom: 'EthbloomBloom'2977 },2978 },2978 /**2979 /**2979 * Lookup406: ethbloom::Bloom2980 * Lookup408: ethbloom::Bloom2980 **/2981 **/2981 EthbloomBloom: '[u8;256]',2982 EthbloomBloom: '[u8;256]',2982 /**2983 /**2983 * Lookup408: ethereum::receipt::ReceiptV32984 * Lookup410: ethereum::receipt::ReceiptV32984 **/2985 **/2985 EthereumReceiptReceiptV3: {2986 EthereumReceiptReceiptV3: {2986 _enum: {2987 _enum: {2987 Legacy: 'EthereumReceiptEip658ReceiptData',2988 Legacy: 'EthereumReceiptEip658ReceiptData',2988 EIP2930: 'EthereumReceiptEip658ReceiptData',2989 EIP2930: 'EthereumReceiptEip658ReceiptData',2989 EIP1559: 'EthereumReceiptEip658ReceiptData'2990 EIP1559: 'EthereumReceiptEip658ReceiptData'2990 }2991 }2991 },2992 },2992 /**2993 /**2993 * Lookup409: ethereum::receipt::EIP658ReceiptData2994 * Lookup411: ethereum::receipt::EIP658ReceiptData2994 **/2995 **/2995 EthereumReceiptEip658ReceiptData: {2996 EthereumReceiptEip658ReceiptData: {2996 statusCode: 'u8',2997 statusCode: 'u8',2997 usedGas: 'U256',2998 usedGas: 'U256',2998 logsBloom: 'EthbloomBloom',2999 logsBloom: 'EthbloomBloom',2999 logs: 'Vec<EthereumLog>'3000 logs: 'Vec<EthereumLog>'3000 },3001 },3001 /**3002 /**3002 * Lookup410: ethereum::block::Block<ethereum::transaction::TransactionV2>3003 * Lookup412: ethereum::block::Block<ethereum::transaction::TransactionV2>3003 **/3004 **/3004 EthereumBlock: {3005 EthereumBlock: {3005 header: 'EthereumHeader',3006 header: 'EthereumHeader',3006 transactions: 'Vec<EthereumTransactionTransactionV2>',3007 transactions: 'Vec<EthereumTransactionTransactionV2>',3007 ommers: 'Vec<EthereumHeader>'3008 ommers: 'Vec<EthereumHeader>'3008 },3009 },3009 /**3010 /**3010 * Lookup411: ethereum::header::Header3011 * Lookup413: ethereum::header::Header3011 **/3012 **/3012 EthereumHeader: {3013 EthereumHeader: {3013 parentHash: 'H256',3014 parentHash: 'H256',3014 ommersHash: 'H256',3015 ommersHash: 'H256',3026 mixHash: 'H256',3027 mixHash: 'H256',3027 nonce: 'EthereumTypesHashH64'3028 nonce: 'EthereumTypesHashH64'3028 },3029 },3029 /**3030 /**3030 * Lookup412: ethereum_types::hash::H643031 * Lookup414: ethereum_types::hash::H643031 **/3032 **/3032 EthereumTypesHashH64: '[u8;8]',3033 EthereumTypesHashH64: '[u8;8]',3033 /**3034 /**3034 * Lookup417: pallet_ethereum::pallet::Error<T>3035 * Lookup419: pallet_ethereum::pallet::Error<T>3035 **/3036 **/3036 PalletEthereumError: {3037 PalletEthereumError: {3037 _enum: ['InvalidSignature', 'PreLogExists']3038 _enum: ['InvalidSignature', 'PreLogExists']3038 },3039 },3039 /**3040 /**3040 * Lookup418: pallet_evm_coder_substrate::pallet::Error<T>3041 * Lookup420: pallet_evm_coder_substrate::pallet::Error<T>3041 **/3042 **/3042 PalletEvmCoderSubstrateError: {3043 PalletEvmCoderSubstrateError: {3043 _enum: ['OutOfGas', 'OutOfFund']3044 _enum: ['OutOfGas', 'OutOfFund']3044 },3045 },3045 /**3046 /**3046 * Lookup419: pallet_evm_contract_helpers::SponsoringModeT3047 * Lookup421: pallet_evm_contract_helpers::SponsoringModeT3047 **/3048 **/3048 PalletEvmContractHelpersSponsoringModeT: {3049 PalletEvmContractHelpersSponsoringModeT: {3049 _enum: ['Disabled', 'Allowlisted', 'Generous']3050 _enum: ['Disabled', 'Allowlisted', 'Generous']3050 },3051 },3051 /**3052 /**3052 * Lookup421: pallet_evm_contract_helpers::pallet::Error<T>3053 * Lookup423: pallet_evm_contract_helpers::pallet::Error<T>3053 **/3054 **/3054 PalletEvmContractHelpersError: {3055 PalletEvmContractHelpersError: {3055 _enum: ['NoPermission']3056 _enum: ['NoPermission']3056 },3057 },3057 /**3058 /**3058 * Lookup422: pallet_evm_migration::pallet::Error<T>3059 * Lookup424: pallet_evm_migration::pallet::Error<T>3059 **/3060 **/3060 PalletEvmMigrationError: {3061 PalletEvmMigrationError: {3061 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating']3062 _enum: ['AccountNotEmpty', 'AccountIsNotMigrating']3062 },3063 },3063 /**3064 /**3064 * Lookup424: sp_runtime::MultiSignature3065 * Lookup426: sp_runtime::MultiSignature3065 **/3066 **/3066 SpRuntimeMultiSignature: {3067 SpRuntimeMultiSignature: {3067 _enum: {3068 _enum: {3068 Ed25519: 'SpCoreEd25519Signature',3069 Ed25519: 'SpCoreEd25519Signature',3069 Sr25519: 'SpCoreSr25519Signature',3070 Sr25519: 'SpCoreSr25519Signature',3070 Ecdsa: 'SpCoreEcdsaSignature'3071 Ecdsa: 'SpCoreEcdsaSignature'3071 }3072 }3072 },3073 },3073 /**3074 /**3074 * Lookup425: sp_core::ed25519::Signature3075 * Lookup427: sp_core::ed25519::Signature3075 **/3076 **/3076 SpCoreEd25519Signature: '[u8;64]',3077 SpCoreEd25519Signature: '[u8;64]',3077 /**3078 /**3078 * Lookup427: sp_core::sr25519::Signature3079 * Lookup429: sp_core::sr25519::Signature3079 **/3080 **/3080 SpCoreSr25519Signature: '[u8;64]',3081 SpCoreSr25519Signature: '[u8;64]',3081 /**3082 /**3082 * Lookup428: sp_core::ecdsa::Signature3083 * Lookup430: sp_core::ecdsa::Signature3083 **/3084 **/3084 SpCoreEcdsaSignature: '[u8;65]',3085 SpCoreEcdsaSignature: '[u8;65]',3085 /**3086 /**3086 * Lookup431: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3087 * Lookup433: frame_system::extensions::check_spec_version::CheckSpecVersion<T>3087 **/3088 **/3088 FrameSystemExtensionsCheckSpecVersion: 'Null',3089 FrameSystemExtensionsCheckSpecVersion: 'Null',3089 /**3090 /**3090 * Lookup432: frame_system::extensions::check_genesis::CheckGenesis<T>3091 * Lookup434: frame_system::extensions::check_genesis::CheckGenesis<T>3091 **/3092 **/3092 FrameSystemExtensionsCheckGenesis: 'Null',3093 FrameSystemExtensionsCheckGenesis: 'Null',3093 /**3094 /**3094 * Lookup435: frame_system::extensions::check_nonce::CheckNonce<T>3095 * Lookup437: frame_system::extensions::check_nonce::CheckNonce<T>3095 **/3096 **/3096 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3097 FrameSystemExtensionsCheckNonce: 'Compact<u32>',3097 /**3098 /**3098 * Lookup436: frame_system::extensions::check_weight::CheckWeight<T>3099 * Lookup438: frame_system::extensions::check_weight::CheckWeight<T>3099 **/3100 **/3100 FrameSystemExtensionsCheckWeight: 'Null',3101 FrameSystemExtensionsCheckWeight: 'Null',3101 /**3102 /**3102 * Lookup437: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3103 * Lookup439: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>3103 **/3104 **/3104 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3105 PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',3105 /**3106 /**3106 * Lookup438: opal_runtime::Runtime3107 * Lookup440: opal_runtime::Runtime3107 **/3108 **/3108 OpalRuntimeRuntime: 'Null',3109 OpalRuntimeRuntime: 'Null',3109 /**3110 /**3110 * Lookup439: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3111 * Lookup441: pallet_ethereum::FakeTransactionFinalizer<opal_runtime::Runtime>3111 **/3112 **/3112 PalletEthereumFakeTransactionFinalizer: 'Null'3113 PalletEthereumFakeTransactionFinalizer: 'Null'3113};3114};31143115tests/src/interfaces/types-lookup.tsdiffbeforeafterboth--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -1562,7 +1562,7 @@
/** @name UpDataStructsNestingPermissions (169) */
export interface UpDataStructsNestingPermissions extends Struct {
readonly tokenOwner: bool;
- readonly admin: bool;
+ readonly collectionAdmin: bool;
readonly restricted: Option<UpDataStructsOwnerRestrictedSet>;
readonly permissive: bool;
}
@@ -1719,11 +1719,13 @@
readonly royaltyAmount: Option<Permill>;
readonly metadata: Bytes;
readonly transferable: bool;
+ readonly resources: Option<Vec<RmrkTraitsResourceResourceTypes>>;
} & Struct;
readonly isBurnNft: boolean;
readonly asBurnNft: {
readonly collectionId: u32;
readonly nftId: u32;
+ readonly maxBurns: u32;
} & Struct;
readonly isSend: boolean;
readonly asSend: {
@@ -1777,7 +1779,6 @@
readonly asAddComposableResource: {
readonly rmrkCollectionId: u32;
readonly nftId: u32;
- readonly resourceId: Bytes;
readonly resource: RmrkTraitsResourceComposableResource;
} & Struct;
readonly isAddSlotResource: boolean;
@@ -1795,13 +1796,15 @@
readonly type: 'CreateCollection' | 'DestroyCollection' | 'ChangeCollectionIssuer' | 'LockCollection' | 'MintNft' | 'BurnNft' | 'Send' | 'AcceptNft' | 'RejectNft' | 'AcceptResource' | 'AcceptResourceRemoval' | 'SetProperty' | 'SetPriority' | 'AddBasicResource' | 'AddComposableResource' | 'AddSlotResource' | 'RemoveResource';
}
- /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (215) */
- export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum {
- readonly isAccountId: boolean;
- readonly asAccountId: AccountId32;
- readonly isCollectionAndNftTuple: boolean;
- readonly asCollectionAndNftTuple: ITuple<[u32, u32]>;
- readonly type: 'AccountId' | 'CollectionAndNftTuple';
+ /** @name RmrkTraitsResourceResourceTypes (217) */
+ export interface RmrkTraitsResourceResourceTypes extends Enum {
+ readonly isBasic: boolean;
+ readonly asBasic: RmrkTraitsResourceBasicResource;
+ readonly isComposable: boolean;
+ readonly asComposable: RmrkTraitsResourceComposableResource;
+ readonly isSlot: boolean;
+ readonly asSlot: RmrkTraitsResourceSlotResource;
+ readonly type: 'Basic' | 'Composable' | 'Slot';
}
/** @name RmrkTraitsResourceBasicResource (219) */
@@ -1812,7 +1815,7 @@
readonly thumb: Option<Bytes>;
}
- /** @name RmrkTraitsResourceComposableResource (222) */
+ /** @name RmrkTraitsResourceComposableResource (221) */
export interface RmrkTraitsResourceComposableResource extends Struct {
readonly parts: Vec<u32>;
readonly base: u32;
@@ -1822,7 +1825,7 @@
readonly thumb: Option<Bytes>;
}
- /** @name RmrkTraitsResourceSlotResource (224) */
+ /** @name RmrkTraitsResourceSlotResource (222) */
export interface RmrkTraitsResourceSlotResource extends Struct {
readonly base: u32;
readonly src: Option<Bytes>;
@@ -1832,7 +1835,16 @@
readonly thumb: Option<Bytes>;
}
- /** @name PalletRmrkEquipCall (225) */
+ /** @name RmrkTraitsNftAccountIdOrCollectionNftTuple (224) */
+ export interface RmrkTraitsNftAccountIdOrCollectionNftTuple extends Enum {
+ readonly isAccountId: boolean;
+ readonly asAccountId: AccountId32;
+ readonly isCollectionAndNftTuple: boolean;
+ readonly asCollectionAndNftTuple: ITuple<[u32, u32]>;
+ readonly type: 'AccountId' | 'CollectionAndNftTuple';
+ }
+
+ /** @name PalletRmrkEquipCall (228) */
export interface PalletRmrkEquipCall extends Enum {
readonly isCreateBase: boolean;
readonly asCreateBase: {
@@ -1848,7 +1860,7 @@
readonly type: 'CreateBase' | 'ThemeAdd';
}
- /** @name RmrkTraitsPartPartType (227) */
+ /** @name RmrkTraitsPartPartType (230) */
export interface RmrkTraitsPartPartType extends Enum {
readonly isFixedPart: boolean;
readonly asFixedPart: RmrkTraitsPartFixedPart;
@@ -1857,14 +1869,14 @@
readonly type: 'FixedPart' | 'SlotPart';
}
- /** @name RmrkTraitsPartFixedPart (229) */
+ /** @name RmrkTraitsPartFixedPart (232) */
export interface RmrkTraitsPartFixedPart extends Struct {
readonly id: u32;
readonly z: u32;
readonly src: Bytes;
}
- /** @name RmrkTraitsPartSlotPart (230) */
+ /** @name RmrkTraitsPartSlotPart (233) */
export interface RmrkTraitsPartSlotPart extends Struct {
readonly id: u32;
readonly equippable: RmrkTraitsPartEquippableList;
@@ -1872,7 +1884,7 @@
readonly z: u32;
}
- /** @name RmrkTraitsPartEquippableList (231) */
+ /** @name RmrkTraitsPartEquippableList (234) */
export interface RmrkTraitsPartEquippableList extends Enum {
readonly isAll: boolean;
readonly isEmpty: boolean;
@@ -1881,20 +1893,20 @@
readonly type: 'All' | 'Empty' | 'Custom';
}
- /** @name RmrkTraitsTheme (233) */
+ /** @name RmrkTraitsTheme (236) */
export interface RmrkTraitsTheme extends Struct {
readonly name: Bytes;
readonly properties: Vec<RmrkTraitsThemeThemeProperty>;
readonly inherit: bool;
}
- /** @name RmrkTraitsThemeThemeProperty (235) */
+ /** @name RmrkTraitsThemeThemeProperty (238) */
export interface RmrkTraitsThemeThemeProperty extends Struct {
readonly key: Bytes;
readonly value: Bytes;
}
- /** @name PalletEvmCall (236) */
+ /** @name PalletEvmCall (239) */
export interface PalletEvmCall extends Enum {
readonly isWithdraw: boolean;
readonly asWithdraw: {
@@ -1939,7 +1951,7 @@
readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';
}
- /** @name PalletEthereumCall (242) */
+ /** @name PalletEthereumCall (245) */
export interface PalletEthereumCall extends Enum {
readonly isTransact: boolean;
readonly asTransact: {
@@ -1948,7 +1960,7 @@
readonly type: 'Transact';
}
- /** @name EthereumTransactionTransactionV2 (243) */
+ /** @name EthereumTransactionTransactionV2 (246) */
export interface EthereumTransactionTransactionV2 extends Enum {
readonly isLegacy: boolean;
readonly asLegacy: EthereumTransactionLegacyTransaction;
@@ -1959,7 +1971,7 @@
readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
}
- /** @name EthereumTransactionLegacyTransaction (244) */
+ /** @name EthereumTransactionLegacyTransaction (247) */
export interface EthereumTransactionLegacyTransaction extends Struct {
readonly nonce: U256;
readonly gasPrice: U256;
@@ -1970,7 +1982,7 @@
readonly signature: EthereumTransactionTransactionSignature;
}
- /** @name EthereumTransactionTransactionAction (245) */
+ /** @name EthereumTransactionTransactionAction (248) */
export interface EthereumTransactionTransactionAction extends Enum {
readonly isCall: boolean;
readonly asCall: H160;
@@ -1978,14 +1990,14 @@
readonly type: 'Call' | 'Create';
}
- /** @name EthereumTransactionTransactionSignature (246) */
+ /** @name EthereumTransactionTransactionSignature (249) */
export interface EthereumTransactionTransactionSignature extends Struct {
readonly v: u64;
readonly r: H256;
readonly s: H256;
}
- /** @name EthereumTransactionEip2930Transaction (248) */
+ /** @name EthereumTransactionEip2930Transaction (251) */
export interface EthereumTransactionEip2930Transaction extends Struct {
readonly chainId: u64;
readonly nonce: U256;
@@ -2000,13 +2012,13 @@
readonly s: H256;
}
- /** @name EthereumTransactionAccessListItem (250) */
+ /** @name EthereumTransactionAccessListItem (253) */
export interface EthereumTransactionAccessListItem extends Struct {
readonly address: H160;
readonly storageKeys: Vec<H256>;
}
- /** @name EthereumTransactionEip1559Transaction (251) */
+ /** @name EthereumTransactionEip1559Transaction (254) */
export interface EthereumTransactionEip1559Transaction extends Struct {
readonly chainId: u64;
readonly nonce: U256;
@@ -2022,7 +2034,7 @@
readonly s: H256;
}
- /** @name PalletEvmMigrationCall (252) */
+ /** @name PalletEvmMigrationCall (255) */
export interface PalletEvmMigrationCall extends Enum {
readonly isBegin: boolean;
readonly asBegin: {
@@ -2041,7 +2053,7 @@
readonly type: 'Begin' | 'SetData' | 'Finish';
}
- /** @name PalletSudoEvent (255) */
+ /** @name PalletSudoEvent (258) */
export interface PalletSudoEvent extends Enum {
readonly isSudid: boolean;
readonly asSudid: {
@@ -2058,7 +2070,7 @@
readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';
}
- /** @name SpRuntimeDispatchError (257) */
+ /** @name SpRuntimeDispatchError (260) */
export interface SpRuntimeDispatchError extends Enum {
readonly isOther: boolean;
readonly isCannotLookup: boolean;
@@ -2077,13 +2089,13 @@
readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic' | 'Transactional';
}
- /** @name SpRuntimeModuleError (258) */
+ /** @name SpRuntimeModuleError (261) */
export interface SpRuntimeModuleError extends Struct {
readonly index: u8;
readonly error: U8aFixed;
}
- /** @name SpRuntimeTokenError (259) */
+ /** @name SpRuntimeTokenError (262) */
export interface SpRuntimeTokenError extends Enum {
readonly isNoFunds: boolean;
readonly isWouldDie: boolean;
@@ -2095,7 +2107,7 @@
readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';
}
- /** @name SpRuntimeArithmeticError (260) */
+ /** @name SpRuntimeArithmeticError (263) */
export interface SpRuntimeArithmeticError extends Enum {
readonly isUnderflow: boolean;
readonly isOverflow: boolean;
@@ -2103,20 +2115,20 @@
readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';
}
- /** @name SpRuntimeTransactionalError (261) */
+ /** @name SpRuntimeTransactionalError (264) */
export interface SpRuntimeTransactionalError extends Enum {
readonly isLimitReached: boolean;
readonly isNoLayer: boolean;
readonly type: 'LimitReached' | 'NoLayer';
}
- /** @name PalletSudoError (262) */
+ /** @name PalletSudoError (265) */
export interface PalletSudoError extends Enum {
readonly isRequireSudo: boolean;
readonly type: 'RequireSudo';
}
- /** @name FrameSystemAccountInfo (263) */
+ /** @name FrameSystemAccountInfo (266) */
export interface FrameSystemAccountInfo extends Struct {
readonly nonce: u32;
readonly consumers: u32;
@@ -2125,19 +2137,19 @@
readonly data: PalletBalancesAccountData;
}
- /** @name FrameSupportWeightsPerDispatchClassU64 (264) */
+ /** @name FrameSupportWeightsPerDispatchClassU64 (267) */
export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {
readonly normal: u64;
readonly operational: u64;
readonly mandatory: u64;
}
- /** @name SpRuntimeDigest (265) */
+ /** @name SpRuntimeDigest (268) */
export interface SpRuntimeDigest extends Struct {
readonly logs: Vec<SpRuntimeDigestDigestItem>;
}
- /** @name SpRuntimeDigestDigestItem (267) */
+ /** @name SpRuntimeDigestDigestItem (270) */
export interface SpRuntimeDigestDigestItem extends Enum {
readonly isOther: boolean;
readonly asOther: Bytes;
@@ -2151,14 +2163,14 @@
readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';
}
- /** @name FrameSystemEventRecord (269) */
+ /** @name FrameSystemEventRecord (272) */
export interface FrameSystemEventRecord extends Struct {
readonly phase: FrameSystemPhase;
readonly event: Event;
readonly topics: Vec<H256>;
}
- /** @name FrameSystemEvent (271) */
+ /** @name FrameSystemEvent (274) */
export interface FrameSystemEvent extends Enum {
readonly isExtrinsicSuccess: boolean;
readonly asExtrinsicSuccess: {
@@ -2186,14 +2198,14 @@
readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';
}
- /** @name FrameSupportWeightsDispatchInfo (272) */
+ /** @name FrameSupportWeightsDispatchInfo (275) */
export interface FrameSupportWeightsDispatchInfo extends Struct {
readonly weight: u64;
readonly class: FrameSupportWeightsDispatchClass;
readonly paysFee: FrameSupportWeightsPays;
}
- /** @name FrameSupportWeightsDispatchClass (273) */
+ /** @name FrameSupportWeightsDispatchClass (276) */
export interface FrameSupportWeightsDispatchClass extends Enum {
readonly isNormal: boolean;
readonly isOperational: boolean;
@@ -2201,14 +2213,14 @@
readonly type: 'Normal' | 'Operational' | 'Mandatory';
}
- /** @name FrameSupportWeightsPays (274) */
+ /** @name FrameSupportWeightsPays (277) */
export interface FrameSupportWeightsPays extends Enum {
readonly isYes: boolean;
readonly isNo: boolean;
readonly type: 'Yes' | 'No';
}
- /** @name OrmlVestingModuleEvent (275) */
+ /** @name OrmlVestingModuleEvent (278) */
export interface OrmlVestingModuleEvent extends Enum {
readonly isVestingScheduleAdded: boolean;
readonly asVestingScheduleAdded: {
@@ -2228,7 +2240,7 @@
readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';
}
- /** @name CumulusPalletXcmpQueueEvent (276) */
+ /** @name CumulusPalletXcmpQueueEvent (279) */
export interface CumulusPalletXcmpQueueEvent extends Enum {
readonly isSuccess: boolean;
readonly asSuccess: Option<H256>;
@@ -2249,7 +2261,7 @@
readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';
}
- /** @name PalletXcmEvent (277) */
+ /** @name PalletXcmEvent (280) */
export interface PalletXcmEvent extends Enum {
readonly isAttempted: boolean;
readonly asAttempted: XcmV2TraitsOutcome;
@@ -2286,7 +2298,7 @@
readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';
}
- /** @name XcmV2TraitsOutcome (278) */
+ /** @name XcmV2TraitsOutcome (281) */
export interface XcmV2TraitsOutcome extends Enum {
readonly isComplete: boolean;
readonly asComplete: u64;
@@ -2297,7 +2309,7 @@
readonly type: 'Complete' | 'Incomplete' | 'Error';
}
- /** @name CumulusPalletXcmEvent (280) */
+ /** @name CumulusPalletXcmEvent (283) */
export interface CumulusPalletXcmEvent extends Enum {
readonly isInvalidFormat: boolean;
readonly asInvalidFormat: U8aFixed;
@@ -2308,7 +2320,7 @@
readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';
}
- /** @name CumulusPalletDmpQueueEvent (281) */
+ /** @name CumulusPalletDmpQueueEvent (284) */
export interface CumulusPalletDmpQueueEvent extends Enum {
readonly isInvalidFormat: boolean;
readonly asInvalidFormat: U8aFixed;
@@ -2325,7 +2337,7 @@
readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';
}
- /** @name PalletUniqueRawEvent (282) */
+ /** @name PalletUniqueRawEvent (285) */
export interface PalletUniqueRawEvent extends Enum {
readonly isCollectionSponsorRemoved: boolean;
readonly asCollectionSponsorRemoved: u32;
@@ -2350,7 +2362,7 @@
readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'CollectionPermissionSet';
}
- /** @name PalletUniqueSchedulerEvent (283) */
+ /** @name PalletUniqueSchedulerEvent (286) */
export interface PalletUniqueSchedulerEvent extends Enum {
readonly isScheduled: boolean;
readonly asScheduled: {
@@ -2377,14 +2389,14 @@
readonly type: 'Scheduled' | 'Canceled' | 'Dispatched' | 'CallLookupFailed';
}
- /** @name FrameSupportScheduleLookupError (285) */
+ /** @name FrameSupportScheduleLookupError (288) */
export interface FrameSupportScheduleLookupError extends Enum {
readonly isUnknown: boolean;
readonly isBadFormat: boolean;
readonly type: 'Unknown' | 'BadFormat';
}
- /** @name PalletCommonEvent (286) */
+ /** @name PalletCommonEvent (289) */
export interface PalletCommonEvent extends Enum {
readonly isCollectionCreated: boolean;
readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;
@@ -2411,14 +2423,14 @@
readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved' | 'CollectionPropertySet' | 'CollectionPropertyDeleted' | 'TokenPropertySet' | 'TokenPropertyDeleted' | 'PropertyPermissionSet';
}
- /** @name PalletStructureEvent (287) */
+ /** @name PalletStructureEvent (290) */
export interface PalletStructureEvent extends Enum {
readonly isExecuted: boolean;
readonly asExecuted: Result<Null, SpRuntimeDispatchError>;
readonly type: 'Executed';
}
- /** @name PalletRmrkCoreEvent (288) */
+ /** @name PalletRmrkCoreEvent (291) */
export interface PalletRmrkCoreEvent extends Enum {
readonly isCollectionCreated: boolean;
readonly asCollectionCreated: {
@@ -2508,7 +2520,7 @@
readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'IssuerChanged' | 'CollectionLocked' | 'NftMinted' | 'NftBurned' | 'NftSent' | 'NftAccepted' | 'NftRejected' | 'PropertySet' | 'ResourceAdded' | 'ResourceRemoval' | 'ResourceAccepted' | 'ResourceRemovalAccepted' | 'PrioritySet';
}
- /** @name PalletRmrkEquipEvent (289) */
+ /** @name PalletRmrkEquipEvent (292) */
export interface PalletRmrkEquipEvent extends Enum {
readonly isBaseCreated: boolean;
readonly asBaseCreated: {
@@ -2518,7 +2530,7 @@
readonly type: 'BaseCreated';
}
- /** @name PalletEvmEvent (290) */
+ /** @name PalletEvmEvent (293) */
export interface PalletEvmEvent extends Enum {
readonly isLog: boolean;
readonly asLog: EthereumLog;
@@ -2537,21 +2549,21 @@
readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';
}
- /** @name EthereumLog (291) */
+ /** @name EthereumLog (294) */
export interface EthereumLog extends Struct {
readonly address: H160;
readonly topics: Vec<H256>;
readonly data: Bytes;
}
- /** @name PalletEthereumEvent (292) */
+ /** @name PalletEthereumEvent (295) */
export interface PalletEthereumEvent extends Enum {
readonly isExecuted: boolean;
readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;
readonly type: 'Executed';
}
- /** @name EvmCoreErrorExitReason (293) */
+ /** @name EvmCoreErrorExitReason (296) */
export interface EvmCoreErrorExitReason extends Enum {
readonly isSucceed: boolean;
readonly asSucceed: EvmCoreErrorExitSucceed;
@@ -2564,7 +2576,7 @@
readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';
}
- /** @name EvmCoreErrorExitSucceed (294) */
+ /** @name EvmCoreErrorExitSucceed (297) */
export interface EvmCoreErrorExitSucceed extends Enum {
readonly isStopped: boolean;
readonly isReturned: boolean;
@@ -2572,7 +2584,7 @@
readonly type: 'Stopped' | 'Returned' | 'Suicided';
}
- /** @name EvmCoreErrorExitError (295) */
+ /** @name EvmCoreErrorExitError (298) */
export interface EvmCoreErrorExitError extends Enum {
readonly isStackUnderflow: boolean;
readonly isStackOverflow: boolean;
@@ -2593,13 +2605,13 @@
readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other' | 'InvalidCode';
}
- /** @name EvmCoreErrorExitRevert (298) */
+ /** @name EvmCoreErrorExitRevert (301) */
export interface EvmCoreErrorExitRevert extends Enum {
readonly isReverted: boolean;
readonly type: 'Reverted';
}
- /** @name EvmCoreErrorExitFatal (299) */
+ /** @name EvmCoreErrorExitFatal (302) */
export interface EvmCoreErrorExitFatal extends Enum {
readonly isNotSupported: boolean;
readonly isUnhandledInterrupt: boolean;
@@ -2610,7 +2622,7 @@
readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';
}
- /** @name FrameSystemPhase (300) */
+ /** @name FrameSystemPhase (303) */
export interface FrameSystemPhase extends Enum {
readonly isApplyExtrinsic: boolean;
readonly asApplyExtrinsic: u32;
@@ -2619,27 +2631,27 @@
readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';
}
- /** @name FrameSystemLastRuntimeUpgradeInfo (302) */
+ /** @name FrameSystemLastRuntimeUpgradeInfo (305) */
export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {
readonly specVersion: Compact<u32>;
readonly specName: Text;
}
- /** @name FrameSystemLimitsBlockWeights (303) */
+ /** @name FrameSystemLimitsBlockWeights (306) */
export interface FrameSystemLimitsBlockWeights extends Struct {
readonly baseBlock: u64;
readonly maxBlock: u64;
readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;
}
- /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (304) */
+ /** @name FrameSupportWeightsPerDispatchClassWeightsPerClass (307) */
export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {
readonly normal: FrameSystemLimitsWeightsPerClass;
readonly operational: FrameSystemLimitsWeightsPerClass;
readonly mandatory: FrameSystemLimitsWeightsPerClass;
}
- /** @name FrameSystemLimitsWeightsPerClass (305) */
+ /** @name FrameSystemLimitsWeightsPerClass (308) */
export interface FrameSystemLimitsWeightsPerClass extends Struct {
readonly baseExtrinsic: u64;
readonly maxExtrinsic: Option<u64>;
@@ -2647,25 +2659,25 @@
readonly reserved: Option<u64>;
}
- /** @name FrameSystemLimitsBlockLength (307) */
+ /** @name FrameSystemLimitsBlockLength (310) */
export interface FrameSystemLimitsBlockLength extends Struct {
readonly max: FrameSupportWeightsPerDispatchClassU32;
}
- /** @name FrameSupportWeightsPerDispatchClassU32 (308) */
+ /** @name FrameSupportWeightsPerDispatchClassU32 (311) */
export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {
readonly normal: u32;
readonly operational: u32;
readonly mandatory: u32;
}
- /** @name FrameSupportWeightsRuntimeDbWeight (309) */
+ /** @name FrameSupportWeightsRuntimeDbWeight (312) */
export interface FrameSupportWeightsRuntimeDbWeight extends Struct {
readonly read: u64;
readonly write: u64;
}
- /** @name SpVersionRuntimeVersion (310) */
+ /** @name SpVersionRuntimeVersion (313) */
export interface SpVersionRuntimeVersion extends Struct {
readonly specName: Text;
readonly implName: Text;
@@ -2677,7 +2689,7 @@
readonly stateVersion: u8;
}
- /** @name FrameSystemError (314) */
+ /** @name FrameSystemError (317) */
export interface FrameSystemError extends Enum {
readonly isInvalidSpecName: boolean;
readonly isSpecVersionNeedsToIncrease: boolean;
@@ -2688,7 +2700,7 @@
readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';
}
- /** @name OrmlVestingModuleError (316) */
+ /** @name OrmlVestingModuleError (319) */
export interface OrmlVestingModuleError extends Enum {
readonly isZeroVestingPeriod: boolean;
readonly isZeroVestingPeriodCount: boolean;
@@ -2699,21 +2711,21 @@
readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';
}
- /** @name CumulusPalletXcmpQueueInboundChannelDetails (318) */
+ /** @name CumulusPalletXcmpQueueInboundChannelDetails (321) */
export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {
readonly sender: u32;
readonly state: CumulusPalletXcmpQueueInboundState;
readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;
}
- /** @name CumulusPalletXcmpQueueInboundState (319) */
+ /** @name CumulusPalletXcmpQueueInboundState (322) */
export interface CumulusPalletXcmpQueueInboundState extends Enum {
readonly isOk: boolean;
readonly isSuspended: boolean;
readonly type: 'Ok' | 'Suspended';
}
- /** @name PolkadotParachainPrimitivesXcmpMessageFormat (322) */
+ /** @name PolkadotParachainPrimitivesXcmpMessageFormat (325) */
export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {
readonly isConcatenatedVersionedXcm: boolean;
readonly isConcatenatedEncodedBlob: boolean;
@@ -2721,7 +2733,7 @@
readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';
}
- /** @name CumulusPalletXcmpQueueOutboundChannelDetails (325) */
+ /** @name CumulusPalletXcmpQueueOutboundChannelDetails (328) */
export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {
readonly recipient: u32;
readonly state: CumulusPalletXcmpQueueOutboundState;
@@ -2730,14 +2742,14 @@
readonly lastIndex: u16;
}
- /** @name CumulusPalletXcmpQueueOutboundState (326) */
+ /** @name CumulusPalletXcmpQueueOutboundState (329) */
export interface CumulusPalletXcmpQueueOutboundState extends Enum {
readonly isOk: boolean;
readonly isSuspended: boolean;
readonly type: 'Ok' | 'Suspended';
}
- /** @name CumulusPalletXcmpQueueQueueConfigData (328) */
+ /** @name CumulusPalletXcmpQueueQueueConfigData (331) */
export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {
readonly suspendThreshold: u32;
readonly dropThreshold: u32;
@@ -2747,7 +2759,7 @@
readonly xcmpMaxIndividualWeight: u64;
}
- /** @name CumulusPalletXcmpQueueError (330) */
+ /** @name CumulusPalletXcmpQueueError (333) */
export interface CumulusPalletXcmpQueueError extends Enum {
readonly isFailedToSend: boolean;
readonly isBadXcmOrigin: boolean;
@@ -2757,7 +2769,7 @@
readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';
}
- /** @name PalletXcmError (331) */
+ /** @name PalletXcmError (334) */
export interface PalletXcmError extends Enum {
readonly isUnreachable: boolean;
readonly isSendFailure: boolean;
@@ -2775,29 +2787,29 @@
readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';
}
- /** @name CumulusPalletXcmError (332) */
+ /** @name CumulusPalletXcmError (335) */
export type CumulusPalletXcmError = Null;
- /** @name CumulusPalletDmpQueueConfigData (333) */
+ /** @name CumulusPalletDmpQueueConfigData (336) */
export interface CumulusPalletDmpQueueConfigData extends Struct {
readonly maxIndividual: u64;
}
- /** @name CumulusPalletDmpQueuePageIndexData (334) */
+ /** @name CumulusPalletDmpQueuePageIndexData (337) */
export interface CumulusPalletDmpQueuePageIndexData extends Struct {
readonly beginUsed: u32;
readonly endUsed: u32;
readonly overweightCount: u64;
}
- /** @name CumulusPalletDmpQueueError (337) */
+ /** @name CumulusPalletDmpQueueError (340) */
export interface CumulusPalletDmpQueueError extends Enum {
readonly isUnknown: boolean;
readonly isOverLimit: boolean;
readonly type: 'Unknown' | 'OverLimit';
}
- /** @name PalletUniqueError (341) */
+ /** @name PalletUniqueError (344) */
export interface PalletUniqueError extends Enum {
readonly isCollectionDecimalPointLimitExceeded: boolean;
readonly isConfirmUnsetSponsorFail: boolean;
@@ -2805,7 +2817,7 @@
readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';
}
- /** @name PalletUniqueSchedulerScheduledV3 (344) */
+ /** @name PalletUniqueSchedulerScheduledV3 (347) */
export interface PalletUniqueSchedulerScheduledV3 extends Struct {
readonly maybeId: Option<U8aFixed>;
readonly priority: u8;
@@ -2814,7 +2826,7 @@
readonly origin: OpalRuntimeOriginCaller;
}
- /** @name OpalRuntimeOriginCaller (345) */
+ /** @name OpalRuntimeOriginCaller (348) */
export interface OpalRuntimeOriginCaller extends Enum {
readonly isVoid: boolean;
readonly isSystem: boolean;
@@ -2828,7 +2840,7 @@
readonly type: 'Void' | 'System' | 'PolkadotXcm' | 'CumulusXcm' | 'Ethereum';
}
- /** @name FrameSupportDispatchRawOrigin (346) */
+ /** @name FrameSupportDispatchRawOrigin (349) */
export interface FrameSupportDispatchRawOrigin extends Enum {
readonly isRoot: boolean;
readonly isSigned: boolean;
@@ -2837,7 +2849,7 @@
readonly type: 'Root' | 'Signed' | 'None';
}
- /** @name PalletXcmOrigin (347) */
+ /** @name PalletXcmOrigin (350) */
export interface PalletXcmOrigin extends Enum {
readonly isXcm: boolean;
readonly asXcm: XcmV1MultiLocation;
@@ -2846,7 +2858,7 @@
readonly type: 'Xcm' | 'Response';
}
- /** @name CumulusPalletXcmOrigin (348) */
+ /** @name CumulusPalletXcmOrigin (351) */
export interface CumulusPalletXcmOrigin extends Enum {
readonly isRelay: boolean;
readonly isSiblingParachain: boolean;
@@ -2854,17 +2866,17 @@
readonly type: 'Relay' | 'SiblingParachain';
}
- /** @name PalletEthereumRawOrigin (349) */
+ /** @name PalletEthereumRawOrigin (352) */
export interface PalletEthereumRawOrigin extends Enum {
readonly isEthereumTransaction: boolean;
readonly asEthereumTransaction: H160;
readonly type: 'EthereumTransaction';
}
- /** @name SpCoreVoid (350) */
+ /** @name SpCoreVoid (353) */
export type SpCoreVoid = Null;
- /** @name PalletUniqueSchedulerError (351) */
+ /** @name PalletUniqueSchedulerError (354) */
export interface PalletUniqueSchedulerError extends Enum {
readonly isFailedToSchedule: boolean;
readonly isNotFound: boolean;
@@ -2873,7 +2885,7 @@
readonly type: 'FailedToSchedule' | 'NotFound' | 'TargetBlockNumberInPast' | 'RescheduleNoChange';
}
- /** @name UpDataStructsCollection (352) */
+ /** @name UpDataStructsCollection (355) */
export interface UpDataStructsCollection extends Struct {
readonly owner: AccountId32;
readonly mode: UpDataStructsCollectionMode;
@@ -2886,7 +2898,7 @@
readonly externalCollection: bool;
}
- /** @name UpDataStructsSponsorshipState (353) */
+ /** @name UpDataStructsSponsorshipState (356) */
export interface UpDataStructsSponsorshipState extends Enum {
readonly isDisabled: boolean;
readonly isUnconfirmed: boolean;
@@ -2896,42 +2908,42 @@
readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';
}
- /** @name UpDataStructsProperties (354) */
+ /** @name UpDataStructsProperties (357) */
export interface UpDataStructsProperties extends Struct {
readonly map: UpDataStructsPropertiesMapBoundedVec;
readonly consumedSpace: u32;
readonly spaceLimit: u32;
}
- /** @name UpDataStructsPropertiesMapBoundedVec (355) */
+ /** @name UpDataStructsPropertiesMapBoundedVec (358) */
export interface UpDataStructsPropertiesMapBoundedVec extends BTreeMap<Bytes, Bytes> {}
- /** @name UpDataStructsPropertiesMapPropertyPermission (360) */
+ /** @name UpDataStructsPropertiesMapPropertyPermission (363) */
export interface UpDataStructsPropertiesMapPropertyPermission extends BTreeMap<Bytes, UpDataStructsPropertyPermission> {}
- /** @name UpDataStructsCollectionStats (367) */
+ /** @name UpDataStructsCollectionStats (370) */
export interface UpDataStructsCollectionStats extends Struct {
readonly created: u32;
readonly destroyed: u32;
readonly alive: u32;
}
- /** @name UpDataStructsTokenChild (368) */
+ /** @name UpDataStructsTokenChild (371) */
export interface UpDataStructsTokenChild extends Struct {
readonly token: u32;
readonly collection: u32;
}
- /** @name PhantomTypeUpDataStructs (369) */
+ /** @name PhantomTypeUpDataStructs (372) */
export interface PhantomTypeUpDataStructs extends Vec<ITuple<[UpDataStructsTokenData, UpDataStructsRpcCollection, RmrkTraitsCollectionCollectionInfo, RmrkTraitsNftNftInfo, RmrkTraitsResourceResourceInfo, RmrkTraitsPropertyPropertyInfo, RmrkTraitsBaseBaseInfo, RmrkTraitsPartPartType, RmrkTraitsTheme, RmrkTraitsNftNftChild]>> {}
- /** @name UpDataStructsTokenData (371) */
+ /** @name UpDataStructsTokenData (374) */
export interface UpDataStructsTokenData extends Struct {
readonly properties: Vec<UpDataStructsProperty>;
readonly owner: Option<PalletEvmAccountBasicCrossAccountIdRepr>;
}
- /** @name UpDataStructsRpcCollection (373) */
+ /** @name UpDataStructsRpcCollection (376) */
export interface UpDataStructsRpcCollection extends Struct {
readonly owner: AccountId32;
readonly mode: UpDataStructsCollectionMode;
@@ -2946,7 +2958,7 @@
readonly readOnly: bool;
}
- /** @name RmrkTraitsCollectionCollectionInfo (374) */
+ /** @name RmrkTraitsCollectionCollectionInfo (377) */
export interface RmrkTraitsCollectionCollectionInfo extends Struct {
readonly issuer: AccountId32;
readonly metadata: Bytes;
@@ -2955,7 +2967,7 @@
readonly nftsCount: u32;
}
- /** @name RmrkTraitsNftNftInfo (375) */
+ /** @name RmrkTraitsNftNftInfo (378) */
export interface RmrkTraitsNftNftInfo extends Struct {
readonly owner: RmrkTraitsNftAccountIdOrCollectionNftTuple;
readonly royalty: Option<RmrkTraitsNftRoyaltyInfo>;
@@ -2964,13 +2976,13 @@
readonly pending: bool;
}
- /** @name RmrkTraitsNftRoyaltyInfo (377) */
+ /** @name RmrkTraitsNftRoyaltyInfo (380) */
export interface RmrkTraitsNftRoyaltyInfo extends Struct {
readonly recipient: AccountId32;
readonly amount: Permill;
}
- /** @name RmrkTraitsResourceResourceInfo (378) */
+ /** @name RmrkTraitsResourceResourceInfo (381) */
export interface RmrkTraitsResourceResourceInfo extends Struct {
readonly id: u32;
readonly resource: RmrkTraitsResourceResourceTypes;
@@ -2978,37 +2990,26 @@
readonly pendingRemoval: bool;
}
- /** @name RmrkTraitsResourceResourceTypes (379) */
- export interface RmrkTraitsResourceResourceTypes extends Enum {
- readonly isBasic: boolean;
- readonly asBasic: RmrkTraitsResourceBasicResource;
- readonly isComposable: boolean;
- readonly asComposable: RmrkTraitsResourceComposableResource;
- readonly isSlot: boolean;
- readonly asSlot: RmrkTraitsResourceSlotResource;
- readonly type: 'Basic' | 'Composable' | 'Slot';
- }
-
- /** @name RmrkTraitsPropertyPropertyInfo (380) */
+ /** @name RmrkTraitsPropertyPropertyInfo (382) */
export interface RmrkTraitsPropertyPropertyInfo extends Struct {
readonly key: Bytes;
readonly value: Bytes;
}
- /** @name RmrkTraitsBaseBaseInfo (381) */
+ /** @name RmrkTraitsBaseBaseInfo (383) */
export interface RmrkTraitsBaseBaseInfo extends Struct {
readonly issuer: AccountId32;
readonly baseType: Bytes;
readonly symbol: Bytes;
}
- /** @name RmrkTraitsNftNftChild (382) */
+ /** @name RmrkTraitsNftNftChild (384) */
export interface RmrkTraitsNftNftChild extends Struct {
readonly collectionId: u32;
readonly nftId: u32;
}
- /** @name PalletCommonError (384) */
+ /** @name PalletCommonError (386) */
export interface PalletCommonError extends Enum {
readonly isCollectionNotFound: boolean;
readonly isMustBeTokenOwner: boolean;
@@ -3047,7 +3048,7 @@
readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'CantDestroyNotEmptyCollection' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds' | 'UserIsNotAllowedToNest' | 'SourceCollectionIsNotAllowedToNest' | 'CollectionFieldSizeExceeded' | 'NoSpaceForProperty' | 'PropertyLimitReached' | 'PropertyKeyIsTooLong' | 'InvalidCharacterInPropertyKey' | 'EmptyPropertyKey' | 'CollectionIsExternal' | 'CollectionIsInternal';
}
- /** @name PalletFungibleError (386) */
+ /** @name PalletFungibleError (388) */
export interface PalletFungibleError extends Enum {
readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isFungibleItemsHaveNoId: boolean;
@@ -3057,12 +3058,12 @@
readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData' | 'FungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
}
- /** @name PalletRefungibleItemData (387) */
+ /** @name PalletRefungibleItemData (389) */
export interface PalletRefungibleItemData extends Struct {
readonly constData: Bytes;
}
- /** @name PalletRefungibleError (391) */
+ /** @name PalletRefungibleError (393) */
export interface PalletRefungibleError extends Enum {
readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isWrongRefungiblePieces: boolean;
@@ -3071,12 +3072,12 @@
readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces' | 'RefungibleDisallowsNesting' | 'SettingPropertiesNotAllowed';
}
- /** @name PalletNonfungibleItemData (392) */
+ /** @name PalletNonfungibleItemData (394) */
export interface PalletNonfungibleItemData extends Struct {
readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
}
- /** @name PalletNonfungibleError (394) */
+ /** @name PalletNonfungibleError (396) */
export interface PalletNonfungibleError extends Enum {
readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;
readonly isNonfungibleItemsHaveNoAmount: boolean;
@@ -3084,7 +3085,7 @@
readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount' | 'CantBurnNftWithChildren';
}
- /** @name PalletStructureError (395) */
+ /** @name PalletStructureError (397) */
export interface PalletStructureError extends Enum {
readonly isOuroborosDetected: boolean;
readonly isDepthLimit: boolean;
@@ -3093,12 +3094,13 @@
readonly type: 'OuroborosDetected' | 'DepthLimit' | 'BreadthLimit' | 'TokenNotFound';
}
- /** @name PalletRmrkCoreError (396) */
+ /** @name PalletRmrkCoreError (398) */
export interface PalletRmrkCoreError extends Enum {
readonly isCorruptedCollectionType: boolean;
readonly isNftTypeEncodeError: boolean;
readonly isRmrkPropertyKeyIsTooLong: boolean;
readonly isRmrkPropertyValueIsTooLong: boolean;
+ readonly isUnableToDecodeRmrkData: boolean;
readonly isCollectionNotEmpty: boolean;
readonly isNoAvailableCollectionId: boolean;
readonly isNoAvailableNftId: boolean;
@@ -3111,10 +3113,10 @@
readonly isCannotAcceptNonOwnedNft: boolean;
readonly isCannotRejectNonOwnedNft: boolean;
readonly isResourceNotPending: boolean;
- readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'ResourceNotPending';
+ readonly type: 'CorruptedCollectionType' | 'NftTypeEncodeError' | 'RmrkPropertyKeyIsTooLong' | 'RmrkPropertyValueIsTooLong' | 'UnableToDecodeRmrkData' | 'CollectionNotEmpty' | 'NoAvailableCollectionId' | 'NoAvailableNftId' | 'CollectionUnknown' | 'NoPermission' | 'NonTransferable' | 'CollectionFullOrLocked' | 'ResourceDoesntExist' | 'CannotSendToDescendentOrSelf' | 'CannotAcceptNonOwnedNft' | 'CannotRejectNonOwnedNft' | 'ResourceNotPending';
}
- /** @name PalletRmrkEquipError (398) */
+ /** @name PalletRmrkEquipError (400) */
export interface PalletRmrkEquipError extends Enum {
readonly isPermissionError: boolean;
readonly isNoAvailableBaseId: boolean;
@@ -3124,7 +3126,7 @@
readonly type: 'PermissionError' | 'NoAvailableBaseId' | 'NoAvailablePartId' | 'BaseDoesntExist' | 'NeedsDefaultThemeFirst';
}
- /** @name PalletEvmError (401) */
+ /** @name PalletEvmError (403) */
export interface PalletEvmError extends Enum {
readonly isBalanceLow: boolean;
readonly isFeeOverflow: boolean;
@@ -3135,7 +3137,7 @@
readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';
}
- /** @name FpRpcTransactionStatus (404) */
+ /** @name FpRpcTransactionStatus (406) */
export interface FpRpcTransactionStatus extends Struct {
readonly transactionHash: H256;
readonly transactionIndex: u32;
@@ -3146,10 +3148,10 @@
readonly logsBloom: EthbloomBloom;
}
- /** @name EthbloomBloom (406) */
+ /** @name EthbloomBloom (408) */
export interface EthbloomBloom extends U8aFixed {}
- /** @name EthereumReceiptReceiptV3 (408) */
+ /** @name EthereumReceiptReceiptV3 (410) */
export interface EthereumReceiptReceiptV3 extends Enum {
readonly isLegacy: boolean;
readonly asLegacy: EthereumReceiptEip658ReceiptData;
@@ -3160,7 +3162,7 @@
readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';
}
- /** @name EthereumReceiptEip658ReceiptData (409) */
+ /** @name EthereumReceiptEip658ReceiptData (411) */
export interface EthereumReceiptEip658ReceiptData extends Struct {
readonly statusCode: u8;
readonly usedGas: U256;
@@ -3168,14 +3170,14 @@
readonly logs: Vec<EthereumLog>;
}
- /** @name EthereumBlock (410) */
+ /** @name EthereumBlock (412) */
export interface EthereumBlock extends Struct {
readonly header: EthereumHeader;
readonly transactions: Vec<EthereumTransactionTransactionV2>;
readonly ommers: Vec<EthereumHeader>;
}
- /** @name EthereumHeader (411) */
+ /** @name EthereumHeader (413) */
export interface EthereumHeader extends Struct {
readonly parentHash: H256;
readonly ommersHash: H256;
@@ -3194,24 +3196,24 @@
readonly nonce: EthereumTypesHashH64;
}
- /** @name EthereumTypesHashH64 (412) */
+ /** @name EthereumTypesHashH64 (414) */
export interface EthereumTypesHashH64 extends U8aFixed {}
- /** @name PalletEthereumError (417) */
+ /** @name PalletEthereumError (419) */
export interface PalletEthereumError extends Enum {
readonly isInvalidSignature: boolean;
readonly isPreLogExists: boolean;
readonly type: 'InvalidSignature' | 'PreLogExists';
}
- /** @name PalletEvmCoderSubstrateError (418) */
+ /** @name PalletEvmCoderSubstrateError (420) */
export interface PalletEvmCoderSubstrateError extends Enum {
readonly isOutOfGas: boolean;
readonly isOutOfFund: boolean;
readonly type: 'OutOfGas' | 'OutOfFund';
}
- /** @name PalletEvmContractHelpersSponsoringModeT (419) */
+ /** @name PalletEvmContractHelpersSponsoringModeT (421) */
export interface PalletEvmContractHelpersSponsoringModeT extends Enum {
readonly isDisabled: boolean;
readonly isAllowlisted: boolean;
@@ -3219,20 +3221,20 @@
readonly type: 'Disabled' | 'Allowlisted' | 'Generous';
}
- /** @name PalletEvmContractHelpersError (421) */
+ /** @name PalletEvmContractHelpersError (423) */
export interface PalletEvmContractHelpersError extends Enum {
readonly isNoPermission: boolean;
readonly type: 'NoPermission';
}
- /** @name PalletEvmMigrationError (422) */
+ /** @name PalletEvmMigrationError (424) */
export interface PalletEvmMigrationError extends Enum {
readonly isAccountNotEmpty: boolean;
readonly isAccountIsNotMigrating: boolean;
readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';
}
- /** @name SpRuntimeMultiSignature (424) */
+ /** @name SpRuntimeMultiSignature (426) */
export interface SpRuntimeMultiSignature extends Enum {
readonly isEd25519: boolean;
readonly asEd25519: SpCoreEd25519Signature;
@@ -3243,34 +3245,34 @@
readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';
}
- /** @name SpCoreEd25519Signature (425) */
+ /** @name SpCoreEd25519Signature (427) */
export interface SpCoreEd25519Signature extends U8aFixed {}
- /** @name SpCoreSr25519Signature (427) */
+ /** @name SpCoreSr25519Signature (429) */
export interface SpCoreSr25519Signature extends U8aFixed {}
- /** @name SpCoreEcdsaSignature (428) */
+ /** @name SpCoreEcdsaSignature (430) */
export interface SpCoreEcdsaSignature extends U8aFixed {}
- /** @name FrameSystemExtensionsCheckSpecVersion (431) */
+ /** @name FrameSystemExtensionsCheckSpecVersion (433) */
export type FrameSystemExtensionsCheckSpecVersion = Null;
- /** @name FrameSystemExtensionsCheckGenesis (432) */
+ /** @name FrameSystemExtensionsCheckGenesis (434) */
export type FrameSystemExtensionsCheckGenesis = Null;
- /** @name FrameSystemExtensionsCheckNonce (435) */
+ /** @name FrameSystemExtensionsCheckNonce (437) */
export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}
- /** @name FrameSystemExtensionsCheckWeight (436) */
+ /** @name FrameSystemExtensionsCheckWeight (438) */
export type FrameSystemExtensionsCheckWeight = Null;
- /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (437) */
+ /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (439) */
export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
- /** @name OpalRuntimeRuntime (438) */
+ /** @name OpalRuntimeRuntime (440) */
export type OpalRuntimeRuntime = Null;
- /** @name PalletEthereumFakeTransactionFinalizer (439) */
+ /** @name PalletEthereumFakeTransactionFinalizer (441) */
export type PalletEthereumFakeTransactionFinalizer = Null;
} // declare module
tests/src/nesting/nest.test.tsdiffbeforeafterboth--- a/tests/src/nesting/nest.test.ts
+++ b/tests/src/nesting/nest.test.ts
@@ -2,6 +2,7 @@
import {tokenIdToAddress} from '../eth/util/helpers';
import usingApi, {executeTransaction} from '../substrate/substrate-api';
import {
+ addCollectionAdminExpectSuccess,
addToAllowListExpectSuccess,
createCollectionExpectSuccess,
createItemExpectSuccess,
@@ -20,10 +21,11 @@
let alice: IKeyringPair;
let bob: IKeyringPair;
+let charlie: IKeyringPair;
-describe('Integration Test: Nesting', () => {
+describe('Integration Test: Composite nesting tests', () => {
before(async () => {
- await usingApi(async (api, privateKeyWrapper) => {
+ await usingApi(async (_, privateKeyWrapper) => {
alice = privateKeyWrapper('//Alice');
bob = privateKeyWrapper('//Bob');
});
@@ -145,7 +147,79 @@
], 'Children contents check at deeper nesting');
});
});
+});
+describe('Integration Test: Various token type nesting', async () => {
+ before(async () => {
+ await usingApi(async (_, privateKeyWrapper) => {
+ alice = privateKeyWrapper('//Alice');
+ bob = privateKeyWrapper('//Bob');
+ charlie = privateKeyWrapper('//Charlie');
+ });
+ });
+
+ it('Admin (NFT): allows an Admin to nest a token', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collection, {nesting: {collectionAdmin: true}});
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+ const targetToken = await createItemExpectSuccess(alice, collection, 'NFT', charlie.address);
+
+ // Create a nested token
+ const nestedToken = await createItemExpectSuccess(bob, collection, 'NFT', {Ethereum: tokenIdToAddress(collection, targetToken)});
+ expect(await getTopmostTokenOwner(api, collection, nestedToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collection, nestedToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collection, targetToken).toLowerCase()});
+
+ // Create a token to be nested and nest
+ const newToken = await createItemExpectSuccess(bob, collection, 'NFT');
+ await transferExpectSuccess(collection, newToken, bob, {Ethereum: tokenIdToAddress(collection, targetToken)});
+ expect(await getTopmostTokenOwner(api, collection, newToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collection, newToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collection, targetToken).toLowerCase()});
+ });
+ });
+
+ it('Admin (NFT): Admin and Token Owner can operate together', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collection, {nesting: {tokenOwner: true, collectionAdmin: true}});
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+ const targetToken = await createItemExpectSuccess(alice, collection, 'NFT', charlie.address);
+
+ // Create a nested token by an administrator
+ const nestedToken = await createItemExpectSuccess(bob, collection, 'NFT', {Ethereum: tokenIdToAddress(collection, targetToken)});
+ expect(await getTopmostTokenOwner(api, collection, nestedToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collection, nestedToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collection, targetToken).toLowerCase()});
+
+ // Create a token and allow the owner to nest too
+ const newToken = await createItemExpectSuccess(alice, collection, 'NFT', charlie.address);
+ await transferExpectSuccess(collection, newToken, charlie, {Ethereum: tokenIdToAddress(collection, nestedToken)});
+ expect(await getTopmostTokenOwner(api, collection, newToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collection, newToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collection, nestedToken).toLowerCase()});
+ });
+ });
+
+ it('Admin (NFT): allows an Admin to nest a token (Restricted nesting)', async () => {
+ await usingApi(async api => {
+ const collectionA = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await addCollectionAdminExpectSuccess(alice, collectionA, bob.address);
+ const collectionB = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await addCollectionAdminExpectSuccess(alice, collectionB, bob.address);
+ await setCollectionPermissionsExpectSuccess(alice, collectionA, {nesting: {collectionAdmin: true, restricted:[collectionA, collectionB]}});
+ const targetToken = await createItemExpectSuccess(alice, collectionA, 'NFT', charlie.address);
+
+ // Create a nested token
+ const nestedToken = await createItemExpectSuccess(bob, collectionB, 'NFT', {Ethereum: tokenIdToAddress(collectionA, targetToken)});
+ expect(await getTopmostTokenOwner(api, collectionB, nestedToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collectionB, nestedToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collectionA, targetToken).toLowerCase()});
+
+ // Create a token to be nested and nest
+ const newToken = await createItemExpectSuccess(bob, collectionB, 'NFT');
+ await transferExpectSuccess(collectionB, newToken, bob, {Ethereum: tokenIdToAddress(collectionA, targetToken)});
+ expect(await getTopmostTokenOwner(api, collectionB, newToken)).to.be.deep.equal({Substrate: charlie.address});
+ expect(await getTokenOwner(api, collectionB, newToken)).to.be.deep.equal({Ethereum: tokenIdToAddress(collectionA, targetToken).toLowerCase()});
+ });
+ });
+
// ---------- Non-Fungible ----------
it('NFT: allows an Owner to nest/unnest their token', async () => {
@@ -248,7 +322,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
))).to.not.be.rejected;
// Nest a new token
@@ -271,7 +345,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
))).to.not.be.rejected;
// Nest a new token
@@ -283,7 +357,7 @@
describe('Negative Test: Nesting', async() => {
before(async () => {
- await usingApi(async (api, privateKeyWrapper) => {
+ await usingApi(async (_, privateKeyWrapper) => {
alice = privateKeyWrapper('//Alice');
bob = privateKeyWrapper('//Bob');
});
@@ -314,13 +388,121 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collection,
{Ethereum: tokenIdToAddress(collection, prevToken)},
- {nft: {const_data: [], variable_data: []}} as any,
+ {nft: {}} as any,
)), 'while creating nested token').to.be.rejectedWith(/^structure\.DepthLimit$/);
expect(await getTopmostTokenOwner(api, collection, prevToken)).to.be.deep.equal({Substrate: alice.address});
});
});
+ // ---------- Admin ------------
+
+ it('Admin (NFT): disallows an Admin to operate nesting when only TokenOwner is allowed', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collection, {nesting: {tokenOwner: true}});
+ await addCollectionAdminExpectSuccess(alice, collection, bob.address);
+ const targetToken = await createItemExpectSuccess(alice, collection, 'NFT');
+
+ // Try to create a nested token as collection admin when it's disallowed
+ await expect(executeTransaction(api, bob, api.tx.unique.createItem(
+ collection,
+ {Ethereum: tokenIdToAddress(collection, targetToken)},
+ {nft: {}} as any,
+ )), 'while creating nested token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
+
+ // Try to create and nest a token in the wrong collection
+ const newToken = await createItemExpectSuccess(bob, collection, 'NFT');
+ await expect(executeTransaction(
+ api,
+ bob,
+ api.tx.unique.transfer({Ethereum: tokenIdToAddress(collection, targetToken)}, collection, newToken, 1),
+ ), 'while nesting new token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
+ expect(await getTokenOwner(api, collection, newToken)).to.be.deep.equal({Substrate: bob.address});
+ });
+ });
+
+ it('Admin (NFT): disallows a Token Owner to operate nesting when only Admin is allowed', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collection, {nesting: {collectionAdmin: true}});
+ await addToAllowListExpectSuccess(alice, collection, bob.address);
+ await enableAllowListExpectSuccess(alice, collection);
+ await enablePublicMintingExpectSuccess(alice, collection);
+ const targetToken = await createItemExpectSuccess(alice, collection, 'NFT');
+
+ // Try to create a nested token as collection admin when it's disallowed
+ await expect(executeTransaction(api, bob, api.tx.unique.createItem(
+ collection,
+ {Ethereum: tokenIdToAddress(collection, targetToken)},
+ {nft: {}} as any,
+ )), 'while creating nested token').to.be.rejectedWith(/common\.AddressNotInAllowlist/);
+
+ // Try to create and nest a token in the wrong collection
+ const newToken = await createItemExpectSuccess(bob, collection, 'NFT');
+ await expect(executeTransaction(
+ api,
+ bob,
+ api.tx.unique.transfer({Ethereum: tokenIdToAddress(collection, targetToken)}, collection, newToken, 1),
+ ), 'while nesting new token').to.be.rejectedWith(/common\.AddressNotInAllowlist/);
+ expect(await getTokenOwner(api, collection, newToken)).to.be.deep.equal({Substrate: bob.address});
+ });
+ });
+
+ it('Admin (NFT): disallows an Admin to nest and unnest someone else\'s token', async () => {
+ await usingApi(async api => {
+ const collection = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collection, {nesting: {collectionAdmin: true}});
+
+ await addToAllowListExpectSuccess(alice, collection, bob.address);
+ await enableAllowListExpectSuccess(alice, collection);
+ await enablePublicMintingExpectSuccess(alice, collection);
+
+ // Create a token to attempt to be nested into
+ const targetToken = await createItemExpectSuccess(bob, collection, 'NFT');
+ const targetAddress = {Ethereum: tokenIdToAddress(collection, targetToken).toLowerCase()};
+
+ // Try to nest somebody else's token
+ const newToken = await createItemExpectSuccess(bob, collection, 'NFT');
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.transfer(targetAddress, collection, newToken, 1),
+ ), 'while nesting another\'s token token').to.be.rejectedWith(/common\.AddressNotInAllowlist/);
+ expect(await getTokenOwner(api, collection, newToken)).to.be.deep.equal({Substrate: bob.address});
+
+ // Nest a token as admin and try to unnest it, now belonging to someone else
+ const nestedToken = await createItemExpectSuccess(alice, collection, 'NFT', targetAddress);
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.transferFrom(targetAddress, normalizeAccountId(alice), collection, nestedToken, 1),
+ ), 'while unnesting another\'s token').to.be.rejectedWith(/common\.AddressNotInAllowlist/);
+ expect(await getTokenOwner(api, collection, nestedToken)).to.be.deep.equal(targetAddress);
+ expect(await getTopmostTokenOwner(api, collection, nestedToken)).to.be.deep.equal({Substrate: bob.address});
+ });
+ });
+
+ it('Admin (NFT): disallows an Admin to nest a token from an unlisted collection (Restricted nesting)', async () => {
+ await usingApi(async api => {
+ const collectionA = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ const collectionB = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+ await setCollectionPermissionsExpectSuccess(alice, collectionA, {nesting: {collectionAdmin: true, restricted:[collectionA]}});
+
+ // Create a token to attempt to be nested into
+ const targetToken = await createItemExpectSuccess(alice, collectionA, 'NFT');
+
+ // Try to create and nest a token in the wrong collection
+ const newToken = await createItemExpectSuccess(alice, collectionB, 'NFT');
+ await expect(executeTransaction(
+ api,
+ alice,
+ api.tx.unique.transfer({Ethereum: tokenIdToAddress(collectionA, targetToken)}, collectionB, newToken, 1),
+ ), 'while nesting a foreign token').to.be.rejectedWith(/common\.SourceCollectionIsNotAllowedToNest/);
+ expect(await getTokenOwner(api, collectionB, newToken)).to.be.deep.equal({Substrate: alice.address});
+ });
+ });
+
// ---------- Non-Fungible ----------
it('NFT: disallows to nest token if nesting is disabled', async () => {
@@ -333,7 +515,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collection,
{Ethereum: tokenIdToAddress(collection, targetToken)},
- {nft: {const_data: [], variable_data: []}} as any,
+ {nft: {}} as any,
)), 'while creating nested token').to.be.rejectedWith(/^common\.UserIsNotAllowedToNest$/);
// Create a token to be nested
@@ -361,7 +543,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collection,
{Ethereum: tokenIdToAddress(collection, targetToken)},
- {nft: {const_data: [], variable_data: []}} as any,
+ {nft: {}} as any,
)), 'while creating nested token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection
@@ -387,7 +569,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collection,
{Ethereum: tokenIdToAddress(collection, targetToken)},
- {nft: {const_data: [], variable_data: []}} as any,
+ {nft: {}} as any,
)), 'while creating nested token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection
@@ -409,7 +591,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collection,
{Ethereum: tokenIdToAddress(collection, targetToken)},
- {nft: {const_data: [], variable_data: []}} as any,
+ {nft: {}} as any,
)), 'while creating nested token').to.be.rejectedWith(/common\.SourceCollectionIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection
@@ -543,7 +725,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
)), 'while creating a nested token').to.be.rejectedWith(/^common\.UserIsNotAllowedToNest$/);
// Create a token to be nested
@@ -579,7 +761,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
)), 'while creating a nested token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection
@@ -606,7 +788,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
)), 'while creating a nested token').to.be.rejectedWith(/common\.UserIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection
@@ -630,7 +812,7 @@
await expect(executeTransaction(api, alice, api.tx.unique.createItem(
collectionRFT,
targetAddress,
- {ReFungible: {const_data: [], pieces: 100}},
+ {ReFungible: {pieces: 100}},
)), 'while creating a nested token').to.be.rejectedWith(/common\.SourceCollectionIsNotAllowedToNest/);
// Try to create and nest a token in the wrong collection