git.delta.rocks / unique-network / refs/commits / 4fa2f8e12260

difftreelog

Merge remote-tracking branch 'origin/develop' into develop

str-mv2022-04-08parents: #8bbc753 #d0079d6.patch.diff
in: master

62 files changed

modified.gitignorediffbeforeafterboth
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,7 @@
 *store_key*.json
 
 /.idea/
+/.cargo/
 
 tests/.vscode
 cumulus-parachain/
modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -68,7 +68,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "once_cell",
  "version_check",
 ]
@@ -188,9 +188,9 @@
 
 [[package]]
 name = "async-global-executor"
-version = "2.0.3"
+version = "2.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c026b7e44f1316b567ee750fea85103f87fcb80792b860e979f221259796ca0a"
+checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43"
 dependencies = [
  "async-channel",
  "async-executor",
@@ -306,9 +306,9 @@
 
 [[package]]
 name = "async-trait"
-version = "0.1.52"
+version = "0.1.53"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3"
+checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -392,7 +392,7 @@
 checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1"
 dependencies = [
  "futures-core",
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "instant",
  "pin-project-lite 0.2.8",
  "rand 0.8.5",
@@ -440,9 +440,9 @@
 
 [[package]]
 name = "base64ct"
-version = "1.4.1"
+version = "1.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "71acf5509fc522cce1b100ac0121c635129bfd4d91cdf036bcc9b9935f97ccf5"
+checksum = "dea908e7347a8c64e378c17e30ef880ad73e3b4498346b055c2c00ea342f3179"
 
 [[package]]
 name = "beef"
@@ -990,7 +990,7 @@
 dependencies = [
  "camino",
  "cargo-platform",
- "semver 1.0.6",
+ "semver 1.0.7",
  "serde",
  "serde_json",
 ]
@@ -1111,9 +1111,9 @@
 
 [[package]]
 name = "clap"
-version = "3.1.6"
+version = "3.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8c93436c21e4698bacadf42917db28b23017027a4deccb35dbe47a7e7840123"
+checksum = "71c47df61d9e16dc010b55dba1952a57d8c215dbb533fd13cdd13369aac73b1c"
 dependencies = [
  "atty",
  "bitflags",
@@ -1128,9 +1128,9 @@
 
 [[package]]
 name = "clap_derive"
-version = "3.1.4"
+version = "3.1.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "da95d038ede1a964ce99f49cbe27a7fb538d1da595e4b4f70b8c8f338d17bf16"
+checksum = "a3aab4734e083b809aaf5794e14e756d1c798d2c69c7f7de7a09a2f5214993c1"
 dependencies = [
  "heck 0.4.0",
  "proc-macro-error",
@@ -1913,9 +1913,9 @@
 
 [[package]]
 name = "darling"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d0d720b8683f8dd83c65155f0530560cba68cd2bf395f6513a483caee57ff7f4"
+checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c"
 dependencies = [
  "darling_core",
  "darling_macro",
@@ -1923,9 +1923,9 @@
 
 [[package]]
 name = "darling_core"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a340f241d2ceed1deb47ae36c4144b2707ec7dd0b649f894cb39bb595986324"
+checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610"
 dependencies = [
  "fnv",
  "ident_case",
@@ -1937,9 +1937,9 @@
 
 [[package]]
 name = "darling_macro"
-version = "0.13.1"
+version = "0.13.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72c41b3b7352feb3211a0d743dc5700a4e3b60f51bd2b368892d1e0f9a95f44b"
+checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835"
 dependencies = [
  "darling_core",
  "quote",
@@ -2484,7 +2484,7 @@
 [[package]]
 name = "fc-consensus"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "async-trait",
  "derive_more",
@@ -2511,7 +2511,7 @@
 [[package]]
 name = "fc-db"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "fp-storage",
  "kvdb",
@@ -2527,7 +2527,7 @@
 [[package]]
 name = "fc-mapping-sync"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "fc-consensus",
  "fc-db",
@@ -2545,7 +2545,7 @@
 [[package]]
 name = "fc-rpc"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2591,7 +2591,7 @@
 [[package]]
 name = "fc-rpc-core"
 version = "1.1.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2725,7 +2725,7 @@
 [[package]]
 name = "fp-consensus"
 version = "2.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "parity-scale-codec",
@@ -2739,7 +2739,7 @@
 [[package]]
 name = "fp-evm"
 version = "3.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "evm",
  "impl-trait-for-tuples",
@@ -2751,9 +2751,18 @@
 ]
 
 [[package]]
+name = "fp-evm-mapping"
+version = "0.1.0"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
+dependencies = [
+ "frame-support",
+ "sp-core",
+]
+
+[[package]]
 name = "fp-rpc"
 version = "3.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
@@ -2770,7 +2779,7 @@
 [[package]]
 name = "fp-self-contained"
 version = "1.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "frame-support",
@@ -2787,7 +2796,7 @@
 [[package]]
 name = "fp-storage"
 version = "2.0.0"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 
 [[package]]
 name = "frame-benchmarking"
@@ -3234,9 +3243,9 @@
 
 [[package]]
 name = "getrandom"
-version = "0.2.5"
+version = "0.2.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77"
+checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -3308,9 +3317,9 @@
 
 [[package]]
 name = "h2"
-version = "0.3.12"
+version = "0.3.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62eeb471aa3e3c9197aa4bfeabfe02982f6dc96f750486c0bb0009ac58b26d2b"
+checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57"
 dependencies = [
  "bytes 1.1.0",
  "fnv",
@@ -3321,7 +3330,7 @@
  "indexmap",
  "slab",
  "tokio 1.17.0",
- "tokio-util",
+ "tokio-util 0.7.1",
  "tracing",
 ]
 
@@ -3679,9 +3688,9 @@
 
 [[package]]
 name = "indexmap"
-version = "1.8.0"
+version = "1.8.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223"
+checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee"
 dependencies = [
  "autocfg",
  "hashbrown 0.11.2",
@@ -3906,7 +3915,7 @@
  "log",
  "tokio 1.17.0",
  "tokio-stream",
- "tokio-util",
+ "tokio-util 0.6.9",
  "unicase",
 ]
 
@@ -3976,7 +3985,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.23.3",
- "tokio-util",
+ "tokio-util 0.6.9",
  "tracing",
  "webpki-roots 0.22.2",
 ]
@@ -3997,7 +4006,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.23.3",
- "tokio-util",
+ "tokio-util 0.6.9",
  "tracing",
  "webpki-roots 0.22.2",
 ]
@@ -4158,7 +4167,7 @@
  "thiserror",
  "tokio 1.17.0",
  "tokio-rustls 0.22.0",
- "tokio-util",
+ "tokio-util 0.6.9",
 ]
 
 [[package]]
@@ -4769,7 +4778,7 @@
  "libp2p-core",
  "libp2p-swarm",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "rand 0.7.3",
  "smallvec",
  "unsigned-varint 0.7.1",
@@ -4999,10 +5008,11 @@
 
 [[package]]
 name = "lock_api"
-version = "0.4.6"
+version = "0.4.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b"
+checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53"
 dependencies = [
+ "autocfg",
  "scopeguard",
 ]
 
@@ -5027,9 +5037,9 @@
 
 [[package]]
 name = "lru"
-version = "0.7.3"
+version = "0.7.5"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcb87f3080f6d1d69e8c564c0fcfde1d7aa8cc451ce40cae89479111f03bc0eb"
+checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889"
 dependencies = [
  "hashbrown 0.11.2",
 ]
@@ -5576,6 +5586,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-benchmarking",
@@ -5632,7 +5643,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -5831,7 +5841,7 @@
 [[package]]
 name = "pallet-base-fee"
 version = "1.0.0"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "frame-support",
  "frame-system",
@@ -5984,6 +5994,7 @@
 version = "0.1.0"
 dependencies = [
  "evm-coder",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "pallet-evm",
@@ -5995,7 +6006,6 @@
  "sp-runtime",
  "sp-std",
  "up-data-structs",
- "up-evm-mapping",
 ]
 
 [[package]]
@@ -6058,13 +6068,14 @@
 [[package]]
 name = "pallet-ethereum"
 version = "4.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "ethereum",
  "ethereum-types",
  "evm",
  "fp-consensus",
  "fp-evm",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "fp-storage",
@@ -6088,12 +6099,13 @@
 [[package]]
 name = "pallet-evm"
 version = "6.0.0-dev"
-source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18#7c8ce8f83e0c8a5b57655622b721f8655b161903"
+source = "git+https://github.com/uniquenetwork/frontier.git?branch=unique-polkadot-v0.9.18-2#82310d1dd3189f34bd901a9ac894ad33eca5cf89"
 dependencies = [
  "evm",
  "evm-gasometer",
  "evm-runtime",
  "fp-evm",
+ "fp-evm-mapping",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -6136,6 +6148,7 @@
 version = "0.1.0"
 dependencies = [
  "evm-coder",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "log",
@@ -6171,6 +6184,7 @@
 version = "0.1.0"
 dependencies = [
  "fp-evm",
+ "fp-evm-mapping",
  "frame-support",
  "frame-system",
  "pallet-ethereum",
@@ -6181,7 +6195,6 @@
  "sp-io",
  "sp-runtime",
  "sp-std",
- "up-evm-mapping",
  "up-sponsorship",
 ]
 
@@ -6195,6 +6208,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "pallet-evm-coder-substrate",
  "parity-scale-codec",
  "scale-info",
@@ -6421,6 +6435,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "pallet-evm-coder-substrate",
  "parity-scale-codec",
  "scale-info",
@@ -6537,6 +6552,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "scale-info",
  "sp-core",
@@ -6672,7 +6688,7 @@
 [[package]]
 name = "pallet-template-transaction-payment"
 version = "3.0.0"
-source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#e914a799e5ff1c18383a614ea99e87dd7f3f446e"
+source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#7bc842b35a53f762ee6ee89e5f5bef84a284c9f4"
 dependencies = [
  "frame-benchmarking",
  "frame-support",
@@ -6795,6 +6811,7 @@
  "ethereum",
  "evm-coder",
  "fp-evm",
+ "fp-evm-mapping",
  "frame-benchmarking",
  "frame-support",
  "frame-system",
@@ -6821,7 +6838,6 @@
  "sp-runtime",
  "sp-std",
  "up-data-structs",
- "up-evm-mapping",
  "up-sponsorship",
 ]
 
@@ -6925,9 +6941,9 @@
 
 [[package]]
 name = "parity-db"
-version = "0.3.9"
+version = "0.3.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3d121a9af17a43efd0a38c6afa508b927ba07785bd4709efb2ac03bf77efef8d"
+checksum = "b3e7f385d61562f5834282b90aa50b41f38a35cf64d5209b8b05487b50553dbe"
 dependencies = [
  "blake2-rfc",
  "crc32fast",
@@ -6998,7 +7014,7 @@
  "ethereum-types",
  "hashbrown 0.12.0",
  "impl-trait-for-tuples",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-util-mem-derive",
  "parking_lot 0.12.0",
  "primitive-types",
@@ -7074,7 +7090,7 @@
 checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58"
 dependencies = [
  "lock_api",
- "parking_lot_core 0.9.1",
+ "parking_lot_core 0.9.2",
 ]
 
 [[package]]
@@ -7093,9 +7109,9 @@
 
 [[package]]
 name = "parking_lot_core"
-version = "0.9.1"
+version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28141e0cc4143da2443301914478dc976a61ffdb3f043058310c70df2fed8954"
+checksum = "995f667a6c822200b0433ac218e05582f0e2efa1b922a3fd2fbaadc5f87bab37"
 dependencies = [
  "cfg-if 1.0.0",
  "libc",
@@ -7106,9 +7122,9 @@
 
 [[package]]
 name = "paste"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5"
+checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc"
 
 [[package]]
 name = "pbkdf2"
@@ -7270,9 +7286,9 @@
 
 [[package]]
 name = "pkg-config"
-version = "0.3.24"
+version = "0.3.25"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe"
+checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
 
 [[package]]
 name = "platforms"
@@ -7315,7 +7331,7 @@
  "derive_more",
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7337,7 +7353,7 @@
 dependencies = [
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7446,7 +7462,7 @@
  "derive_more",
  "fatality",
  "futures 0.3.21",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-erasure-coding",
  "polkadot-node-network-protocol",
@@ -7542,7 +7558,7 @@
  "futures 0.3.21",
  "futures-timer",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "merlin",
  "parity-scale-codec",
  "polkadot-node-jaeger",
@@ -7671,7 +7687,7 @@
  "fatality",
  "futures 0.3.21",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "polkadot-node-primitives",
  "polkadot-node-subsystem",
@@ -7897,7 +7913,7 @@
  "futures 0.3.21",
  "itertools",
  "kvdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "metered-channel",
  "parity-db",
  "parity-scale-codec",
@@ -7926,7 +7942,7 @@
 dependencies = [
  "futures 0.3.21",
  "futures-timer",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-util-mem",
  "parking_lot 0.12.0",
  "polkadot-node-metrics",
@@ -8273,7 +8289,7 @@
  "kusama-runtime",
  "kvdb",
  "kvdb-rocksdb",
- "lru 0.7.3",
+ "lru 0.7.5",
  "pallet-babe",
  "pallet-im-online",
  "pallet-mmr-primitives",
@@ -8608,9 +8624,9 @@
 
 [[package]]
 name = "proc-macro2"
-version = "1.0.36"
+version = "1.0.37"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029"
+checksum = "ec757218438d5fda206afc041538b2f6d889286160d649a86a24d37e1235afd1"
 dependencies = [
  "unicode-xid",
 ]
@@ -8684,9 +8700,9 @@
 
 [[package]]
 name = "psm"
-version = "0.1.17"
+version = "0.1.18"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6eca0fa5dd7c4c96e184cec588f0b1db1ee3165e678db21c09793105acb17e6f"
+checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a"
 dependencies = [
  "cc",
 ]
@@ -8704,6 +8720,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-executive",
@@ -8757,7 +8774,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -8789,9 +8805,9 @@
 
 [[package]]
 name = "quote"
-version = "1.0.16"
+version = "1.0.17"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b4af2ec4714533fcdf07e886f17025ace8b997b9ce51204ee69b6da831c3da57"
+checksum = "632d02bff7f874a36f33ea8bb416cd484b90cc66c1194b1a1110d067a7013f58"
 dependencies = [
  "proc-macro2",
 ]
@@ -8862,7 +8878,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
 ]
 
 [[package]]
@@ -8926,20 +8942,20 @@
 
 [[package]]
 name = "redox_syscall"
-version = "0.2.11"
+version = "0.2.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c"
+checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42"
 dependencies = [
  "bitflags",
 ]
 
 [[package]]
 name = "redox_users"
-version = "0.4.2"
+version = "0.4.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7776223e2696f1aa4c6b0170e83212f47296a00424305117d013dfe86fb0fe55"
+checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
 dependencies = [
- "getrandom 0.2.5",
+ "getrandom 0.2.6",
  "redox_syscall",
  "thiserror",
 ]
@@ -9253,7 +9269,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
 dependencies = [
- "semver 1.0.6",
+ "semver 1.0.7",
 ]
 
 [[package]]
@@ -9974,7 +9990,7 @@
  "linked-hash-map",
  "linked_hash_set",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "parking_lot 0.12.0",
  "pin-project 1.0.10",
@@ -10012,7 +10028,7 @@
  "futures-timer",
  "libp2p",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "sc-network",
  "sp-runtime",
  "substrate-prometheus-endpoint",
@@ -10532,9 +10548,9 @@
 
 [[package]]
 name = "semver"
-version = "1.0.6"
+version = "1.0.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a3381e03edd24287172047536f20cabde766e2cd3e65e6b00fb3af51c4f38d"
+checksum = "d65bd28f48be7196d222d95b9243287f48d27aca604e08497513019ff0502cc4"
 dependencies = [
  "serde",
 ]
@@ -10747,9 +10763,9 @@
 
 [[package]]
 name = "slab"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5"
+checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32"
 
 [[package]]
 name = "slot-range-helper"
@@ -10940,7 +10956,7 @@
 dependencies = [
  "futures 0.3.21",
  "log",
- "lru 0.7.3",
+ "lru 0.7.5",
  "parity-scale-codec",
  "parking_lot 0.12.0",
  "sp-api",
@@ -11801,9 +11817,9 @@
 
 [[package]]
 name = "syn"
-version = "1.0.89"
+version = "1.0.91"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54"
+checksum = "b683b2b825c8eef438b77c36a06dc262294da3d5a5813fac20da149241dcd44d"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -12094,6 +12110,20 @@
 ]
 
 [[package]]
+name = "tokio-util"
+version = "0.7.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764"
+dependencies = [
+ "bytes 1.1.0",
+ "futures-core",
+ "futures-sink",
+ "pin-project-lite 0.2.8",
+ "tokio 1.17.0",
+ "tracing",
+]
+
+[[package]]
 name = "toml"
 version = "0.5.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -12133,9 +12163,9 @@
 
 [[package]]
 name = "tracing-core"
-version = "0.1.23"
+version = "0.1.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c"
+checksum = "90442985ee2f57c9e1b548ee72ae842f4a9a20e3f417cc38dbc5dc684d9bb4ee"
 dependencies = [
  "lazy_static",
  "valuable",
@@ -12333,6 +12363,7 @@
  "jsonrpc-core-client",
  "jsonrpc-derive",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "sp-api",
  "sp-blockchain",
@@ -12475,6 +12506,7 @@
  "substrate-build-script-utils",
  "substrate-frame-rpc-system",
  "substrate-prometheus-endpoint",
+ "tokio 1.17.0",
  "unique-rpc",
  "unique-runtime",
  "unique-runtime-common",
@@ -12542,6 +12574,7 @@
  "cumulus-primitives-timestamp",
  "cumulus-primitives-utility",
  "derivative",
+ "fp-evm-mapping",
  "fp-rpc",
  "fp-self-contained",
  "frame-benchmarking",
@@ -12598,7 +12631,6 @@
  "substrate-wasm-builder",
  "unique-runtime-common",
  "up-data-structs",
- "up-evm-mapping",
  "up-rpc",
  "xcm",
  "xcm-builder",
@@ -12613,6 +12645,7 @@
  "frame-support",
  "frame-system",
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "scale-info",
  "sp-consensus-aura",
@@ -12682,18 +12715,11 @@
 ]
 
 [[package]]
-name = "up-evm-mapping"
-version = "0.1.0"
-dependencies = [
- "frame-support",
- "sp-core",
-]
-
-[[package]]
 name = "up-rpc"
 version = "0.1.0"
 dependencies = [
  "pallet-common",
+ "pallet-evm",
  "parity-scale-codec",
  "sp-api",
  "sp-core",
@@ -12705,7 +12731,7 @@
 [[package]]
 name = "up-sponsorship"
 version = "0.1.0"
-source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#e914a799e5ff1c18383a614ea99e87dd7f3f446e"
+source = "git+https://github.com/UniqueNetwork/pallet-sponsoring?branch=polkadot-v0.9.18#7bc842b35a53f762ee6ee89e5f5bef84a284c9f4"
 dependencies = [
  "impl-trait-for-tuples",
 ]
@@ -13313,9 +13339,9 @@
 
 [[package]]
 name = "windows-sys"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3df6e476185f92a12c072be4a189a0210dcdcf512a1891d6dff9edb874deadc6"
+checksum = "5acdd78cb4ba54c0045ac14f62d8f94a03d10047904ae2a40afa1e99d8f70825"
 dependencies = [
  "windows_aarch64_msvc",
  "windows_i686_gnu",
@@ -13326,33 +13352,33 @@
 
 [[package]]
 name = "windows_aarch64_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5"
+checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d"
 
 [[package]]
 name = "windows_i686_gnu"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615"
+checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed"
 
 [[package]]
 name = "windows_i686_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172"
+checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956"
 
 [[package]]
 name = "windows_x86_64_gnu"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc"
+checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4"
 
 [[package]]
 name = "windows_x86_64_msvc"
-version = "0.32.0"
+version = "0.34.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316"
+checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9"
 
 [[package]]
 name = "winreg"
modifiedclient/rpc/Cargo.tomldiffbeforeafterboth
--- a/client/rpc/Cargo.toml
+++ b/client/rpc/Cargo.toml
@@ -18,3 +18,4 @@
 sp-core = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 sp-rpc = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 sp-runtime = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
modifiedclient/rpc/src/lib.rsdiffbeforeafterboth
--- a/client/rpc/src/lib.rs
+++ b/client/rpc/src/lib.rs
@@ -19,7 +19,7 @@
 use codec::Decode;
 use jsonrpc_core::{Error as RpcError, ErrorCode, Result};
 use jsonrpc_derive::rpc;
-use up_data_structs::{Collection, CollectionId, CollectionStats, TokenId};
+use up_data_structs::{Collection, CollectionId, CollectionStats, CollectionLimits, TokenId};
 use sp_api::{BlockId, BlockT, ProvideRuntimeApi, ApiExt};
 use sp_blockchain::HeaderBackend;
 use up_rpc::UniqueApi as UniqueRuntimeApi;
@@ -128,6 +128,12 @@
 		token: TokenId,
 		at: Option<BlockHash>,
 	) -> Result<Option<u64>>;
+	#[rpc(name = "unique_effectiveCollectionLimits")]
+	fn effective_collection_limits(
+		&self,
+		collection_id: CollectionId,
+		at: Option<BlockHash>,
+	) -> Result<Option<CollectionLimits>>;
 }
 
 pub struct Unique<C, P> {
@@ -210,7 +216,7 @@
 	AccountId: Decode,
 	C: 'static + ProvideRuntimeApi<Block> + HeaderBackend<Block>,
 	C::Api: UniqueRuntimeApi<Block, CrossAccountId, AccountId>,
-	CrossAccountId: pallet_common::account::CrossAccountId<AccountId>,
+	CrossAccountId: pallet_evm::account::CrossAccountId<AccountId>,
 {
 	pass_method!(account_tokens(collection: CollectionId, account: CrossAccountId) -> Vec<TokenId>);
 	pass_method!(token_exists(collection: CollectionId, token: TokenId) -> bool);
@@ -232,4 +238,5 @@
 	pass_method!(collection_by_id(collection: CollectionId) -> Option<Collection<AccountId>>);
 	pass_method!(collection_stats() -> CollectionStats);
 	pass_method!(next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Option<u64>);
+	pass_method!(effective_collection_limits(collection_id: CollectionId) -> Option<CollectionLimits>);
 }
modifiednode/cli/Cargo.tomldiffbeforeafterboth
--- a/node/cli/Cargo.toml
+++ b/node/cli/Cargo.toml
@@ -302,13 +302,13 @@
 jsonrpc-pubsub = "18.0.0"
 tokio = { version = "1.17.0", features = ["time"] }
 
-fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-consensus = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-db = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+fc-rpc-core = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-consensus = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-mapping-sync = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-db = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 unique-rpc = { default-features = false, path = "../rpc" }
 
modifiednode/cli/src/chain_spec.rsdiffbeforeafterboth
--- a/node/cli/src/chain_spec.rs
+++ b/node/cli/src/chain_spec.rs
@@ -212,6 +212,16 @@
 				vec![
 					get_account_id_from_seed::<sr25519::Public>("Alice"),
 					get_account_id_from_seed::<sr25519::Public>("Bob"),
+					get_account_id_from_seed::<sr25519::Public>("Charlie"),
+					get_account_id_from_seed::<sr25519::Public>("Dave"),
+					get_account_id_from_seed::<sr25519::Public>("Eve"),
+					get_account_id_from_seed::<sr25519::Public>("Ferdie"),
+					get_account_id_from_seed::<sr25519::Public>("Alice//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Bob//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Charlie//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Dave//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Eve//stash"),
+					get_account_id_from_seed::<sr25519::Public>("Ferdie//stash"),
 				],
 				1000
 			)
modifiednode/rpc/Cargo.tomldiffbeforeafterboth
--- a/node/rpc/Cargo.toml
+++ b/node/rpc/Cargo.toml
@@ -41,12 +41,12 @@
 substrate-frame-rpc-system = { git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 tokio = { version = "0.2.25", features = ["macros", "sync"] }
 
-pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-ethereum = { git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-rpc-core = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-db = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fc-mapping-sync = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 pallet-common = { default-features = false, path = "../../pallets/common" }
 unique-runtime-common = { default-features = false, path = "../../runtime/common" }
modifiedpallets/common/Cargo.tomldiffbeforeafterboth
--- a/pallets/common/Cargo.toml
+++ b/pallets/common/Cargo.toml
@@ -16,11 +16,11 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = '../../primitives/evm-mapping' }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 serde = { version = "1.0.130", default-features = false }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
@@ -33,7 +33,7 @@
     "frame-system/std",
     "sp-runtime/std",
     "sp-std/std",
-    "up-evm-mapping/std",
+    "fp-evm-mapping/std",
     "up-data-structs/std",
     "pallet-evm/std",
 ]
deletedpallets/common/src/account.rsdiffbeforeafterboth
--- a/pallets/common/src/account.rs
+++ /dev/null
@@ -1,194 +0,0 @@
-// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
-// This file is part of Unique Network.
-
-// Unique Network is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Unique Network is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
-
-use crate::Config;
-use codec::{Encode, EncodeLike, Decode, MaxEncodedLen};
-use sp_core::H160;
-use scale_info::{Type, TypeInfo};
-use core::cmp::Ordering;
-use serde::{Serialize, Deserialize};
-use pallet_evm::AddressMapping;
-use sp_std::vec::Vec;
-use sp_std::clone::Clone;
-pub use up_evm_mapping::EvmBackwardsAddressMapping;
-
-pub trait CrossAccountId<AccountId>:
-	Encode + EncodeLike + Decode + TypeInfo + MaxEncodedLen + Clone + PartialEq + Ord + core::fmt::Debug
-// +
-// Serialize + Deserialize<'static>
-{
-	fn as_sub(&self) -> &AccountId;
-	fn as_eth(&self) -> &H160;
-
-	fn from_sub(account: AccountId) -> Self;
-	fn from_eth(account: H160) -> Self;
-
-	fn conv_eq(&self, other: &Self) -> bool;
-}
-
-#[derive(Encode, Decode, Serialize, Deserialize, TypeInfo, MaxEncodedLen)]
-#[serde(rename_all = "camelCase")]
-enum BasicCrossAccountIdRepr<AccountId> {
-	Substrate(AccountId),
-	Ethereum(H160),
-}
-
-#[derive(PartialEq, Eq)]
-pub struct BasicCrossAccountId<T: Config> {
-	/// If true - then ethereum is canonical encoding
-	from_ethereum: bool,
-	substrate: T::AccountId,
-	ethereum: H160,
-}
-
-impl<T: Config> MaxEncodedLen for BasicCrossAccountId<T> {
-	fn max_encoded_len() -> usize {
-		<BasicCrossAccountIdRepr<T::AccountId>>::max_encoded_len()
-	}
-}
-
-impl<T: Config> TypeInfo for BasicCrossAccountId<T> {
-	type Identity = Self;
-
-	fn type_info() -> Type {
-		<BasicCrossAccountIdRepr<T::AccountId>>::type_info()
-	}
-}
-
-impl<T: Config> core::fmt::Debug for BasicCrossAccountId<T> {
-	fn fmt(&self, fmt: &mut core::fmt::Formatter) -> core::fmt::Result {
-		if self.from_ethereum {
-			fmt.debug_tuple("CrossAccountId::Ethereum")
-				.field(&self.ethereum)
-				.finish()
-		} else {
-			fmt.debug_tuple("CrossAccountId::Substrate")
-				.field(&self.substrate)
-				.finish()
-		}
-	}
-}
-
-impl<T: Config> PartialOrd for BasicCrossAccountId<T> {
-	fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
-		Some(self.substrate.cmp(&other.substrate))
-	}
-}
-
-impl<T: Config> Ord for BasicCrossAccountId<T> {
-	fn cmp(&self, other: &Self) -> Ordering {
-		self.partial_cmp(other)
-			.expect("substrate account is total ordered")
-	}
-}
-
-impl<T: Config> Clone for BasicCrossAccountId<T> {
-	fn clone(&self) -> Self {
-		Self {
-			from_ethereum: self.from_ethereum,
-			substrate: self.substrate.clone(),
-			ethereum: self.ethereum,
-		}
-	}
-}
-impl<T: Config> Encode for BasicCrossAccountId<T> {
-	fn encode(&self) -> Vec<u8> {
-		BasicCrossAccountIdRepr::from(self.clone()).encode()
-	}
-}
-impl<T: Config> EncodeLike for BasicCrossAccountId<T> {}
-impl<T: Config> Decode for BasicCrossAccountId<T> {
-	fn decode<I>(input: &mut I) -> Result<Self, codec::Error>
-	where
-		I: codec::Input,
-	{
-		Ok(BasicCrossAccountIdRepr::decode(input)?.into())
-	}
-}
-impl<T> Serialize for BasicCrossAccountId<T>
-where
-	T: Config,
-	T::AccountId: Serialize,
-{
-	fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
-	where
-		S: serde::Serializer,
-	{
-		let repr = BasicCrossAccountIdRepr::from(self.clone());
-		(&repr).serialize(serializer)
-	}
-}
-impl<'de, T> Deserialize<'de> for BasicCrossAccountId<T>
-where
-	T: Config,
-	T::AccountId: Deserialize<'de>,
-{
-	fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
-	where
-		D: serde::Deserializer<'de>,
-	{
-		Ok(BasicCrossAccountIdRepr::deserialize(deserializer)?.into())
-	}
-}
-impl<T: Config> CrossAccountId<T::AccountId> for BasicCrossAccountId<T> {
-	fn as_sub(&self) -> &T::AccountId {
-		&self.substrate
-	}
-	fn as_eth(&self) -> &H160 {
-		&self.ethereum
-	}
-	fn from_sub(substrate: T::AccountId) -> Self {
-		Self {
-			ethereum: T::EvmBackwardsAddressMapping::from_account_id(substrate.clone()),
-			substrate,
-			from_ethereum: false,
-		}
-	}
-	fn from_eth(ethereum: H160) -> Self {
-		Self {
-			ethereum,
-			substrate: T::EvmAddressMapping::into_account_id(ethereum),
-			from_ethereum: true,
-		}
-	}
-	fn conv_eq(&self, other: &Self) -> bool {
-		if self.from_ethereum == other.from_ethereum {
-			self.substrate == other.substrate && self.ethereum == other.ethereum
-		} else if self.from_ethereum {
-			// ethereum is canonical encoding, but we need to compare derived address
-			self.substrate == other.substrate
-		} else {
-			self.ethereum == other.ethereum
-		}
-	}
-}
-impl<T: Config> From<BasicCrossAccountIdRepr<T::AccountId>> for BasicCrossAccountId<T> {
-	fn from(repr: BasicCrossAccountIdRepr<T::AccountId>) -> Self {
-		match repr {
-			BasicCrossAccountIdRepr::Substrate(s) => Self::from_sub(s),
-			BasicCrossAccountIdRepr::Ethereum(e) => Self::from_eth(e),
-		}
-	}
-}
-impl<T: Config> From<BasicCrossAccountId<T>> for BasicCrossAccountIdRepr<T::AccountId> {
-	fn from(v: BasicCrossAccountId<T>) -> Self {
-		if v.from_ethereum {
-			BasicCrossAccountIdRepr::Ethereum(*v.as_eth())
-		} else {
-			BasicCrossAccountIdRepr::Substrate(v.as_sub().clone())
-		}
-	}
-}
modifiedpallets/common/src/lib.rsdiffbeforeafterboth
--- a/pallets/common/src/lib.rs
+++ b/pallets/common/src/lib.rs
@@ -19,7 +19,7 @@
 use core::ops::{Deref, DerefMut};
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
 use sp_std::vec::Vec;
-use account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 use frame_support::{
 	dispatch::{DispatchErrorWithPostInfo, DispatchResultWithPostInfo},
 	ensure, fail,
@@ -33,12 +33,11 @@
 	TokenId, Weight, WithdrawReasons, CollectionStats, MAX_TOKEN_OWNERSHIP, CollectionMode,
 	NFT_SPONSOR_TRANSFER_TIMEOUT, FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
 	REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, MAX_SPONSOR_TIMEOUT, CUSTOM_DATA_LIMIT, CollectionLimits,
-	CustomDataLimit, CreateCollectionData, SponsorshipState, CreateItemExData,
+	CustomDataLimit, CreateCollectionData, SponsorshipState, CreateItemExData, SponsoringRateLimit,
 };
 pub use pallet::*;
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
-pub mod account;
 #[cfg(feature = "runtime-benchmarks")]
 pub mod benchmarking;
 pub mod erc;
@@ -163,20 +162,17 @@
 pub mod pallet {
 	use super::*;
 	use frame_support::{Blake2_128Concat, pallet_prelude::*, storage::Key};
-	use account::CrossAccountId;
+	use pallet_evm::account;
 	use frame_support::traits::Currency;
 	use up_data_structs::TokenId;
 	use scale_info::TypeInfo;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config + pallet_evm_coder_substrate::Config + TypeInfo {
+	pub trait Config:
+		frame_system::Config + pallet_evm_coder_substrate::Config + TypeInfo + account::Config
+	{
 		type Event: IsType<<Self as frame_system::Config>::Event> + From<Event<Self>>;
-
-		type CrossAccountId: CrossAccountId<Self::AccountId>;
 
-		type EvmAddressMapping: pallet_evm::AddressMapping<Self::AccountId>;
-		type EvmBackwardsAddressMapping: up_evm_mapping::EvmBackwardsAddressMapping<Self::AccountId>;
-
 		type Currency: Currency<Self::AccountId>;
 
 		#[pallet::constant]
@@ -421,6 +417,39 @@
 			alive: created.0 - destroyed.0,
 		}
 	}
+
+	pub fn effective_collection_limits(collection: CollectionId) -> Option<CollectionLimits> {
+		let collection = <CollectionById<T>>::get(collection);
+		if collection.is_none() {
+			return None;
+		}
+
+		let collection = collection.unwrap();
+		let limits = collection.limits;
+		let effective_limits = CollectionLimits {
+			account_token_ownership_limit: Some(limits.account_token_ownership_limit()),
+			sponsored_data_size: Some(limits.sponsored_data_size()),
+			sponsored_data_rate_limit: Some(
+				limits
+					.sponsored_data_rate_limit
+					.unwrap_or(SponsoringRateLimit::SponsoringDisabled),
+			),
+			token_limit: Some(limits.token_limit()),
+			sponsor_transfer_timeout: Some(limits.sponsor_transfer_timeout(
+				match collection.mode {
+					CollectionMode::NFT => NFT_SPONSOR_TRANSFER_TIMEOUT,
+					CollectionMode::Fungible(_) => FUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+					CollectionMode::ReFungible => REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT,
+				},
+			)),
+			sponsor_approve_timeout: Some(limits.sponsor_approve_timeout()),
+			owner_can_transfer: Some(limits.owner_can_transfer()),
+			owner_can_destroy: Some(limits.owner_can_destroy()),
+			transfers_enabled: Some(limits.transfers_enabled()),
+		};
+
+		Some(effective_limits)
+	}
 }
 
 impl<T: Config> Pallet<T> {
modifiedpallets/evm-coder-substrate/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-coder-substrate/Cargo.toml
+++ b/pallets/evm-coder-substrate/Cargo.toml
@@ -12,8 +12,8 @@
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 ethereum = { version = "0.12.0", default-features = false }
 evm-coder = { default-features = false, path = "../../crates/evm-coder" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 frame-system = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
modifiedpallets/evm-contract-helpers/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-contract-helpers/Cargo.toml
+++ b/pallets/evm-contract-helpers/Cargo.toml
@@ -15,7 +15,8 @@
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
 pallet-evm-coder-substrate = { default-features = false, path = '../../pallets/evm-coder-substrate' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
 log = "0.4.14"
 
modifiedpallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/eth.rs
+++ b/pallets/evm-contract-helpers/src/eth.rs
@@ -17,14 +17,17 @@
 use core::marker::PhantomData;
 use evm_coder::{abi::AbiWriter, execution::Result, generate_stubgen, solidity_interface, types::*};
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
-use pallet_evm::{ExitRevert, OnCreate, OnMethodCall, PrecompileResult, PrecompileFailure};
+use pallet_evm::{
+	ExitRevert, OnCreate, OnMethodCall, PrecompileResult, PrecompileFailure,
+	account::CrossAccountId,
+};
 use sp_core::H160;
 use crate::{
 	AllowlistEnabled, Config, Owner, Pallet, SponsorBasket, SponsoringRateLimit, SponsoringModeT,
 };
 use frame_support::traits::Get;
 use up_sponsorship::SponsorshipHandler;
-use sp_std::{convert::TryInto, vec::Vec};
+use sp_std::vec::Vec;
 
 struct ContractHelpers<T: Config>(SubstrateRecorder<T>);
 impl<T: Config> WithRecorder<T> for ContractHelpers<T> {
@@ -177,18 +180,21 @@
 }
 
 pub struct HelpersContractSponsoring<T: Config>(PhantomData<*const T>);
-impl<T: Config> SponsorshipHandler<H160, (H160, Vec<u8>)> for HelpersContractSponsoring<T> {
-	fn get_sponsor(who: &H160, call: &(H160, Vec<u8>)) -> Option<H160> {
+impl<T: Config> SponsorshipHandler<T::CrossAccountId, (H160, Vec<u8>)>
+	for HelpersContractSponsoring<T>
+{
+	fn get_sponsor(who: &T::CrossAccountId, call: &(H160, Vec<u8>)) -> Option<T::CrossAccountId> {
 		let mode = <Pallet<T>>::sponsoring_mode(call.0);
 		if mode == SponsoringModeT::Disabled {
 			return None;
 		}
-		if mode == SponsoringModeT::Allowlisted && !<Pallet<T>>::allowed(call.0, *who) {
+
+		if mode == SponsoringModeT::Allowlisted && !<Pallet<T>>::allowed(call.0, *who.as_eth()) {
 			return None;
 		}
 		let block_number = <frame_system::Pallet<T>>::block_number() as T::BlockNumber;
 
-		if let Some(last_tx_block) = <SponsorBasket<T>>::get(&call.0, who) {
+		if let Some(last_tx_block) = <SponsorBasket<T>>::get(&call.0, who.as_eth()) {
 			let limit = <SponsoringRateLimit<T>>::get(&call.0);
 
 			let timeout = last_tx_block + limit;
@@ -197,9 +203,10 @@
 			}
 		}
 
-		<SponsorBasket<T>>::insert(&call.0, who, block_number);
+		<SponsorBasket<T>>::insert(&call.0, who.as_eth(), block_number);
 
-		Some(call.0)
+		let sponsor = T::CrossAccountId::from_eth(call.0);
+		Some(sponsor)
 	}
 }
 
modifiedpallets/evm-contract-helpers/src/lib.rsdiffbeforeafterboth
--- a/pallets/evm-contract-helpers/src/lib.rs
+++ b/pallets/evm-contract-helpers/src/lib.rs
@@ -30,7 +30,9 @@
 	use sp_core::H160;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config + pallet_evm_coder_substrate::Config {
+	pub trait Config:
+		frame_system::Config + pallet_evm_coder_substrate::Config + pallet_evm::account::Config
+	{
 		type ContractAddress: Get<H160>;
 		type DefaultSponsoringRateLimit: Get<Self::BlockNumber>;
 	}
modifiedpallets/evm-migration/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-migration/Cargo.toml
+++ b/pallets/evm-migration/Cargo.toml
@@ -15,8 +15,8 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-io = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [dependencies.codec]
 default-features = false
modifiedpallets/evm-transaction-payment/Cargo.tomldiffbeforeafterboth
--- a/pallets/evm-transaction-payment/Cargo.toml
+++ b/pallets/evm-transaction-payment/Cargo.toml
@@ -14,11 +14,11 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-io = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = "../../primitives/evm-mapping" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [dependencies.codec]
 default-features = false
@@ -39,5 +39,5 @@
     "pallet-ethereum/std",
     "fp-evm/std",
     "up-sponsorship/std",
-    "up-evm-mapping/std",
+    "fp-evm-mapping/std",
 ]
modifiedpallets/evm-transaction-payment/src/lib.rsdiffbeforeafterboth
--- a/pallets/evm-transaction-payment/src/lib.rs
+++ b/pallets/evm-transaction-payment/src/lib.rs
@@ -20,12 +20,10 @@
 use fp_evm::WithdrawReason;
 use frame_support::traits::{Currency, IsSubType};
 pub use pallet::*;
-use pallet_evm::{EVMCurrencyAdapter, EnsureAddressOrigin};
+use pallet_evm::{EVMCurrencyAdapter, EnsureAddressOrigin, account::CrossAccountId};
 use sp_core::{H160, U256};
 use sp_runtime::TransactionOutcome;
 use up_sponsorship::SponsorshipHandler;
-use up_evm_mapping::EvmBackwardsAddressMapping;
-use pallet_evm::AddressMapping;
 
 #[frame_support::pallet]
 pub mod pallet {
@@ -35,11 +33,9 @@
 	use sp_std::vec::Vec;
 
 	#[pallet::config]
-	pub trait Config: frame_system::Config {
-		type EvmSponsorshipHandler: SponsorshipHandler<H160, (H160, Vec<u8>)>;
+	pub trait Config: frame_system::Config + pallet_evm::account::Config {
+		type EvmSponsorshipHandler: SponsorshipHandler<Self::CrossAccountId, (H160, Vec<u8>)>;
 		type Currency: Currency<Self::AccountId>;
-		type EvmBackwardsAddressMapping: EvmBackwardsAddressMapping<Self::AccountId>;
-		type EvmAddressMapping: AddressMapping<Self::AccountId>;
 	}
 
 	#[pallet::pallet]
@@ -60,14 +56,15 @@
 }
 
 pub struct TransactionValidityHack<T: Config>(PhantomData<*const T>);
-impl<T: Config> fp_evm::TransactionValidityHack for TransactionValidityHack<T> {
-	fn who_pays_fee(origin: H160, reason: &WithdrawReason) -> Option<H160> {
+impl<T: Config> fp_evm::TransactionValidityHack<T::CrossAccountId> for TransactionValidityHack<T> {
+	fn who_pays_fee(origin: H160, reason: &WithdrawReason) -> Option<T::CrossAccountId> {
 		match reason {
 			WithdrawReason::Call { target, input } => {
 				// This method is only used for checking, we shouldn't touch storage in it
 				frame_support::storage::with_transaction(|| {
+					let origin_sub = T::CrossAccountId::from_eth(origin);
 					TransactionOutcome::Rollback(T::EvmSponsorshipHandler::get_sponsor(
-						&origin,
+						&origin_sub,
 						&(*target, input.clone()),
 					))
 				})
@@ -85,33 +82,36 @@
 	type LiquidityInfo = Option<ChargeEvmLiquidityInfo<T>>;
 
 	fn withdraw_fee(
-		who: &H160,
+		who: &T::CrossAccountId,
 		reason: WithdrawReason,
 		fee: U256,
 	) -> core::result::Result<Self::LiquidityInfo, pallet_evm::Error<T>> {
-		let mut who_pays_fee = *who;
-		if let WithdrawReason::Call { target, input } = &reason {
-			who_pays_fee = T::EvmSponsorshipHandler::get_sponsor(who, &(*target, input.clone()))
-				.unwrap_or(who_pays_fee);
-		}
+		let who_pays_fee = if let WithdrawReason::Call { target, input } = &reason {
+			T::EvmSponsorshipHandler::get_sponsor(who, &(*target, input.clone()))
+				.unwrap_or(who.clone())
+		} else {
+			who.clone()
+		};
+
 		let negative_imbalance = EVMCurrencyAdapter::<<T as Config>::Currency, ()>::withdraw_fee(
 			&who_pays_fee,
 			reason,
 			fee,
 		)?;
+
 		Ok(negative_imbalance.map(|i| ChargeEvmLiquidityInfo {
-			who: who_pays_fee,
+			who: who_pays_fee.as_eth().clone(),
 			negative_imbalance: i,
 		}))
 	}
 
 	fn correct_and_deposit_fee(
-		who: &H160,
+		who: &T::CrossAccountId,
 		corrected_fee: U256,
 		already_withdrawn: Self::LiquidityInfo,
 	) {
 		<EVMCurrencyAdapter<<T as Config>::Currency, ()> as pallet_evm::OnChargeEVMTransaction<T>>::correct_and_deposit_fee(
-			&already_withdrawn.as_ref().map(|e| e.who).unwrap_or(*who),
+			&already_withdrawn.as_ref().map(|e| T::CrossAccountId::from_eth(e.who)).unwrap_or(who.clone()),
 			corrected_fee,
 			already_withdrawn.map(|e| e.negative_imbalance),
 		)
@@ -142,7 +142,7 @@
 					<frame_system::RawOrigin<T::AccountId>>::Signed(who.clone()).into(),
 				)
 				.ok()?;
-				let who = T::EvmBackwardsAddressMapping::from_account_id(who.clone());
+				let who = T::CrossAccountId::from_sub(who.clone());
 				// Effects from EvmSponsorshipHandler are applied in OnChargeEvmTransaction by pallet_evm::runner
 				// TODO: Should we implement simulation mode (test, but do not apply effects) in `up-sponsorship`?
 				let sponsor = frame_support::storage::with_transaction(|| {
@@ -151,8 +151,7 @@
 						&(*target, input.clone()),
 					))
 				})?;
-				let sponsor = T::EvmAddressMapping::into_account_id(sponsor);
-				Some(sponsor)
+				Some(sponsor.as_sub().clone())
 			}
 			_ => None,
 		}
modifiedpallets/fungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/fungible/Cargo.toml
+++ b/pallets/fungible/Cargo.toml
@@ -22,6 +22,7 @@
 pallet-evm-coder-substrate = { default-features = false, path = '../evm-coder-substrate' }
 ethereum = { version = "0.12.0", default-features = false }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 scale-info = { version = "2.0.1", default-features = false, features = [
     "derive",
 ] }
@@ -39,5 +40,6 @@
     "ethereum/std",
     "pallet-evm-coder-substrate/std",
     'frame-benchmarking/std',
+    "pallet-evm/std"
 ]
 runtime-benchmarks = ['frame-benchmarking', 'pallet-common/runtime-benchmarks']
modifiedpallets/fungible/src/erc.rsdiffbeforeafterboth
--- a/pallets/fungible/src/erc.rs
+++ b/pallets/fungible/src/erc.rs
@@ -21,7 +21,7 @@
 use pallet_common::erc::{CommonEvmHandler, PrecompileResult};
 use sp_core::{H160, U256};
 use sp_std::vec::Vec;
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::{call, dispatch_to_evm};
 
 use crate::{
modifiedpallets/fungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/fungible/src/lib.rs
+++ b/pallets/fungible/src/lib.rs
@@ -19,9 +19,8 @@
 use core::ops::Deref;
 use frame_support::{ensure};
 use up_data_structs::{AccessMode, CollectionId, TokenId, CreateCollectionData};
-use pallet_common::{
-	Error as CommonError, Event as CommonEvent, Pallet as PalletCommon, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Event as CommonEvent, Pallet as PalletCommon};
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::WithRecorder;
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
@@ -36,7 +35,7 @@
 pub mod erc;
 pub mod weights;
 
-pub type CreateItemData<T> = (<T as pallet_common::Config>::CrossAccountId, u128);
+pub type CreateItemData<T> = (<T as pallet_evm::account::Config>::CrossAccountId, u128);
 pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;
 
 #[frame_support::pallet]
modifiedpallets/nonfungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/nonfungible/Cargo.toml
+++ b/pallets/nonfungible/Cargo.toml
@@ -16,6 +16,7 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-common = { default-features = false, path = '../common' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 evm-coder = { default-features = false, path = '../../crates/evm-coder' }
@@ -39,6 +40,7 @@
     "ethereum/std",
     "pallet-evm-coder-substrate/std",
     'frame-benchmarking/std',
+    "pallet-evm/std"
 ]
 runtime-benchmarks = [
     'frame-benchmarking',
modifiedpallets/nonfungible/src/erc.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/erc.rs
+++ b/pallets/nonfungible/src/erc.rs
@@ -25,9 +25,9 @@
 use sp_core::{H160, U256};
 use sp_std::{vec::Vec, vec};
 use pallet_common::{
-	account::CrossAccountId,
 	erc::{CommonEvmHandler, PrecompileResult},
 };
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::call;
 
 use crate::{
modifiedpallets/nonfungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/nonfungible/src/lib.rs
+++ b/pallets/nonfungible/src/lib.rs
@@ -21,9 +21,8 @@
 use up_data_structs::{
 	AccessMode, CollectionId, CustomDataLimit, TokenId, CreateCollectionData, CreateNftExData,
 };
-use pallet_common::{
-	Error as CommonError, Pallet as PalletCommon, Event as CommonEvent, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Pallet as PalletCommon, Event as CommonEvent};
+use pallet_evm::account::CrossAccountId;
 use pallet_evm_coder_substrate::{SubstrateRecorder, WithRecorder};
 use sp_core::H160;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
@@ -40,7 +39,7 @@
 pub mod erc;
 pub mod weights;
 
-pub type CreateItemData<T> = CreateNftExData<<T as pallet_common::Config>::CrossAccountId>;
+pub type CreateItemData<T> = CreateNftExData<<T as pallet_evm::account::Config>::CrossAccountId>;
 pub(crate) type SelfWeightOf<T> = <T as Config>::WeightInfo;
 
 #[derive(Encode, Decode, TypeInfo, MaxEncodedLen)]
modifiedpallets/refungible/Cargo.tomldiffbeforeafterboth
--- a/pallets/refungible/Cargo.toml
+++ b/pallets/refungible/Cargo.toml
@@ -16,6 +16,7 @@
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-common = { default-features = false, path = '../common' }
 up-data-structs = { default-features = false, path = '../../primitives/data-structs' }
 frame-benchmarking = { default-features = false, optional = true, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
@@ -33,6 +34,7 @@
     "up-data-structs/std",
     "pallet-common/std",
     'frame-benchmarking/std',
+    "pallet-evm/std",
 ]
 runtime-benchmarks = [
     'frame-benchmarking',
modifiedpallets/refungible/src/lib.rsdiffbeforeafterboth
--- a/pallets/refungible/src/lib.rs
+++ b/pallets/refungible/src/lib.rs
@@ -21,9 +21,8 @@
 	AccessMode, CollectionId, CustomDataLimit, MAX_REFUNGIBLE_PIECES, TokenId,
 	CreateCollectionData, CreateRefungibleExData,
 };
-use pallet_common::{
-	Error as CommonError, Event as CommonEvent, Pallet as PalletCommon, account::CrossAccountId,
-};
+use pallet_common::{Error as CommonError, Event as CommonEvent, Pallet as PalletCommon};
+use pallet_evm::account::CrossAccountId;
 use sp_runtime::{ArithmeticError, DispatchError, DispatchResult};
 use sp_std::{vec::Vec, vec, collections::btree_map::BTreeMap};
 use core::ops::Deref;
modifiedpallets/unique/Cargo.tomldiffbeforeafterboth
--- a/pallets/unique/Cargo.toml
+++ b/pallets/unique/Cargo.toml
@@ -34,7 +34,7 @@
     'fp-evm/std',
     'up-data-structs/std',
     'up-sponsorship/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'sp-std/std',
     'sp-api/std',
     'sp-runtime/std',
@@ -132,16 +132,16 @@
 sp-api = { default-features = false, git = "https://github.com/paritytech/substrate.git", branch = "polkadot-v0.9.18" }
 
 up-sponsorship = { version = "0.1.0", default-features = false, git = "https://github.com/UniqueNetwork/pallet-sponsoring", branch = 'polkadot-v0.9.18' }
-up-evm-mapping = { default-features = false, path = "../../primitives/evm-mapping" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 evm-coder = { default-features = false, path = "../../crates/evm-coder" }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
 primitive-types = { version = "0.11.1", default-features = false, features = [
     "serde_no_std",
 ] }
 
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 hex-literal = "0.3.3"
 
 pallet-common = { default-features = false, path = "../common" }
modifiedpallets/unique/src/eth/sponsoring.rsdiffbeforeafterboth
--- a/pallets/unique/src/eth/sponsoring.rs
+++ b/pallets/unique/src/eth/sponsoring.rs
@@ -24,26 +24,24 @@
 use up_sponsorship::SponsorshipHandler;
 use core::marker::PhantomData;
 use core::convert::TryInto;
-use up_data_structs::{TokenId, CreateItemData, CreateNftData};
-use up_evm_mapping::EvmBackwardsAddressMapping;
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 
 use pallet_nonfungible::erc::{
 	UniqueNFTCall, ERC721UniqueExtensionsCall, ERC721MintableCall, ERC721Call,
 };
 use pallet_fungible::erc::{UniqueFungibleCall, ERC20Call};
+use up_data_structs::{TokenId, CreateItemData, CreateNftData};
 
 pub struct UniqueEthSponsorshipHandler<T: Config>(PhantomData<*const T>);
-impl<T: Config> SponsorshipHandler<H160, (H160, Vec<u8>)> for UniqueEthSponsorshipHandler<T> {
-	fn get_sponsor(who: &H160, call: &(H160, Vec<u8>)) -> Option<H160> {
+impl<T: Config> SponsorshipHandler<T::CrossAccountId, (H160, Vec<u8>)>
+	for UniqueEthSponsorshipHandler<T>
+{
+	fn get_sponsor(who: &T::CrossAccountId, call: &(H160, Vec<u8>)) -> Option<T::CrossAccountId> {
 		let collection_id = map_eth_to_id(&call.0)?;
 		let collection = <CollectionHandle<T>>::new(collection_id)?;
 		let sponsor = collection.sponsorship.sponsor()?.clone();
-		let sponsor =
-			<T as pallet_common::Config>::EvmBackwardsAddressMapping::from_account_id(sponsor);
-		let who = T::CrossAccountId::from_eth(*who);
 		let (method_id, mut reader) = AbiReader::new_call(&call.1).ok()?;
-		match &collection.mode {
+		Some(T::CrossAccountId::from_sub(match &collection.mode {
 			crate::CollectionMode::NFT => {
 				let call = <UniqueNFTCall<T>>::parse(method_id, &mut reader).ok()??;
 				match call {
@@ -83,7 +81,7 @@
 				#[allow(clippy::single_match)]
 				match call {
 					UniqueFungibleCall::ERC20(ERC20Call::Transfer { .. }) => {
-						withdraw_transfer::<T>(&collection, &who, &TokenId::default())
+						withdraw_transfer::<T>(&collection, who, &TokenId::default())
 							.map(|()| sponsor)
 					}
 					UniqueFungibleCall::ERC20(ERC20Call::TransferFrom { from, .. }) => {
@@ -99,6 +97,6 @@
 				}
 			}
 			_ => None,
-		}
+		}?))
 	}
 }
modifiedpallets/unique/src/lib.rsdiffbeforeafterboth
--- a/pallets/unique/src/lib.rs
+++ b/pallets/unique/src/lib.rs
@@ -53,10 +53,8 @@
 	CollectionMode, TokenId, SchemaVersion, SponsorshipState, MetaUpdatePermission,
 	CreateCollectionData, CustomDataLimit, CreateItemExData,
 };
-use pallet_common::{
-	account::CrossAccountId, CollectionHandle, Pallet as PalletCommon, Error as CommonError,
-	CommonWeightInfo,
-};
+use pallet_common::{CollectionHandle, Pallet as PalletCommon, Error as CommonError, CommonWeightInfo};
+use pallet_evm::account::CrossAccountId;
 use pallet_refungible::{Pallet as PalletRefungible, RefungibleHandle};
 use pallet_fungible::{Pallet as PalletFungible, FungibleHandle};
 use pallet_nonfungible::{Pallet as PalletNonfungible, NonfungibleHandle};
@@ -122,7 +120,7 @@
 	pub enum Event<T>
 	where
 		<T as frame_system::Config>::AccountId,
-		<T as pallet_common::Config>::CrossAccountId,
+		<T as pallet_evm::account::Config>::CrossAccountId,
 	{
 		/// Collection sponsor was removed
 		///
modifiedpallets/unique/src/mock.rsdiffbeforeafterboth
--- a/pallets/unique/src/mock.rs
+++ b/pallets/unique/src/mock.rs
@@ -25,8 +25,8 @@
 };
 use pallet_transaction_payment::{CurrencyAdapter};
 use frame_system as system;
-use pallet_evm::{AddressMapping, runner::stack::MaybeMirroredLog};
-use pallet_common::account::{EvmBackwardsAddressMapping, CrossAccountId};
+use pallet_evm::{AddressMapping, runner::stack::MaybeMirroredLog, account::CrossAccountId};
+use fp_evm_mapping::EvmBackwardsAddressMapping;
 use codec::{Encode, Decode, MaxEncodedLen};
 use scale_info::TypeInfo;
 use up_data_structs::ConstU32;
@@ -191,15 +191,17 @@
 
 impl pallet_common::Config for Test {
 	type Event = ();
-	type EvmBackwardsAddressMapping = TestEvmBackwardsAddressMapping;
-	type EvmAddressMapping = TestEvmAddressMapping;
-	type CrossAccountId = TestCrossAccountId;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Test {
+	type CrossAccountId = TestCrossAccountId;
+	type EvmAddressMapping = TestEvmAddressMapping;
+	type EvmBackwardsAddressMapping = TestEvmBackwardsAddressMapping;
+}
+
 impl pallet_fungible::Config for Test {
 	type WeightInfo = ();
 }
modifiedpallets/unique/src/sponsorship.rsdiffbeforeafterboth
--- a/pallets/unique/src/sponsorship.rs
+++ b/pallets/unique/src/sponsorship.rs
@@ -30,7 +30,7 @@
 	NFT_SPONSOR_TRANSFER_TIMEOUT, REFUNGIBLE_SPONSOR_TRANSFER_TIMEOUT, TokenId,
 };
 use pallet_common::{CollectionHandle};
-use pallet_common::account::CrossAccountId;
+use pallet_evm::account::CrossAccountId;
 
 pub fn withdraw_transfer<T: Config>(
 	collection: &CollectionHandle<T>,
modifiedpallets/unique/src/tests.rsdiffbeforeafterboth
--- a/pallets/unique/src/tests.rs
+++ b/pallets/unique/src/tests.rs
@@ -18,6 +18,7 @@
 use super::*;
 use crate::mock::*;
 use crate::{AccessMode, CollectionMode};
+use sp_runtime::AccountId32;
 use up_data_structs::{
 	COLLECTION_NUMBER_LIMIT, CollectionId, CreateItemData, CreateFungibleData, CreateNftData,
 	CreateReFungibleData, MAX_DECIMAL_POINTS, COLLECTION_ADMINS_LIMIT, MetaUpdatePermission,
@@ -2854,3 +2855,59 @@
 		);
 	});
 }
+
+#[test]
+fn collection_sponsoring() {
+	new_test_ext().execute_with(|| {
+		// default_limits();
+		let user1 = 1_u64;
+		let user2 = 777_u64;
+		let origin1 = Origin::signed(user1);
+		let origin2 = Origin::signed(user2);
+		let account2 = account(user2);
+
+		let collection_id =
+			create_test_collection_for_owner(&CollectionMode::NFT, user1, CollectionId(1));
+		assert_ok!(TemplateModule::set_collection_sponsor(
+			origin1.clone(),
+			collection_id,
+			user1
+		));
+		assert_ok!(TemplateModule::confirm_sponsorship(
+			origin1.clone(),
+			collection_id
+		));
+
+		// Expect error while have no permissions
+		assert!(TemplateModule::create_item(
+			origin2.clone(),
+			collection_id,
+			account2.clone(),
+			default_nft_data().into()
+		)
+		.is_err());
+
+		assert_ok!(TemplateModule::set_public_access_mode(
+			origin1.clone(),
+			collection_id,
+			AccessMode::AllowList
+		));
+		assert_ok!(TemplateModule::add_to_allow_list(
+			origin1.clone(),
+			collection_id,
+			account2.clone()
+		));
+		assert_ok!(TemplateModule::set_mint_permission(
+			origin1.clone(),
+			collection_id,
+			true
+		));
+
+		assert_ok!(TemplateModule::create_item(
+			origin2,
+			collection_id,
+			account2,
+			default_nft_data().into()
+		));
+	});
+}
deletedprimitives/evm-mapping/Cargo.tomldiffbeforeafterboth
--- a/primitives/evm-mapping/Cargo.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-[package]
-name = "up-evm-mapping"
-version = "0.1.0"
-license = "GPLv3"
-edition = "2021"
-
-[dependencies]
-sp-core = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-frame-support = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
-
-[features]
-default = ["std"]
-std = ["sp-core/std", "frame-support/std"]
deletedprimitives/evm-mapping/src/lib.rsdiffbeforeafterboth
--- a/primitives/evm-mapping/src/lib.rs
+++ /dev/null
@@ -1,39 +0,0 @@
-// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.
-// This file is part of Unique Network.
-
-// Unique Network is free software: you can redistribute it and/or modify
-// it under the terms of the GNU General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-
-// Unique Network is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-// GNU General Public License for more details.
-
-// You should have received a copy of the GNU General Public License
-// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
-
-#![cfg_attr(not(feature = "std"), no_std)]
-
-use frame_support::sp_runtime::AccountId32;
-use sp_core::H160;
-
-/// Transforms substrate addresses to ethereum (Reverse of `EvmAddressMapping`)
-/// pallet_evm doesn't have this, as it only checks if eth address
-/// is owned by substrate via `EnsureAddressOrigin` trait
-///
-/// This trait implementations shouldn't conflict with used `EnsureAddressOrigin`
-pub trait EvmBackwardsAddressMapping<AccountId> {
-	fn from_account_id(account_id: AccountId) -> H160;
-}
-
-/// Should have same mapping as EnsureAddressTruncated
-pub struct MapBackwardsAddressTruncated;
-impl EvmBackwardsAddressMapping<AccountId32> for MapBackwardsAddressTruncated {
-	fn from_account_id(account_id: AccountId32) -> H160 {
-		let mut out = [0; 20];
-		out.copy_from_slice(&(account_id.as_ref() as &[u8])[0..20]);
-		H160(out)
-	}
-}
modifiedprimitives/rpc/Cargo.tomldiffbeforeafterboth
--- a/primitives/rpc/Cargo.toml
+++ b/primitives/rpc/Cargo.toml
@@ -14,6 +14,7 @@
 sp-std = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-api = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
 sp-runtime = { default-features = false, git = 'https://github.com/paritytech/substrate.git', branch = 'polkadot-v0.9.18' }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 [features]
 default = ["std"]
modifiedprimitives/rpc/src/lib.rsdiffbeforeafterboth
--- a/primitives/rpc/src/lib.rs
+++ b/primitives/rpc/src/lib.rs
@@ -16,7 +16,7 @@
 
 #![cfg_attr(not(feature = "std"), no_std)]
 
-use up_data_structs::{CollectionId, TokenId, Collection, CollectionStats};
+use up_data_structs::{CollectionId, TokenId, Collection, CollectionStats, CollectionLimits};
 use sp_std::vec::Vec;
 use sp_core::H160;
 use codec::Decode;
@@ -28,7 +28,7 @@
 	#[api_version(2)]
 	pub trait UniqueApi<CrossAccountId, AccountId> where
 		AccountId: Decode,
-		CrossAccountId: pallet_common::account::CrossAccountId<AccountId>,
+		CrossAccountId: pallet_evm::account::CrossAccountId<AccountId>,
 	{
 		#[changed_in(2)]
 		fn token_owner(collection: CollectionId, token: TokenId) -> Result<CrossAccountId>;
@@ -60,5 +60,6 @@
 		fn collection_by_id(collection: CollectionId) -> Result<Option<Collection<AccountId>>>;
 		fn collection_stats() -> Result<CollectionStats>;
 		fn next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Result<Option<u64>>;
+		fn effective_collection_limits(collection_id: CollectionId) -> Result<Option<CollectionLimits>>;
 	}
 }
modifiedruntime/common/Cargo.tomldiffbeforeafterboth
--- a/runtime/common/Cargo.toml
+++ b/runtime/common/Cargo.toml
@@ -69,4 +69,7 @@
 [dependencies.fp-rpc]
 default-features = false
 git = "https://github.com/uniquenetwork/frontier.git"
-branch = "unique-polkadot-v0.9.18"
+branch = "unique-polkadot-v0.9.18-2"
+
+[dependencies]
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
\ No newline at end of file
modifiedruntime/common/src/runtime_apis.rsdiffbeforeafterboth
--- a/runtime/common/src/runtime_apis.rs
+++ b/runtime/common/src/runtime_apis.rs
@@ -75,6 +75,9 @@
                         collection,
                         account,
                         token))
+
+                fn effective_collection_limits(collection: CollectionId) -> Result<Option<CollectionLimits>, DispatchError> {
+                    Ok(<pallet_common::Pallet<Runtime>>::effective_collection_limits(collection))
                 }
             }
 
@@ -188,7 +191,7 @@
                     };
 
                     <Runtime as pallet_evm::Config>::Runner::call(
-                        from,
+                        CrossAccountId::from_eth(from),
                         to,
                         data,
                         value,
@@ -222,7 +225,7 @@
                     };
 
                     <Runtime as pallet_evm::Config>::Runner::create(
-                        from,
+                        CrossAccountId::from_eth(from),
                         data,
                         value,
                         gas_limit.low_u64(),
modifiedruntime/common/src/types.rsdiffbeforeafterboth
--- a/runtime/common/src/types.rs
+++ b/runtime/common/src/types.rs
@@ -42,7 +42,7 @@
 pub use sp_consensus_aura::sr25519::AuthorityId as AuraId;
 
 pub trait RuntimeInstance {
-	type CrossAccountId: pallet_common::account::CrossAccountId<sp_runtime::AccountId32>
+	type CrossAccountId: pallet_evm::account::CrossAccountId<sp_runtime::AccountId32>
 		+ Send
 		+ Sync
 		+ 'static;
modifiedruntime/opal/Cargo.tomldiffbeforeafterboth
--- a/runtime/opal/Cargo.toml
+++ b/runtime/opal/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,7 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +396,11 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/opal/src/lib.rsdiffbeforeafterboth
--- a/runtime/opal/src/lib.rs
+++ b/runtime/opal/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -117,11 +119,10 @@
 pub const RUNTIME_NAME: &str = "opal";
 pub const TOKEN_SYMBOL: &str = "OPL";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
-
 	type TransactionConverter = self::TransactionConverter;
 
 	fn get_transaction_converter() -> TransactionConverter {
@@ -129,6 +130,22 @@
 	}
 }
 
+/// The type for looking up accounts. We don't expect more than 4 billion of them, but you
+/// never know...
+pub type AccountIndex = u32;
+
+/// Balance of an account.
+pub type Balance = u128;
+
+/// Index of a transaction in the chain.
+pub type Index = u32;
+
+/// A hash of some data used by the chain.
+pub type Hash = sp_core::H256;
+
+/// Digest item type.
+pub type DigestItem = generic::DigestItem;
+
 /// Opaque types. These are used by the CLI to instantiate machinery that don't need to know
 /// the specifics of the runtime. They can then be made to be agnostic over specific formats
 /// of data like extrinsics, allowing for them to continue syncing the network through upgrades
@@ -152,7 +169,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -258,6 +275,12 @@
 	}
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = pallet_evm::HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_evm::Config for Runtime {
 	type BlockGasLimit = BlockGasLimit;
 	type FeeCalculator = FixedFee;
@@ -845,10 +868,6 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
@@ -912,8 +931,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedruntime/quartz/Cargo.tomldiffbeforeafterboth
--- a/runtime/quartz/Cargo.toml
+++ b/runtime/quartz/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,7 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +396,11 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/quartz/src/lib.rsdiffbeforeafterboth
--- a/runtime/quartz/src/lib.rs
+++ b/runtime/quartz/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -117,7 +119,7 @@
 pub const RUNTIME_NAME: &str = "quartz";
 pub const TOKEN_SYMBOL: &str = "QTZ";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
@@ -152,7 +154,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -845,15 +847,18 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
 
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_fungible::Config for Runtime {
 	type WeightInfo = pallet_fungible::weights::SubstrateWeight<Self>;
 }
@@ -912,8 +917,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedruntime/unique/Cargo.tomldiffbeforeafterboth
--- a/runtime/unique/Cargo.toml
+++ b/runtime/unique/Cargo.toml
@@ -72,7 +72,7 @@
     'pallet-base-fee/std',
     'fp-rpc/std',
     'up-rpc/std',
-    'up-evm-mapping/std',
+    'fp-evm-mapping/std',
     'fp-self-contained/std',
     'parachain-info/std',
     'serde',
@@ -382,7 +382,6 @@
 derivative = "2.2.0"
 pallet-unique = { path = '../../pallets/unique', default-features = false }
 up-rpc = { path = "../../primitives/rpc", default-features = false }
-up-evm-mapping = { path = "../../primitives/evm-mapping", default-features = false }
 pallet-inflation = { path = '../../pallets/inflation', default-features = false }
 up-data-structs = { path = '../../primitives/data-structs', default-features = false }
 pallet-common = { default-features = false, path = "../../pallets/common" }
@@ -396,11 +395,12 @@
 pallet-evm-contract-helpers = { path = '../../pallets/evm-contract-helpers', default-features = false }
 pallet-evm-transaction-payment = { path = '../../pallets/evm-transaction-payment', default-features = false }
 pallet-evm-coder-substrate = { default-features = false, path = "../../pallets/evm-coder-substrate" }
-pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
-fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18" }
+pallet-evm = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-ethereum = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+pallet-base-fee = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-rpc = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-self-contained = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
+fp-evm-mapping = { default-features = false, git = "https://github.com/uniquenetwork/frontier.git", branch = "unique-polkadot-v0.9.18-2" }
 
 ################################################################################
 # Build Dependencies
modifiedruntime/unique/src/lib.rsdiffbeforeafterboth
--- a/runtime/unique/src/lib.rs
+++ b/runtime/unique/src/lib.rs
@@ -48,7 +48,9 @@
 };
 // A few exports that help ease life for downstream crates.
 pub use pallet_balances::Call as BalancesCall;
-pub use pallet_evm::{EnsureAddressTruncated, HashedAddressMapping, Runner};
+pub use pallet_evm::{
+	EnsureAddressTruncated, HashedAddressMapping, Runner, account::CrossAccountId as _,
+};
 pub use frame_support::{
 	construct_runtime, match_type,
 	dispatch::DispatchResult,
@@ -116,7 +118,7 @@
 pub const RUNTIME_NAME: &str = "unique";
 pub const TOKEN_SYMBOL: &str = "UNQ";
 
-type CrossAccountId = pallet_common::account::BasicCrossAccountId<Runtime>;
+type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Runtime>;
 
 impl RuntimeInstance for Runtime {
 	type CrossAccountId = self::CrossAccountId;
@@ -151,7 +153,7 @@
 	spec_name: create_runtime_str!(RUNTIME_NAME),
 	impl_name: create_runtime_str!(RUNTIME_NAME),
 	authoring_version: 1,
-	spec_version: 918001,
+	spec_version: 918010,
 	impl_version: 0,
 	apis: RUNTIME_API_VERSIONS,
 	transaction_version: 1,
@@ -844,15 +846,17 @@
 
 impl pallet_common::Config for Runtime {
 	type Event = Event;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type CrossAccountId = pallet_common::account::BasicCrossAccountId<Self>;
-
 	type Currency = Balances;
 	type CollectionCreationPrice = CollectionCreationPrice;
 	type TreasuryAccountId = TreasuryAccountId;
 }
 
+impl pallet_evm::account::Config for Runtime {
+	type CrossAccountId = pallet_evm::account::BasicCrossAccountId<Self>;
+	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
+	type EvmBackwardsAddressMapping = fp_evm_mapping::MapBackwardsAddressTruncated;
+}
+
 impl pallet_fungible::Config for Runtime {
 	type WeightInfo = pallet_fungible::weights::SubstrateWeight<Self>;
 }
@@ -911,8 +915,6 @@
 impl pallet_evm_transaction_payment::Config for Runtime {
 	type EvmSponsorshipHandler = EvmSponsorshipHandler;
 	type Currency = Balances;
-	type EvmAddressMapping = HashedAddressMapping<Self::Hashing>;
-	type EvmBackwardsAddressMapping = up_evm_mapping::MapBackwardsAddressTruncated;
 }
 
 impl pallet_charge_transaction::Config for Runtime {
modifiedtests/README.mddiffbeforeafterboth
--- a/tests/README.md
+++ b/tests/README.md
@@ -20,7 +20,7 @@
 git clone https://github.com/paritytech/polkadot-launch && cd polkadot-launch
 ```
 
-5. Run launch-test-env.sh from the root of this project
+5. Run launch-testnet.sh from the root of this project
 
 
 ## How to run tests
modifiedtests/package.jsondiffbeforeafterboth
--- a/tests/package.json
+++ b/tests/package.json
@@ -67,6 +67,7 @@
     "testPalletPresence": "mocha --timeout 9999999 -r ts-node/register ./**/pallet-presence.test.ts",
     "testBlockProduction": "mocha --timeout 9999999 -r ts-node/register ./**/block-production.test.ts",
     "testEnableDisableTransfers": "mocha --timeout 9999999 -r ts-node/register ./**/enableDisableTransfer.test.ts",
+    "testLimits": "mocha --timeout 9999999 -r ts-node/register ./**/limits.test.ts",
     "polkadot-types-fetch-metadata": "curl -H 'Content-Type: application/json' -d '{\"id\":\"1\", \"jsonrpc\":\"2.0\", \"method\": \"state_getMetadata\", \"params\":[]}' http://localhost:9933 > src/interfaces/metadata.json",
     "polkadot-types-from-defs": "echo 'export default {}' > src/interfaces/lookup.ts && ts-node ./node_modules/.bin/polkadot-types-from-defs --endpoint src/interfaces/metadata.json --input src/interfaces/ --package .",
     "polkadot-types-from-chain": "ts-node ./node_modules/.bin/polkadot-types-from-chain --endpoint src/interfaces/metadata.json --output src/interfaces/ --package .",
modifiedtests/src/eth/base.test.tsdiffbeforeafterboth
--- a/tests/src/eth/base.test.ts
+++ b/tests/src/eth/base.test.ts
@@ -34,7 +34,8 @@
     const userB = createEthAccount(web3);
 
     const cost = await recordEthFee(api, userA, () => web3.eth.sendTransaction({from: userA, to: userB, value: '1000000', ...GAS_ARGS}));
-    expect(cost - await ethBalanceViaSub(api, userB) < BigInt(0.2 * Number(UNIQUE))).to.be.true;
+    const balanceB = await ethBalanceViaSub(api, userB);
+    expect(cost - balanceB < BigInt(0.2 * Number(UNIQUE))).to.be.true;
   });
 
   itWeb3('NFT transfer is close to 0.15 UNQ', async ({web3, api}) => {
modifiedtests/src/eth/contractSponsoring.test.tsdiffbeforeafterboth
--- a/tests/src/eth/contractSponsoring.test.ts
+++ b/tests/src/eth/contractSponsoring.test.ts
@@ -24,7 +24,24 @@
   itWeb3,
   SponsoringMode,
   createEthAccount,
+  collectionIdToAddress,
+  GAS_ARGS,
+  normalizeEvents,
+  subToEth,
+  executeEthTxOnSub,
 } from './util/helpers';
+import {
+  addCollectionAdminExpectSuccess,
+  createCollectionExpectSuccess,
+  getCreateCollectionResult,
+  transferBalanceTo,
+} from '../util/helpers';
+import nonFungibleAbi from './nonFungibleAbi.json';
+import {
+  submitTransactionAsync,
+} from '../substrate/substrate-api';
+import getBalance from '../substrate/get-balance';
+import {alicesPublicKey} from '../accounts';
 
 describe('Sponsoring EVM contracts', () => {
   itWeb3('Sponsoring can be set by the address that has deployed the contract', async ({api, web3}) => {
@@ -199,4 +216,115 @@
     const helpers = contractHelpers(web3, owner);
     expect(await helpers.methods.getSponsoringRateLimit(flipper.options.address).call()).to.be.equals('7200');
   });
+
+  itWeb3('Sponsoring evm address from substrate collection', async ({api, web3}) => {
+    const owner = privateKey('//Alice');
+    const userEth = createEthAccount(web3);
+    const collectionId = await createCollectionExpectSuccess();
+
+    {
+      const tx = api.tx.unique.setCollectionSponsor(collectionId, owner.address);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.confirmSponsorship(collectionId);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+
+    const address = collectionIdToAddress(collectionId);
+    const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: userEth, ...GAS_ARGS});
+
+    { // This part should fail, because user not in access list and user have no money
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      await expect(contract.methods.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ).call({from: userEth})).to.be.rejectedWith(/PublicMintingNotAllowed/);
+    }
+
+    {
+      const tx = api.tx.unique.setPublicAccessMode(collectionId, 'AllowList');
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.addToAllowList(collectionId, {Ethereum: userEth});
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+    {
+      const tx = api.tx.unique.setMintPermission(collectionId, true);
+      const events = await submitTransactionAsync(owner, tx);
+      const result = getCreateCollectionResult(events);
+      expect(result.success).to.be.true;
+    }
+
+    const [alicesBalanceBefore] = await getBalance(api, [alicesPublicKey]);
+
+    {
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      const result = await contract.methods.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ).send({from: userEth});
+      const events = normalizeEvents(result.events);
+
+      expect(events).to.be.deep.equal([
+        {
+          address,
+          event: 'Transfer',
+          args: {
+            from: '0x0000000000000000000000000000000000000000',
+            to: userEth,
+            tokenId: nextTokenId,
+          },
+        },
+      ]);
+
+      expect(await contract.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+    }
+
+    const [alicesBalanceAfter] = await getBalance(api, [alicesPublicKey]);
+    expect(alicesBalanceAfter < alicesBalanceBefore).to.be.true;
+  });
+
+
+  itWeb3('Check that transaction via EVM spend money from substrate address', async ({api, web3}) => {
+    const owner = privateKey('//Alice');
+    const user = privateKey(`//User/${Date.now()}`);
+    const userEth = subToEth(user.address);
+    const collectionId = await createCollectionExpectSuccess();
+    await addCollectionAdminExpectSuccess(owner, collectionId, {Ethereum: userEth});
+    await transferBalanceTo(api, owner, user.address);
+
+    const address = collectionIdToAddress(collectionId);
+    const contract = new web3.eth.Contract(nonFungibleAbi as any, address, {from: userEth, ...GAS_ARGS});
+
+    const [userBalanceBefore] = await getBalance(api, [user.address]);
+
+    {
+      const nextTokenId = await contract.methods.nextTokenId().call();
+      expect(nextTokenId).to.be.equal('1');
+      await executeEthTxOnSub(web3, api, user, contract, m => m.mintWithTokenURI(
+        userEth,
+        nextTokenId,
+        'Test URI',
+      ));
+
+      expect(await contract.methods.tokenURI(nextTokenId).call()).to.be.equal('Test URI');
+    }
+
+    const [userBalanceAfter] = await getBalance(api, [user.address]);
+    expect(userBalanceAfter < userBalanceBefore).to.be.true;
+  });
 });
modifiedtests/src/eth/marketplace/marketplace.test.tsdiffbeforeafterboth
--- a/tests/src/eth/marketplace/marketplace.test.ts
+++ b/tests/src/eth/marketplace/marketplace.test.ts
@@ -15,13 +15,24 @@
 // along with Unique Network. If not, see <http://www.gnu.org/licenses/>.
 
 import {readFile} from 'fs/promises';
-import {getBalanceSingle, transferBalanceExpectSuccess} from '../../substrate/get-balance';
+import {getBalanceSingle} from '../../substrate/get-balance';
 import privateKey from '../../substrate/privateKey';
-import {addToAllowListExpectSuccess, confirmSponsorshipExpectSuccess, createCollectionExpectSuccess, createFungibleItemExpectSuccess, createItemExpectSuccess, getTokenOwner, setCollectionLimitsExpectSuccess, setCollectionSponsorExpectSuccess, transferExpectSuccess, transferFromExpectSuccess} from '../../util/helpers';
+import {
+  addToAllowListExpectSuccess, 
+  confirmSponsorshipExpectSuccess, 
+  createCollectionExpectSuccess, 
+  createItemExpectSuccess, 
+  getTokenOwner,
+  setCollectionLimitsExpectSuccess, 
+  setCollectionSponsorExpectSuccess, 
+  transferExpectSuccess, 
+  transferFromExpectSuccess,
+  transferBalanceTo,
+} from '../../util/helpers';
 import {collectionIdToAddress, contractHelpers, createEthAccountWithBalance, executeEthTxOnSub, GAS_ARGS, itWeb3, SponsoringMode, subToEth, subToEthLowercase, transferBalanceToEth} from '../util/helpers';
 import {evmToAddress} from '@polkadot/util-crypto';
 import nonFungibleAbi from '../nonFungibleAbi.json';
-import fungibleAbi from '../fungibleAbi.json';
+
 import {expect} from 'chai';
 
 const PRICE = 2000n;
@@ -87,32 +98,39 @@
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Substrate: alice.address});
   });
 
-  // selling for custom tokens excluded from release
-  itWeb3.skip('With custom ERC20', async ({api, web3}) => {
+
+  itWeb3('With escrow', async ({api, web3}) => {
     const alice = privateKey('//Alice');
     const matcherOwner = await createEthAccountWithBalance(api, web3);
+    const escrow = await createEthAccountWithBalance(api, web3);
     const matcherContract = new web3.eth.Contract(JSON.parse((await readFile(`${__dirname}/MarketPlace.abi`)).toString()), undefined, {
       from: matcherOwner,
       ...GAS_ARGS,
     });
-    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner});
+    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner, gas: 10000000});
+    await matcher.methods.setEscrow(escrow).send({from: matcherOwner});
+    const helpers = contractHelpers(web3, matcherOwner);
+    await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
+    await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
+    await transferBalanceToEth(api, alice, matcher.options.address);
 
     const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+    await setCollectionLimitsExpectSuccess(alice, collectionId, {sponsorApproveTimeout: 1});
     const evmCollection = new web3.eth.Contract(nonFungibleAbi as any, collectionIdToAddress(collectionId), {from: matcherOwner});
+    await setCollectionSponsorExpectSuccess(collectionId, alice.address);
+    await transferBalanceToEth(api, alice, subToEth(alice.address));
+    await confirmSponsorshipExpectSuccess(collectionId);
 
-    const fungibleId = await createCollectionExpectSuccess({mode: {type: 'Fungible', decimalPoints: 0}});
-    const evmFungible = new web3.eth.Contract(fungibleAbi as any, collectionIdToAddress(fungibleId), {from: matcherOwner, ...GAS_ARGS});
-    await createFungibleItemExpectSuccess(alice, fungibleId, {Value: PRICE}, {Ethereum: subToEth(alice.address)});
+    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(alice.address), true).send({from: matcherOwner});
+    await addToAllowListExpectSuccess(alice, collectionId, evmToAddress(subToEth(alice.address)));
 
-    const seller = privateKey('//Bob');
+    const seller = privateKey(`//Seller/${Date.now()}`);
+    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(seller.address), true).send({from: matcherOwner});
 
     const tokenId = await createItemExpectSuccess(alice, collectionId, 'NFT', seller.address);
 
     // To transfer item to matcher it first needs to be transfered to EVM account of bob
     await transferExpectSuccess(collectionId, tokenId, seller, {Ethereum: subToEth(seller.address)});
-    // Fees will be paid from EVM account, so we should have some balance here
-    await transferBalanceExpectSuccess(api, seller, evmToAddress(subToEth(seller.address)), 10n ** 18n);
-    await transferBalanceExpectSuccess(api, alice, evmToAddress(subToEth(alice.address)), 10n ** 18n);
 
     // Token is owned by seller initially
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: subToEthLowercase(seller.address)});
@@ -120,66 +138,55 @@
     // Ask
     {
       await executeEthTxOnSub(web3, api, seller, evmCollection, m => m.approve(matcher.options.address, tokenId));
-      await executeEthTxOnSub(web3, api, seller, matcher, m => m.addAsk(PRICE, evmFungible.options.address, evmCollection.options.address, tokenId, 1));
+      await executeEthTxOnSub(web3, api, seller, matcher, m => m.addAsk(PRICE, '0x0000000000000000000000000000000000000001', evmCollection.options.address, tokenId));
     }
 
     // Token is transferred to matcher
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: matcher.options.address.toLowerCase()});
 
+    // Give buyer KSM
+    await matcher.methods.depositKSM(PRICE, subToEth(alice.address)).send({from: escrow});
+
     // Buy
     {
-      const sellerBalanceBeforePurchase = BigInt(await evmFungible.methods.balanceOf(subToEth(seller.address)).call());
-      const buyerBalanceBeforePurchase = BigInt(await evmFungible.methods.balanceOf(subToEth(alice.address)).call());
+      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal('0');
+      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal(PRICE.toString());
 
-      await executeEthTxOnSub(web3, api, alice, evmFungible, m => m.approve(matcher.options.address, PRICE));
-      // There is two functions named 'buy', so we should provide full signature
-      await executeEthTxOnSub(web3, api, alice, matcher, m =>
-        m['buy(address,uint256,address,uint256)'](evmCollection.options.address, tokenId, evmFungible.options.address, PRICE));
+      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buyKSM(evmCollection.options.address, tokenId, subToEth(alice.address), subToEth(alice.address)));
 
-      // Approved price is removed from buyer balance, and added to seller
-      expect(BigInt(await evmFungible.methods.balanceOf(subToEth(seller.address)).call()) - sellerBalanceBeforePurchase === PRICE);
-      expect(buyerBalanceBeforePurchase - BigInt(await evmFungible.methods.balanceOf(subToEth(alice.address)).call()) === PRICE);
+      // Price is removed from buyer balance, and added to seller
+      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal('0');
+      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal(PRICE.toString());
     }
 
     // Token is transferred to evm account of alice
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: subToEthLowercase(alice.address)});
 
-
     // Transfer token to substrate side of alice
     await transferFromExpectSuccess(collectionId, tokenId, alice, {Ethereum: subToEth(alice.address)}, {Substrate: alice.address});
 
-    // Token is transferred to substrate account of alice
+    // Token is transferred to substrate account of alice, seller received funds
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Substrate: alice.address});
   });
 
-  itWeb3('With escrow', async ({api, web3}) => {
+
+  itWeb3('Sell tokens from substrate user via EVM contract', async ({api, web3}) => {
     const alice = privateKey('//Alice');
     const matcherOwner = await createEthAccountWithBalance(api, web3);
-    const escrow = await createEthAccountWithBalance(api, web3);
     const matcherContract = new web3.eth.Contract(JSON.parse((await readFile(`${__dirname}/MarketPlace.abi`)).toString()), undefined, {
       from: matcherOwner,
       ...GAS_ARGS,
     });
-    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments: [matcherOwner]}).send({from: matcherOwner, gas: 10000000});
-    await matcher.methods.setEscrow(escrow).send({from: matcherOwner});
-    const helpers = contractHelpers(web3, matcherOwner);
-    await helpers.methods.setSponsoringMode(matcher.options.address, SponsoringMode.Allowlisted).send({from: matcherOwner});
-    await helpers.methods.setSponsoringRateLimit(matcher.options.address, 1).send({from: matcherOwner});
+    const matcher = await matcherContract.deploy({data: (await readFile(`${__dirname}/MarketPlace.bin`)).toString(), arguments:[matcherOwner]}).send({from: matcherOwner});
     await transferBalanceToEth(api, alice, matcher.options.address);
 
     const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
     await setCollectionLimitsExpectSuccess(alice, collectionId, {sponsorApproveTimeout: 1});
     const evmCollection = new web3.eth.Contract(nonFungibleAbi as any, collectionIdToAddress(collectionId), {from: matcherOwner});
-    await setCollectionSponsorExpectSuccess(collectionId, alice.address);
-    await transferBalanceToEth(api, alice, subToEth(alice.address));
-    await confirmSponsorshipExpectSuccess(collectionId);
-
-    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(alice.address), true).send({from: matcherOwner});
-    await addToAllowListExpectSuccess(alice, collectionId, evmToAddress(subToEth(alice.address)));
 
     const seller = privateKey(`//Seller/${Date.now()}`);
-    await helpers.methods.toggleAllowed(matcher.options.address, subToEth(seller.address), true).send({from: matcherOwner});
-
+    await transferBalanceTo(api, alice, seller.address);
+    
     const tokenId = await createItemExpectSuccess(alice, collectionId, 'NFT', seller.address);
 
     // To transfer item to matcher it first needs to be transfered to EVM account of bob
@@ -197,19 +204,11 @@
     // Token is transferred to matcher
     expect(await getTokenOwner(api, collectionId, tokenId)).to.be.deep.equal({Ethereum: matcher.options.address.toLowerCase()});
 
-    // Give buyer KSM
-    await matcher.methods.depositKSM(PRICE, subToEth(alice.address)).send({from: escrow});
-
     // Buy
     {
-      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal('0');
-      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal(PRICE.toString());
-
-      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buyKSM(evmCollection.options.address, tokenId, subToEth(alice.address), subToEth(alice.address)));
-
-      // Price is removed from buyer balance, and added to seller
-      expect(await matcher.methods.balanceKSM(subToEth(alice.address)).call()).to.be.equal('0');
-      expect(await matcher.methods.balanceKSM(subToEth(seller.address)).call()).to.be.equal(PRICE.toString());
+      const sellerBalanceBeforePurchase = await getBalanceSingle(api, seller.address);
+      await executeEthTxOnSub(web3, api, alice, matcher, m => m.buy(evmCollection.options.address, tokenId), {value: PRICE});
+      expect(await getBalanceSingle(api, seller.address) - sellerBalanceBeforePurchase === PRICE);
     }
 
     // Token is transferred to evm account of alice
modifiedtests/src/eth/util/helpers.tsdiffbeforeafterboth
--- a/tests/src/eth/util/helpers.ts
+++ b/tests/src/eth/util/helpers.ts
@@ -29,6 +29,7 @@
 import privateKey from '../../substrate/privateKey';
 import contractHelpersAbi from './contractHelpersAbi.json';
 import getBalance from '../../substrate/get-balance';
+import waitNewBlocks from '../../substrate/wait-new-blocks';
 
 export const GAS_ARGS = {gas: 2500000};
 
@@ -241,6 +242,12 @@
   return collector;
 }
 
+/** 
+ * pallet evm_contract_helpers
+ * @param web3 
+ * @param caller - eth address
+ * @returns 
+ */
 export function contractHelpers(web3: Web3, caller: string) {
   return new web3.eth.Contract(contractHelpersAbi as any, '0x842899ECF380553E8a4de75bF534cdf6fBF64049', {from: caller, ...GAS_ARGS});
 }
@@ -287,6 +294,8 @@
 
   await call();
 
+  // In dev mode, the transaction might not finish processing in time
+  await waitNewBlocks(api, 1);
   const after = await ethBalanceViaSub(api, user);
 
   // Can't use .to.be.less, because chai doesn't supports bigint
modifiedtests/src/interfaces/augment-api-errors.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-errors.ts
+++ b/tests/src/interfaces/augment-api-errors.ts
@@ -105,6 +105,10 @@
        **/
       NoPermission: AugmentedError<ApiType>;
       /**
+       * Not sufficient founds to perform action
+       **/
+      NotSufficientFounds: AugmentedError<ApiType>;
+      /**
        * Tried to enable permissions which are only permitted to be disabled
        **/
       OwnerPermissionsCantBeReverted: AugmentedError<ApiType>;
modifiedtests/src/interfaces/augment-api-events.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-events.ts
+++ b/tests/src/interfaces/augment-api-events.ts
@@ -4,7 +4,7 @@
 import type { ApiTypes } from '@polkadot/api-base/types';
 import type { Null, Option, Result, U256, U8aFixed, u128, u32, u64, u8 } from '@polkadot/types-codec';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchInfo, OrmlVestingVestingSchedule, PalletCommonAccountBasicCrossAccountIdRepr, SpRuntimeDispatchError, UpDataStructsAccessMode, XcmV1MultiLocation, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
+import type { EthereumLog, EvmCoreErrorExitReason, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchInfo, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, SpRuntimeDispatchError, UpDataStructsAccessMode, XcmV1MultiLocation, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation } from '@polkadot/types/lookup';
 
 declare module '@polkadot/api-base/types/events' {
   export interface AugmentedEvents<ApiType extends ApiTypes> {
@@ -68,7 +68,7 @@
        * 
        * * amount
        **/
-      Approved: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      Approved: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * New collection was created
        * 
@@ -102,7 +102,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      ItemCreated: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      ItemCreated: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Collection item was burned.
        * 
@@ -116,7 +116,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      ItemDestroyed: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      ItemDestroyed: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Item was transferred
        * 
@@ -130,7 +130,7 @@
        * 
        * * amount: Always 1 for NFT
        **/
-      Transfer: AugmentedEvent<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+      Transfer: AugmentedEvent<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
       /**
        * Generic event
        **/
@@ -483,7 +483,7 @@
        * 
        * * user:  Address.
        **/
-      AllowListAddressAdded: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      AllowListAddressAdded: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Address was remove from allow list
        * 
@@ -493,7 +493,7 @@
        * 
        * * user:  Address.
        **/
-      AllowListAddressRemoved: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      AllowListAddressRemoved: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection admin was added
        * 
@@ -503,7 +503,7 @@
        * 
        * * admin:  Admin address.
        **/
-      CollectionAdminAdded: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      CollectionAdminAdded: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection admin was removed
        * 
@@ -513,7 +513,7 @@
        * 
        * * admin:  Admin address.
        **/
-      CollectionAdminRemoved: AugmentedEvent<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      CollectionAdminRemoved: AugmentedEvent<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection limits was set
        * 
modifiedtests/src/interfaces/augment-api-query.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-query.ts
+++ b/tests/src/interfaces/augment-api-query.ts
@@ -5,7 +5,7 @@
 import type { BTreeMap, Bytes, Option, U256, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, H160, H256 } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, UpDataStructsCollection, UpDataStructsCollectionStats } from '@polkadot/types/lookup';
+import type { CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueQueueConfigData, EthereumBlock, EthereumReceiptReceiptV3, EthereumTransactionTransactionV2, FpRpcTransactionStatus, FrameSupportWeightsPerDispatchClassU64, FrameSystemAccountInfo, FrameSystemEventRecord, FrameSystemLastRuntimeUpgradeInfo, FrameSystemPhase, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesReleases, PalletBalancesReserveData, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmContractHelpersSponsoringModeT, PalletNonfungibleItemData, PalletRefungibleItemData, PalletTransactionPaymentReleases, PalletTreasuryProposal, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpRuntimeDigest, UpDataStructsCollection, UpDataStructsCollectionStats } from '@polkadot/types/lookup';
 import type { Observable } from '@polkadot/types/types';
 
 declare module '@polkadot/api-base/types/storage' {
@@ -73,7 +73,7 @@
       /**
        * Allowlisted collection users
        **/
-      allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      allowlist: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Collection info
        **/
@@ -87,7 +87,7 @@
       /**
        * List of collection admins
        **/
-      isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      isAdmin: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Generic query
        **/
@@ -173,8 +173,8 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     fungible: {
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       totalSupply: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u128>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       /**
        * Generic query
@@ -208,12 +208,12 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     nonfungible: {
-      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletCommonAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
+      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletEvmAccountBasicCrossAccountIdRepr>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       /**
        * Used to enumerate tokens owned by account
        **/
-      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]>;
+      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;
       tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<Option<PalletNonfungibleItemData>>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
@@ -371,13 +371,13 @@
       [key: string]: QueryableStorageEntry<ApiType>;
     };
     refungible: {
-      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr]>;
-      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      accountBalance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u32>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      allowance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg4: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr]>;
+      balance: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array, arg3: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => Observable<u128>, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]> & QueryableStorageEntry<ApiType, [u32, u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Used to enumerate tokens owned by account
        **/
-      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32]>;
+      owned: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, arg3: u32 | AnyNumber | Uint8Array) => Observable<bool>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]> & QueryableStorageEntry<ApiType, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32]>;
       tokenData: AugmentedQuery<ApiType, (arg1: u32 | AnyNumber | Uint8Array, arg2: u32 | AnyNumber | Uint8Array) => Observable<PalletRefungibleItemData>, [u32, u32]> & QueryableStorageEntry<ApiType, [u32, u32]>;
       tokensBurnt: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
       tokensMinted: AugmentedQuery<ApiType, (arg: u32 | AnyNumber | Uint8Array) => Observable<u32>, [u32]> & QueryableStorageEntry<ApiType, [u32]>;
modifiedtests/src/interfaces/augment-api-rpc.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-api-rpc.ts
+++ b/tests/src/interfaces/augment-api-rpc.ts
@@ -1,7 +1,7 @@
 // Auto-generated via `yarn polkadot-types-from-chain`, do not edit
 /* eslint-disable */
 
-import type { PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsCollection, UpDataStructsCollectionStats } from './unique';
+import type { PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCollection, UpDataStructsCollectionStats, UpDataStructsCollectionLimits } from './unique';
 import type { AugmentedRpc } from '@polkadot/rpc-core/types';
 import type { Metadata, StorageKey } from '@polkadot/types';
 import type { Bytes, HashMap, Json, Null, Option, Text, U256, U64, Vec, bool, u128, u32, u64 } from '@polkadot/types-codec';
@@ -562,31 +562,31 @@
       /**
        * Get amount of different user tokens
        **/
-      accountBalance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
+      accountBalance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
       /**
        * Get tokens owned by account
        **/
-      accountTokens: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<u32>>>;
+      accountTokens: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<u32>>>;
       /**
        * Get admin list
        **/
-      adminlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletCommonAccountBasicCrossAccountIdRepr>>>;
+      adminlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletEvmAccountBasicCrossAccountIdRepr>>>;
       /**
        * Get allowed amount
        **/
-      allowance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, sender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, spender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
+      allowance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, sender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
       /**
        * Check if user is allowed to use collection
        **/
-      allowed: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<bool>>;
+      allowed: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, at?: Hash | string | Uint8Array) => Observable<bool>>;
       /**
        * Get allowlist
        **/
-      allowlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletCommonAccountBasicCrossAccountIdRepr>>>;
+      allowlist: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Vec<PalletEvmAccountBasicCrossAccountIdRepr>>>;
       /**
        * Get amount of specific account token
        **/
-      balance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
+      balance: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, account: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u128>>;
       /**
        * Get collection by specified id
        **/
@@ -604,6 +604,10 @@
        **/
       constMetadata: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Bytes>>;
       /**
+       * Get effective collection limits
+       **/
+      effectiveCollectionLimits: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<Option<UpDataStructsCollectionLimits>>>;
+      /**
        * Get last token id
        **/
       lastTokenId: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<u32>>;
@@ -614,7 +618,7 @@
       /**
        * Get token owner
        **/
-      tokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<PalletCommonAccountBasicCrossAccountIdRepr>>;
+      tokenOwner: AugmentedRpc<(collection: u32 | AnyNumber | Uint8Array, tokenId: u32 | AnyNumber | Uint8Array, at?: Hash | string | Uint8Array) => Observable<PalletEvmAccountBasicCrossAccountIdRepr>>;
       /**
        * Get token variable metadata
        **/
modifiedtests/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, Vec, bool, u128, u16, u32, u64 } from '@polkadot/types-codec';
 import type { AnyNumber, ITuple } from '@polkadot/types-codec/types';
 import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';
-import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsAccessMode, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
+import type { CumulusPrimitivesParachainInherentParachainInherentData, EthereumTransactionTransactionV2, OrmlVestingVestingSchedule, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsAccessMode, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCreateCollectionData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, XcmV1MultiLocation, XcmV2WeightLimit, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from '@polkadot/types/lookup';
 
 declare module '@polkadot/api-base/types/submittable' {
   export interface AugmentedSubmittables<ApiType extends ApiTypes> {
@@ -551,7 +551,7 @@
        * 
        * * new_admin_id: Address of new admin to add.
        **/
-      addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      addCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newAdminId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Add an address to allow list.
        * 
@@ -566,7 +566,7 @@
        * 
        * * address.
        **/
-      addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      addToAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Set, change, or remove approved address to transfer the ownership of the NFT.
        * 
@@ -584,7 +584,7 @@
        * 
        * * item_id: ID of the item.
        **/
-      approve: AugmentedSubmittable<(spender: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      approve: AugmentedSubmittable<(spender: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, amount: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Destroys a concrete instance of NFT on behalf of the owner
        * See also: [`approve`]
@@ -603,7 +603,7 @@
        * 
        * * from: owner of item
        **/
-      burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, u32, u128]>;
+      burnFrom: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, u32, u128]>;
       /**
        * Destroys a concrete instance of NFT.
        * 
@@ -688,7 +688,7 @@
        * 
        * * data: Token data to store on chain.
        **/
-      createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;
+      createItem: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, data: UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, UpDataStructsCreateItemData]>;
       /**
        * This method creates multiple items in a collection created with CreateCollection method.
        * 
@@ -709,7 +709,7 @@
        * 
        * * owner: Address, initial owner of the NFT.
        **/
-      createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;
+      createMultipleItems: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, owner: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, itemsData: Vec<UpDataStructsCreateItemData> | (UpDataStructsCreateItemData | { NFT: any } | { Fungible: any } | { ReFungible: any } | string | Uint8Array)[]) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr, Vec<UpDataStructsCreateItemData>]>;
       createMultipleItemsEx: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, data: UpDataStructsCreateItemExData | { NFT: any } | { Fungible: any } | { RefungibleMultipleItems: any } | { RefungibleMultipleOwners: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCreateItemExData]>;
       /**
        * **DANGEROUS**: Destroys collection and all NFTs within this collection. Users irrecoverably lose their assets and may lose real money.
@@ -737,7 +737,7 @@
        * 
        * * account_id: Address of admin to remove.
        **/
-      removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      removeCollectionAdmin: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, accountId: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       /**
        * Switch back to pay-per-own-transaction model.
        * 
@@ -764,7 +764,7 @@
        * 
        * * address.
        **/
-      removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+      removeFromAllowList: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, address: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
       setCollectionLimits: AugmentedSubmittable<(collectionId: u32 | AnyNumber | Uint8Array, newLimit: UpDataStructsCollectionLimits | { accountTokenOwnershipLimit?: any; sponsoredDataSize?: any; sponsoredDataRateLimit?: any; tokenLimit?: any; sponsorTransferTimeout?: any; sponsorApproveTimeout?: any; ownerCanTransfer?: any; ownerCanDestroy?: any; transfersEnabled?: any } | string | Uint8Array) => SubmittableExtrinsic<ApiType>, [u32, UpDataStructsCollectionLimits]>;
       /**
        * # Permissions
@@ -938,7 +938,7 @@
        * * Fungible Mode: Must specify transferred amount
        * * Re-Fungible Mode: Must specify transferred portion (between 0 and 1)
        **/
-      transfer: AugmentedSubmittable<(recipient: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      transfer: AugmentedSubmittable<(recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Change ownership of a NFT on behalf of the owner. See Approve method for additional information. After this method executes, the approval is removed so that the approved address will not be able to transfer this NFT again from this owner.
        * 
@@ -960,7 +960,7 @@
        * 
        * * value: Amount to transfer.
        **/
-      transferFrom: AugmentedSubmittable<(from: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletCommonAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
+      transferFrom: AugmentedSubmittable<(from: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, recipient: PalletEvmAccountBasicCrossAccountIdRepr | { Substrate: any } | { Ethereum: any } | string | Uint8Array, collectionId: u32 | AnyNumber | Uint8Array, itemId: u32 | AnyNumber | Uint8Array, value: u128 | AnyNumber | Uint8Array) => SubmittableExtrinsic<ApiType>, [PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u32, u32, u128]>;
       /**
        * Generic tx
        **/
modifiedtests/src/interfaces/augment-types.tsdiffbeforeafterboth
--- a/tests/src/interfaces/augment-types.ts
+++ b/tests/src/interfaces/augment-types.ts
@@ -1,7 +1,7 @@
 // Auto-generated via `yarn polkadot-types-from-defs`, do not edit
 /* eslint-disable */
 
-import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UniqueRuntimeRuntime, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './unique';
+import type { CumulusPalletDmpQueueCall, CumulusPalletDmpQueueConfigData, CumulusPalletDmpQueueError, CumulusPalletDmpQueueEvent, CumulusPalletDmpQueuePageIndexData, CumulusPalletParachainSystemCall, CumulusPalletParachainSystemError, CumulusPalletParachainSystemEvent, CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot, CumulusPalletXcmCall, CumulusPalletXcmError, CumulusPalletXcmEvent, CumulusPalletXcmpQueueCall, CumulusPalletXcmpQueueError, CumulusPalletXcmpQueueEvent, CumulusPalletXcmpQueueInboundChannelDetails, CumulusPalletXcmpQueueInboundState, CumulusPalletXcmpQueueOutboundChannelDetails, CumulusPalletXcmpQueueOutboundState, CumulusPalletXcmpQueueQueueConfigData, CumulusPrimitivesParachainInherentParachainInherentData, EthbloomBloom, EthereumBlock, EthereumHeader, EthereumLog, EthereumReceiptEip658ReceiptData, EthereumReceiptReceiptV3, EthereumTransactionAccessListItem, EthereumTransactionEip1559Transaction, EthereumTransactionEip2930Transaction, EthereumTransactionLegacyTransaction, EthereumTransactionTransactionAction, EthereumTransactionTransactionSignature, EthereumTransactionTransactionV2, EthereumTypesHashH64, EvmCoreErrorExitError, EvmCoreErrorExitFatal, EvmCoreErrorExitReason, EvmCoreErrorExitRevert, EvmCoreErrorExitSucceed, FpRpcTransactionStatus, FrameSupportPalletId, FrameSupportTokensMiscBalanceStatus, FrameSupportWeightsDispatchClass, FrameSupportWeightsDispatchInfo, FrameSupportWeightsPays, FrameSupportWeightsPerDispatchClassU32, FrameSupportWeightsPerDispatchClassU64, FrameSupportWeightsPerDispatchClassWeightsPerClass, FrameSupportWeightsRuntimeDbWeight, FrameSupportWeightsWeightToFeeCoefficient, FrameSystemAccountInfo, FrameSystemCall, FrameSystemError, FrameSystemEvent, FrameSystemEventRecord, FrameSystemExtensionsCheckGenesis, FrameSystemExtensionsCheckNonce, FrameSystemExtensionsCheckSpecVersion, FrameSystemExtensionsCheckWeight, FrameSystemLastRuntimeUpgradeInfo, FrameSystemLimitsBlockLength, FrameSystemLimitsBlockWeights, FrameSystemLimitsWeightsPerClass, FrameSystemPhase, OpalRuntimeRuntime, OrmlVestingModuleCall, OrmlVestingModuleError, OrmlVestingModuleEvent, OrmlVestingVestingSchedule, PalletBalancesAccountData, PalletBalancesBalanceLock, PalletBalancesCall, PalletBalancesError, PalletBalancesEvent, PalletBalancesReasons, PalletBalancesReleases, PalletBalancesReserveData, PalletCommonError, PalletCommonEvent, PalletEthereumCall, PalletEthereumError, PalletEthereumEvent, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmCall, PalletEvmCoderSubstrateError, PalletEvmContractHelpersError, PalletEvmContractHelpersSponsoringModeT, PalletEvmError, PalletEvmEvent, PalletEvmMigrationCall, PalletEvmMigrationError, PalletFungibleError, PalletInflationCall, PalletNonfungibleError, PalletNonfungibleItemData, PalletRefungibleError, PalletRefungibleItemData, PalletSudoCall, PalletSudoError, PalletSudoEvent, PalletTemplateTransactionPaymentCall, PalletTemplateTransactionPaymentChargeTransactionPayment, PalletTimestampCall, PalletTransactionPaymentReleases, PalletTreasuryCall, PalletTreasuryError, PalletTreasuryEvent, PalletTreasuryProposal, PalletUniqueCall, PalletUniqueError, PalletUniqueRawEvent, PalletXcmCall, PalletXcmError, PalletXcmEvent, PolkadotCorePrimitivesInboundDownwardMessage, PolkadotCorePrimitivesInboundHrmpMessage, PolkadotCorePrimitivesOutboundHrmpMessage, PolkadotParachainPrimitivesXcmpMessageFormat, PolkadotPrimitivesV1AbridgedHostConfiguration, PolkadotPrimitivesV1AbridgedHrmpChannel, PolkadotPrimitivesV1PersistedValidationData, PolkadotPrimitivesV1UpgradeRestriction, SpCoreEcdsaSignature, SpCoreEd25519Signature, SpCoreSr25519Signature, SpRuntimeArithmeticError, SpRuntimeDigest, SpRuntimeDigestDigestItem, SpRuntimeDispatchError, SpRuntimeModuleError, SpRuntimeMultiSignature, SpRuntimeTokenError, SpTrieStorageProof, SpVersionRuntimeVersion, UpDataStructsAccessMode, UpDataStructsCollection, UpDataStructsCollectionLimits, UpDataStructsCollectionMode, UpDataStructsCollectionStats, UpDataStructsCreateCollectionData, UpDataStructsCreateFungibleData, UpDataStructsCreateItemData, UpDataStructsCreateItemExData, UpDataStructsCreateNftData, UpDataStructsCreateNftExData, UpDataStructsCreateReFungibleData, UpDataStructsCreateRefungibleExData, UpDataStructsMetaUpdatePermission, UpDataStructsSchemaVersion, UpDataStructsSponsoringRateLimit, UpDataStructsSponsorshipState, XcmDoubleEncoded, XcmV0Junction, XcmV0JunctionBodyId, XcmV0JunctionBodyPart, XcmV0JunctionNetworkId, XcmV0MultiAsset, XcmV0MultiLocation, XcmV0Order, XcmV0OriginKind, XcmV0Response, XcmV0Xcm, XcmV1Junction, XcmV1MultiAsset, XcmV1MultiLocation, XcmV1MultiassetAssetId, XcmV1MultiassetAssetInstance, XcmV1MultiassetFungibility, XcmV1MultiassetMultiAssetFilter, XcmV1MultiassetMultiAssets, XcmV1MultiassetWildFungibility, XcmV1MultiassetWildMultiAsset, XcmV1MultilocationJunctions, XcmV1Order, XcmV1Response, XcmV1Xcm, XcmV2Instruction, XcmV2Response, XcmV2TraitsError, XcmV2TraitsOutcome, XcmV2WeightLimit, XcmV2Xcm, XcmVersionedMultiAssets, XcmVersionedMultiLocation, XcmVersionedXcm } from './unique';
 import type { Data, StorageKey } from '@polkadot/types';
 import type { BitVec, Bool, Bytes, I128, I16, I256, I32, I64, I8, Json, Null, Raw, Text, Type, U128, U16, U256, U32, U64, U8, USize, bool, i128, i16, i256, i32, i64, i8, u128, u16, u256, u32, u64, u8, usize } from '@polkadot/types-codec';
 import type { AssetApproval, AssetApprovalKey, AssetBalance, AssetDestroyWitness, AssetDetails, AssetMetadata, TAssetBalance, TAssetDepositBalance } from '@polkadot/types/interfaces/assets';
@@ -18,7 +18,7 @@
 import type { StatementKind } from '@polkadot/types/interfaces/claims';
 import type { CollectiveOrigin, MemberCount, ProposalIndex, Votes, VotesTo230 } from '@polkadot/types/interfaces/collective';
 import type { AuthorityId, RawVRFOutput } from '@polkadot/types/interfaces/consensus';
-import type { AliveContractInfo, CodeHash, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultErr, ContractExecResultErrModule, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateReturnValue, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts';
+import type { AliveContractInfo, CodeHash, CodeSource, CodeUploadRequest, CodeUploadResult, CodeUploadResultValue, ContractCallFlags, ContractCallRequest, ContractExecResult, ContractExecResultErr, ContractExecResultErrModule, ContractExecResultOk, ContractExecResultResult, ContractExecResultSuccessTo255, ContractExecResultSuccessTo260, ContractExecResultTo255, ContractExecResultTo260, ContractExecResultTo267, ContractInfo, ContractInstantiateResult, ContractInstantiateResultTo267, ContractInstantiateResultTo299, ContractReturnFlags, ContractStorageKey, DeletedContract, ExecReturnValue, Gas, HostFnWeights, HostFnWeightsTo264, InstantiateRequest, InstantiateRequestV1, InstantiateRequestV2, InstantiateReturnValue, InstantiateReturnValueOk, InstantiateReturnValueTo267, InstructionWeights, Limits, LimitsTo264, PrefabWasmModule, RentProjection, Schedule, ScheduleTo212, ScheduleTo258, ScheduleTo264, SeedOf, StorageDeposit, TombstoneContractInfo, TrieId } from '@polkadot/types/interfaces/contracts';
 import type { ContractConstructorSpecLatest, ContractConstructorSpecV0, ContractConstructorSpecV1, ContractConstructorSpecV2, ContractConstructorSpecV3, ContractContractSpecV0, ContractContractSpecV1, ContractContractSpecV2, ContractContractSpecV3, ContractCryptoHasher, ContractDiscriminant, ContractDisplayName, ContractEventParamSpecLatest, ContractEventParamSpecV0, ContractEventParamSpecV2, ContractEventSpecLatest, ContractEventSpecV0, ContractEventSpecV1, ContractEventSpecV2, ContractLayoutArray, ContractLayoutCell, ContractLayoutEnum, ContractLayoutHash, ContractLayoutHashingStrategy, ContractLayoutKey, ContractLayoutStruct, ContractLayoutStructField, ContractMessageParamSpecLatest, ContractMessageParamSpecV0, ContractMessageParamSpecV2, ContractMessageSpecLatest, ContractMessageSpecV0, ContractMessageSpecV1, ContractMessageSpecV2, ContractMetadata, ContractMetadataLatest, ContractMetadataV0, ContractMetadataV1, ContractMetadataV2, ContractMetadataV3, ContractProject, ContractProjectContract, ContractProjectInfo, ContractProjectSource, ContractProjectV0, ContractSelector, ContractStorageLayout, ContractTypeSpec } from '@polkadot/types/interfaces/contractsAbi';
 import type { FundIndex, FundInfo, LastContribution, TrieIndex } from '@polkadot/types/interfaces/crowdloan';
 import type { ConfigData, MessageId, OverweightIndex, PageCounter, PageIndexData } from '@polkadot/types/interfaces/cumulus';
@@ -198,6 +198,7 @@
     ClassMetadata: ClassMetadata;
     CodecHash: CodecHash;
     CodeHash: CodeHash;
+    CodeSource: CodeSource;
     CodeUploadRequest: CodeUploadRequest;
     CodeUploadResult: CodeUploadResult;
     CodeUploadResultValue: CodeUploadResultValue;
@@ -250,6 +251,7 @@
     ContractInfo: ContractInfo;
     ContractInstantiateResult: ContractInstantiateResult;
     ContractInstantiateResultTo267: ContractInstantiateResultTo267;
+    ContractInstantiateResultTo299: ContractInstantiateResultTo299;
     ContractLayoutArray: ContractLayoutArray;
     ContractLayoutCell: ContractLayoutCell;
     ContractLayoutEnum: ContractLayoutEnum;
@@ -591,7 +593,10 @@
     InstanceId: InstanceId;
     InstanceMetadata: InstanceMetadata;
     InstantiateRequest: InstantiateRequest;
+    InstantiateRequestV1: InstantiateRequestV1;
+    InstantiateRequestV2: InstantiateRequestV2;
     InstantiateReturnValue: InstantiateReturnValue;
+    InstantiateReturnValueOk: InstantiateReturnValueOk;
     InstantiateReturnValueTo267: InstantiateReturnValueTo267;
     InstructionV2: InstructionV2;
     InstructionWeights: InstructionWeights;
@@ -707,6 +712,7 @@
     OffchainAccuracyCompact: OffchainAccuracyCompact;
     OffenceDetails: OffenceDetails;
     Offender: Offender;
+    OpalRuntimeRuntime: OpalRuntimeRuntime;
     OpaqueCall: OpaqueCall;
     OpaqueMultiaddr: OpaqueMultiaddr;
     OpaqueNetworkState: OpaqueNetworkState;
@@ -746,7 +752,6 @@
     PalletBalancesReserveData: PalletBalancesReserveData;
     PalletCallMetadataLatest: PalletCallMetadataLatest;
     PalletCallMetadataV14: PalletCallMetadataV14;
-    PalletCommonAccountBasicCrossAccountIdRepr: PalletCommonAccountBasicCrossAccountIdRepr;
     PalletCommonError: PalletCommonError;
     PalletCommonEvent: PalletCommonEvent;
     PalletConstantMetadataLatest: PalletConstantMetadataLatest;
@@ -758,6 +763,7 @@
     PalletEthereumEvent: PalletEthereumEvent;
     PalletEventMetadataLatest: PalletEventMetadataLatest;
     PalletEventMetadataV14: PalletEventMetadataV14;
+    PalletEvmAccountBasicCrossAccountIdRepr: PalletEvmAccountBasicCrossAccountIdRepr;
     PalletEvmCall: PalletEvmCall;
     PalletEvmCoderSubstrateError: PalletEvmCoderSubstrateError;
     PalletEvmContractHelpersError: PalletEvmContractHelpersError;
@@ -1146,7 +1152,6 @@
     UnappliedSlash: UnappliedSlash;
     UnappliedSlashOther: UnappliedSlashOther;
     UncleEntryItem: UncleEntryItem;
-    UniqueRuntimeRuntime: UniqueRuntimeRuntime;
     UnknownTransaction: UnknownTransaction;
     UnlockChunk: UnlockChunk;
     UnrewardedRelayer: UnrewardedRelayer;
modifiedtests/src/interfaces/lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/lookup.ts
+++ b/tests/src/interfaces/lookup.ts
@@ -1254,11 +1254,11 @@
       },
       add_to_allow_list: {
         collectionId: 'u32',
-        address: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        address: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       remove_from_allow_list: {
         collectionId: 'u32',
-        address: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        address: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       set_public_access_mode: {
         collectionId: 'u32',
@@ -1274,11 +1274,11 @@
       },
       add_collection_admin: {
         collectionId: 'u32',
-        newAdminId: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        newAdminId: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       remove_collection_admin: {
         collectionId: 'u32',
-        accountId: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        accountId: 'PalletEvmAccountBasicCrossAccountIdRepr',
       },
       set_collection_sponsor: {
         collectionId: 'u32',
@@ -1292,12 +1292,12 @@
       },
       create_item: {
         collectionId: 'u32',
-        owner: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        owner: 'PalletEvmAccountBasicCrossAccountIdRepr',
         data: 'UpDataStructsCreateItemData',
       },
       create_multiple_items: {
         collectionId: 'u32',
-        owner: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        owner: 'PalletEvmAccountBasicCrossAccountIdRepr',
         itemsData: 'Vec<UpDataStructsCreateItemData>',
       },
       create_multiple_items_ex: {
@@ -1315,25 +1315,25 @@
       },
       burn_from: {
         collectionId: 'u32',
-        from: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        from: 'PalletEvmAccountBasicCrossAccountIdRepr',
         itemId: 'u32',
         value: 'u128',
       },
       transfer: {
-        recipient: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        recipient: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         value: 'u128',
       },
       approve: {
-        spender: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        spender: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         amount: 'u128',
       },
       transfer_from: {
-        from: 'PalletCommonAccountBasicCrossAccountIdRepr',
-        recipient: 'PalletCommonAccountBasicCrossAccountIdRepr',
+        from: 'PalletEvmAccountBasicCrossAccountIdRepr',
+        recipient: 'PalletEvmAccountBasicCrossAccountIdRepr',
         collectionId: 'u32',
         itemId: 'u32',
         value: 'u128',
@@ -1438,9 +1438,9 @@
     _enum: ['ItemOwner', 'Admin', 'None']
   },
   /**
-   * Lookup172: pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>
+   * Lookup172: pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>
    **/
-  PalletCommonAccountBasicCrossAccountIdRepr: {
+  PalletEvmAccountBasicCrossAccountIdRepr: {
     _enum: {
       Substrate: 'AccountId32',
       Ethereum: 'H160'
@@ -1478,31 +1478,31 @@
     pieces: 'u128'
   },
   /**
-   * Lookup180: up_data_structs::CreateItemExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup180: up_data_structs::CreateItemExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateItemExData: {
     _enum: {
       NFT: 'Vec<UpDataStructsCreateNftExData>',
-      Fungible: 'BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>',
+      Fungible: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>',
       RefungibleMultipleItems: 'Vec<UpDataStructsCreateRefungibleExData>',
       RefungibleMultipleOwners: 'UpDataStructsCreateRefungibleExData'
     }
   },
   /**
-   * Lookup182: up_data_structs::CreateNftExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup182: up_data_structs::CreateNftExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateNftExData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    owner: 'PalletCommonAccountBasicCrossAccountIdRepr'
+    owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
-   * Lookup189: up_data_structs::CreateRefungibleExData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup189: up_data_structs::CreateRefungibleExData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   UpDataStructsCreateRefungibleExData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    users: 'BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>'
+    users: 'BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>'
   },
   /**
    * Lookup192: pallet_template_transaction_payment::Call<T>
@@ -1756,7 +1756,7 @@
     }
   },
   /**
-   * Lookup225: frame_system::EventRecord<unique_runtime::Event, primitive_types::H256>
+   * Lookup225: frame_system::EventRecord<opal_runtime::Event, primitive_types::H256>
    **/
   FrameSystemEventRecord: {
     phase: 'FrameSystemPhase',
@@ -1902,19 +1902,19 @@
     }
   },
   /**
-   * Lookup238: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup238: pallet_unique::RawEvent<sp_core::crypto::AccountId32, pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletUniqueRawEvent: {
     _enum: {
       CollectionSponsorRemoved: 'u32',
-      CollectionAdminAdded: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
+      CollectionAdminAdded: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
       CollectionOwnedChanged: '(u32,AccountId32)',
       CollectionSponsorSet: '(u32,AccountId32)',
       ConstOnChainSchemaSet: 'u32',
       SponsorshipConfirmed: '(u32,AccountId32)',
-      CollectionAdminRemoved: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
-      AllowListAddressRemoved: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
-      AllowListAddressAdded: '(u32,PalletCommonAccountBasicCrossAccountIdRepr)',
+      CollectionAdminRemoved: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
+      AllowListAddressRemoved: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
+      AllowListAddressAdded: '(u32,PalletEvmAccountBasicCrossAccountIdRepr)',
       CollectionLimitSet: 'u32',
       MintPermissionSet: 'u32',
       OffchainSchemaSet: 'u32',
@@ -1930,10 +1930,10 @@
     _enum: {
       CollectionCreated: '(u32,u8,AccountId32)',
       CollectionDestroyed: 'u32',
-      ItemCreated: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      ItemDestroyed: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      Transfer: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,PalletCommonAccountBasicCrossAccountIdRepr,u128)',
-      Approved: '(u32,u32,PalletCommonAccountBasicCrossAccountIdRepr,PalletCommonAccountBasicCrossAccountIdRepr,u128)'
+      ItemCreated: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      ItemDestroyed: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      Transfer: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,PalletEvmAccountBasicCrossAccountIdRepr,u128)',
+      Approved: '(u32,u32,PalletEvmAccountBasicCrossAccountIdRepr,PalletEvmAccountBasicCrossAccountIdRepr,u128)'
     }
   },
   /**
@@ -2240,7 +2240,7 @@
    * Lookup297: pallet_common::pallet::Error<T>
    **/
   PalletCommonError: {
-    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'TokenVariableDataLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation']
+    _enum: ['CollectionNotFound', 'MustBeTokenOwner', 'NoPermission', 'PublicMintingNotAllowed', 'AddressNotInAllowlist', 'CollectionNameLimitExceeded', 'CollectionDescriptionLimitExceeded', 'CollectionTokenPrefixLimitExceeded', 'TotalCollectionsLimitExceeded', 'TokenVariableDataLimitExceeded', 'CollectionAdminCountExceeded', 'CollectionLimitBoundsExceeded', 'OwnerPermissionsCantBeReverted', 'TransferNotAllowed', 'AccountTokenLimitExceeded', 'CollectionTokenLimitExceeded', 'MetadataFlagFrozen', 'TokenNotFound', 'TokenValueTooLow', 'ApprovedValueTooLow', 'CantApproveMoreThanOwned', 'AddressIsZero', 'UnsupportedOperation', 'NotSufficientFounds']
   },
   /**
    * Lookup299: pallet_fungible::pallet::Error<T>
@@ -2262,12 +2262,12 @@
     _enum: ['NotRefungibleDataUsedToMintFungibleCollectionToken', 'WrongRefungiblePieces']
   },
   /**
-   * Lookup305: pallet_nonfungible::ItemData<pallet_common::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
+   * Lookup305: pallet_nonfungible::ItemData<pallet_evm::account::BasicCrossAccountIdRepr<sp_core::crypto::AccountId32>>
    **/
   PalletNonfungibleItemData: {
     constData: 'Bytes',
     variableData: 'Bytes',
-    owner: 'PalletCommonAccountBasicCrossAccountIdRepr'
+    owner: 'PalletEvmAccountBasicCrossAccountIdRepr'
   },
   /**
    * Lookup306: pallet_nonfungible::pallet::Error<T>
@@ -2417,11 +2417,11 @@
    **/
   FrameSystemExtensionsCheckWeight: 'Null',
   /**
-   * Lookup345: pallet_template_transaction_payment::ChargeTransactionPayment<unique_runtime::Runtime>
+   * Lookup345: pallet_template_transaction_payment::ChargeTransactionPayment<opal_runtime::Runtime>
    **/
   PalletTemplateTransactionPaymentChargeTransactionPayment: 'Compact<u128>',
   /**
-   * Lookup346: unique_runtime::Runtime
+   * Lookup346: opal_runtime::Runtime
    **/
-  UniqueRuntimeRuntime: 'Null'
+  OpalRuntimeRuntime: 'Null'
 };
modifiedtests/src/interfaces/types-lookup.tsdiffbeforeafterboth
--- a/tests/src/interfaces/types-lookup.ts
+++ b/tests/src/interfaces/types-lookup.ts
@@ -1364,12 +1364,12 @@
     readonly isAddToAllowList: boolean;
     readonly asAddToAllowList: {
       readonly collectionId: u32;
-      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isRemoveFromAllowList: boolean;
     readonly asRemoveFromAllowList: {
       readonly collectionId: u32;
-      readonly address: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly address: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isSetPublicAccessMode: boolean;
     readonly asSetPublicAccessMode: {
@@ -1389,12 +1389,12 @@
     readonly isAddCollectionAdmin: boolean;
     readonly asAddCollectionAdmin: {
       readonly collectionId: u32;
-      readonly newAdminId: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isRemoveCollectionAdmin: boolean;
     readonly asRemoveCollectionAdmin: {
       readonly collectionId: u32;
-      readonly accountId: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;
     } & Struct;
     readonly isSetCollectionSponsor: boolean;
     readonly asSetCollectionSponsor: {
@@ -1412,13 +1412,13 @@
     readonly isCreateItem: boolean;
     readonly asCreateItem: {
       readonly collectionId: u32;
-      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly data: UpDataStructsCreateItemData;
     } & Struct;
     readonly isCreateMultipleItems: boolean;
     readonly asCreateMultipleItems: {
       readonly collectionId: u32;
-      readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly itemsData: Vec<UpDataStructsCreateItemData>;
     } & Struct;
     readonly isCreateMultipleItemsEx: boolean;
@@ -1440,28 +1440,28 @@
     readonly isBurnFrom: boolean;
     readonly asBurnFrom: {
       readonly collectionId: u32;
-      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly itemId: u32;
       readonly value: u128;
     } & Struct;
     readonly isTransfer: boolean;
     readonly asTransfer: {
-      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly value: u128;
     } & Struct;
     readonly isApprove: boolean;
     readonly asApprove: {
-      readonly spender: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly amount: u128;
     } & Struct;
     readonly isTransferFrom: boolean;
     readonly asTransferFrom: {
-      readonly from: PalletCommonAccountBasicCrossAccountIdRepr;
-      readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;
+      readonly from: PalletEvmAccountBasicCrossAccountIdRepr;
+      readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;
       readonly collectionId: u32;
       readonly itemId: u32;
       readonly value: u128;
@@ -1573,8 +1573,8 @@
     readonly type: 'ItemOwner' | 'Admin' | 'None';
   }
 
-  /** @name PalletCommonAccountBasicCrossAccountIdRepr (172) */
-  export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {
+  /** @name PalletEvmAccountBasicCrossAccountIdRepr (172) */
+  export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {
     readonly isSubstrate: boolean;
     readonly asSubstrate: AccountId32;
     readonly isEthereum: boolean;
@@ -1616,7 +1616,7 @@
     readonly isNft: boolean;
     readonly asNft: Vec<UpDataStructsCreateNftExData>;
     readonly isFungible: boolean;
-    readonly asFungible: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;
+    readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
     readonly isRefungibleMultipleItems: boolean;
     readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;
     readonly isRefungibleMultipleOwners: boolean;
@@ -1628,14 +1628,14 @@
   export interface UpDataStructsCreateNftExData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
   /** @name UpDataStructsCreateRefungibleExData (189) */
   export interface UpDataStructsCreateRefungibleExData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;
+    readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;
   }
 
   /** @name PalletTemplateTransactionPaymentCall (192) */
@@ -2068,7 +2068,7 @@
     readonly isCollectionSponsorRemoved: boolean;
     readonly asCollectionSponsorRemoved: u32;
     readonly isCollectionAdminAdded: boolean;
-    readonly asCollectionAdminAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isCollectionOwnedChanged: boolean;
     readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;
     readonly isCollectionSponsorSet: boolean;
@@ -2078,11 +2078,11 @@
     readonly isSponsorshipConfirmed: boolean;
     readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;
     readonly isCollectionAdminRemoved: boolean;
-    readonly asCollectionAdminRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isAllowListAddressRemoved: boolean;
-    readonly asAllowListAddressRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isAllowListAddressAdded: boolean;
-    readonly asAllowListAddressAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;
+    readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;
     readonly isCollectionLimitSet: boolean;
     readonly asCollectionLimitSet: u32;
     readonly isMintPermissionSet: boolean;
@@ -2105,13 +2105,13 @@
     readonly isCollectionDestroyed: boolean;
     readonly asCollectionDestroyed: u32;
     readonly isItemCreated: boolean;
-    readonly asItemCreated: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isItemDestroyed: boolean;
-    readonly asItemDestroyed: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isTransfer: boolean;
-    readonly asTransfer: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly isApproved: boolean;
-    readonly asApproved: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;
+    readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;
     readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';
   }
 
@@ -2462,7 +2462,8 @@
     readonly isCantApproveMoreThanOwned: boolean;
     readonly isAddressIsZero: boolean;
     readonly isUnsupportedOperation: boolean;
-    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation';
+    readonly isNotSufficientFounds: boolean;
+    readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds';
   }
 
   /** @name PalletFungibleError (299) */
@@ -2490,7 +2491,7 @@
   export interface PalletNonfungibleItemData extends Struct {
     readonly constData: Bytes;
     readonly variableData: Bytes;
-    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;
+    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;
   }
 
   /** @name PalletNonfungibleError (306) */
@@ -2643,7 +2644,7 @@
   /** @name PalletTemplateTransactionPaymentChargeTransactionPayment (345) */
   export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}
 
-  /** @name UniqueRuntimeRuntime (346) */
-  export type UniqueRuntimeRuntime = Null;
+  /** @name OpalRuntimeRuntime (346) */
+  export type OpalRuntimeRuntime = Null;
 
 } // declare module
modifiedtests/src/interfaces/unique/definitions.tsdiffbeforeafterboth
--- a/tests/src/interfaces/unique/definitions.ts
+++ b/tests/src/interfaces/unique/definitions.ts
@@ -22,7 +22,7 @@
   isOptional?: true;
 };
 
-const CROSS_ACCOUNT_ID_TYPE = 'PalletCommonAccountBasicCrossAccountIdRepr';
+const CROSS_ACCOUNT_ID_TYPE = 'PalletEvmAccountBasicCrossAccountIdRepr';
 
 const collectionParam = {name: 'collection', type: 'u32'};
 const tokenParam = {name: 'tokenId', type: 'u32'};
@@ -38,8 +38,8 @@
 export default {
   types,
   rpc: {
-    adminlist: fun('Get admin list', [collectionParam], 'Vec<PalletCommonAccountBasicCrossAccountIdRepr>'),
-    allowlist: fun('Get allowlist', [collectionParam], 'Vec<PalletCommonAccountBasicCrossAccountIdRepr>'),
+    adminlist: fun('Get admin list', [collectionParam], 'Vec<PalletEvmAccountBasicCrossAccountIdRepr>'),
+    allowlist: fun('Get allowlist', [collectionParam], 'Vec<PalletEvmAccountBasicCrossAccountIdRepr>'),
 
     accountTokens: fun('Get tokens owned by account', [collectionParam, crossAccountParam()], 'Vec<u32>'),
     collectionTokens: fun('Get tokens contained in collection', [collectionParam], 'Vec<u32>'),
@@ -56,5 +56,6 @@
     collectionStats: fun('Get collection stats', [], 'UpDataStructsCollectionStats'),
     allowed: fun('Check if user is allowed to use collection', [collectionParam, crossAccountParam()], 'bool'),
     nextSponsored: fun('Check if user is allowed to use collection', [collectionParam, crossAccountParam(), tokenParam], 'Option<u64>'),
+    effectiveCollectionLimits: fun('Get effective collection limits', [collectionParam], 'Option<UpDataStructsCollectionLimits>'),
   },
 };
modifiedtests/src/interfaces/unique/types.tsdiffbeforeafterboth
before · tests/src/interfaces/unique/types.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';5import type { ITuple } from '@polkadot/types-codec/types';6import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';7import type { Event } from '@polkadot/types/interfaces/system';89/** @name CumulusPalletDmpQueueCall */10export interface CumulusPalletDmpQueueCall extends Enum {11  readonly isServiceOverweight: boolean;12  readonly asServiceOverweight: {13    readonly index: u64;14    readonly weightLimit: u64;15  } & Struct;16  readonly type: 'ServiceOverweight';17}1819/** @name CumulusPalletDmpQueueConfigData */20export interface CumulusPalletDmpQueueConfigData extends Struct {21  readonly maxIndividual: u64;22}2324/** @name CumulusPalletDmpQueueError */25export interface CumulusPalletDmpQueueError extends Enum {26  readonly isUnknown: boolean;27  readonly isOverLimit: boolean;28  readonly type: 'Unknown' | 'OverLimit';29}3031/** @name CumulusPalletDmpQueueEvent */32export interface CumulusPalletDmpQueueEvent extends Enum {33  readonly isInvalidFormat: boolean;34  readonly asInvalidFormat: U8aFixed;35  readonly isUnsupportedVersion: boolean;36  readonly asUnsupportedVersion: U8aFixed;37  readonly isExecutedDownward: boolean;38  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;39  readonly isWeightExhausted: boolean;40  readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;41  readonly isOverweightEnqueued: boolean;42  readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;43  readonly isOverweightServiced: boolean;44  readonly asOverweightServiced: ITuple<[u64, u64]>;45  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';46}4748/** @name CumulusPalletDmpQueuePageIndexData */49export interface CumulusPalletDmpQueuePageIndexData extends Struct {50  readonly beginUsed: u32;51  readonly endUsed: u32;52  readonly overweightCount: u64;53}5455/** @name CumulusPalletParachainSystemCall */56export interface CumulusPalletParachainSystemCall extends Enum {57  readonly isSetValidationData: boolean;58  readonly asSetValidationData: {59    readonly data: CumulusPrimitivesParachainInherentParachainInherentData;60  } & Struct;61  readonly isSudoSendUpwardMessage: boolean;62  readonly asSudoSendUpwardMessage: {63    readonly message: Bytes;64  } & Struct;65  readonly isAuthorizeUpgrade: boolean;66  readonly asAuthorizeUpgrade: {67    readonly codeHash: H256;68  } & Struct;69  readonly isEnactAuthorizedUpgrade: boolean;70  readonly asEnactAuthorizedUpgrade: {71    readonly code: Bytes;72  } & Struct;73  readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';74}7576/** @name CumulusPalletParachainSystemError */77export interface CumulusPalletParachainSystemError extends Enum {78  readonly isOverlappingUpgrades: boolean;79  readonly isProhibitedByPolkadot: boolean;80  readonly isTooBig: boolean;81  readonly isValidationDataNotAvailable: boolean;82  readonly isHostConfigurationNotAvailable: boolean;83  readonly isNotScheduled: boolean;84  readonly isNothingAuthorized: boolean;85  readonly isUnauthorized: boolean;86  readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';87}8889/** @name CumulusPalletParachainSystemEvent */90export interface CumulusPalletParachainSystemEvent extends Enum {91  readonly isValidationFunctionStored: boolean;92  readonly isValidationFunctionApplied: boolean;93  readonly asValidationFunctionApplied: u32;94  readonly isValidationFunctionDiscarded: boolean;95  readonly isUpgradeAuthorized: boolean;96  readonly asUpgradeAuthorized: H256;97  readonly isDownwardMessagesReceived: boolean;98  readonly asDownwardMessagesReceived: u32;99  readonly isDownwardMessagesProcessed: boolean;100  readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;101  readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';102}103104/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */105export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {106  readonly dmqMqcHead: H256;107  readonly relayDispatchQueueSize: ITuple<[u32, u32]>;108  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;109  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;110}111112/** @name CumulusPalletXcmCall */113export interface CumulusPalletXcmCall extends Null {}114115/** @name CumulusPalletXcmError */116export interface CumulusPalletXcmError extends Null {}117118/** @name CumulusPalletXcmEvent */119export interface CumulusPalletXcmEvent extends Enum {120  readonly isInvalidFormat: boolean;121  readonly asInvalidFormat: U8aFixed;122  readonly isUnsupportedVersion: boolean;123  readonly asUnsupportedVersion: U8aFixed;124  readonly isExecutedDownward: boolean;125  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;126  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';127}128129/** @name CumulusPalletXcmpQueueCall */130export interface CumulusPalletXcmpQueueCall extends Enum {131  readonly isServiceOverweight: boolean;132  readonly asServiceOverweight: {133    readonly index: u64;134    readonly weightLimit: u64;135  } & Struct;136  readonly isSuspendXcmExecution: boolean;137  readonly isResumeXcmExecution: boolean;138  readonly isUpdateSuspendThreshold: boolean;139  readonly asUpdateSuspendThreshold: {140    readonly new_: u32;141  } & Struct;142  readonly isUpdateDropThreshold: boolean;143  readonly asUpdateDropThreshold: {144    readonly new_: u32;145  } & Struct;146  readonly isUpdateResumeThreshold: boolean;147  readonly asUpdateResumeThreshold: {148    readonly new_: u32;149  } & Struct;150  readonly isUpdateThresholdWeight: boolean;151  readonly asUpdateThresholdWeight: {152    readonly new_: u64;153  } & Struct;154  readonly isUpdateWeightRestrictDecay: boolean;155  readonly asUpdateWeightRestrictDecay: {156    readonly new_: u64;157  } & Struct;158  readonly isUpdateXcmpMaxIndividualWeight: boolean;159  readonly asUpdateXcmpMaxIndividualWeight: {160    readonly new_: u64;161  } & Struct;162  readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';163}164165/** @name CumulusPalletXcmpQueueError */166export interface CumulusPalletXcmpQueueError extends Enum {167  readonly isFailedToSend: boolean;168  readonly isBadXcmOrigin: boolean;169  readonly isBadXcm: boolean;170  readonly isBadOverweightIndex: boolean;171  readonly isWeightOverLimit: boolean;172  readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';173}174175/** @name CumulusPalletXcmpQueueEvent */176export interface CumulusPalletXcmpQueueEvent extends Enum {177  readonly isSuccess: boolean;178  readonly asSuccess: Option<H256>;179  readonly isFail: boolean;180  readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;181  readonly isBadVersion: boolean;182  readonly asBadVersion: Option<H256>;183  readonly isBadFormat: boolean;184  readonly asBadFormat: Option<H256>;185  readonly isUpwardMessageSent: boolean;186  readonly asUpwardMessageSent: Option<H256>;187  readonly isXcmpMessageSent: boolean;188  readonly asXcmpMessageSent: Option<H256>;189  readonly isOverweightEnqueued: boolean;190  readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;191  readonly isOverweightServiced: boolean;192  readonly asOverweightServiced: ITuple<[u64, u64]>;193  readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';194}195196/** @name CumulusPalletXcmpQueueInboundChannelDetails */197export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {198  readonly sender: u32;199  readonly state: CumulusPalletXcmpQueueInboundState;200  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;201}202203/** @name CumulusPalletXcmpQueueInboundState */204export interface CumulusPalletXcmpQueueInboundState extends Enum {205  readonly isOk: boolean;206  readonly isSuspended: boolean;207  readonly type: 'Ok' | 'Suspended';208}209210/** @name CumulusPalletXcmpQueueOutboundChannelDetails */211export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {212  readonly recipient: u32;213  readonly state: CumulusPalletXcmpQueueOutboundState;214  readonly signalsExist: bool;215  readonly firstIndex: u16;216  readonly lastIndex: u16;217}218219/** @name CumulusPalletXcmpQueueOutboundState */220export interface CumulusPalletXcmpQueueOutboundState extends Enum {221  readonly isOk: boolean;222  readonly isSuspended: boolean;223  readonly type: 'Ok' | 'Suspended';224}225226/** @name CumulusPalletXcmpQueueQueueConfigData */227export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {228  readonly suspendThreshold: u32;229  readonly dropThreshold: u32;230  readonly resumeThreshold: u32;231  readonly thresholdWeight: u64;232  readonly weightRestrictDecay: u64;233  readonly xcmpMaxIndividualWeight: u64;234}235236/** @name CumulusPrimitivesParachainInherentParachainInherentData */237export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {238  readonly validationData: PolkadotPrimitivesV1PersistedValidationData;239  readonly relayChainState: SpTrieStorageProof;240  readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;241  readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;242}243244/** @name EthbloomBloom */245export interface EthbloomBloom extends U8aFixed {}246247/** @name EthereumBlock */248export interface EthereumBlock extends Struct {249  readonly header: EthereumHeader;250  readonly transactions: Vec<EthereumTransactionTransactionV2>;251  readonly ommers: Vec<EthereumHeader>;252}253254/** @name EthereumHeader */255export interface EthereumHeader extends Struct {256  readonly parentHash: H256;257  readonly ommersHash: H256;258  readonly beneficiary: H160;259  readonly stateRoot: H256;260  readonly transactionsRoot: H256;261  readonly receiptsRoot: H256;262  readonly logsBloom: EthbloomBloom;263  readonly difficulty: U256;264  readonly number: U256;265  readonly gasLimit: U256;266  readonly gasUsed: U256;267  readonly timestamp: u64;268  readonly extraData: Bytes;269  readonly mixHash: H256;270  readonly nonce: EthereumTypesHashH64;271}272273/** @name EthereumLog */274export interface EthereumLog extends Struct {275  readonly address: H160;276  readonly topics: Vec<H256>;277  readonly data: Bytes;278}279280/** @name EthereumReceiptEip658ReceiptData */281export interface EthereumReceiptEip658ReceiptData extends Struct {282  readonly statusCode: u8;283  readonly usedGas: U256;284  readonly logsBloom: EthbloomBloom;285  readonly logs: Vec<EthereumLog>;286}287288/** @name EthereumReceiptReceiptV3 */289export interface EthereumReceiptReceiptV3 extends Enum {290  readonly isLegacy: boolean;291  readonly asLegacy: EthereumReceiptEip658ReceiptData;292  readonly isEip2930: boolean;293  readonly asEip2930: EthereumReceiptEip658ReceiptData;294  readonly isEip1559: boolean;295  readonly asEip1559: EthereumReceiptEip658ReceiptData;296  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';297}298299/** @name EthereumTransactionAccessListItem */300export interface EthereumTransactionAccessListItem extends Struct {301  readonly address: H160;302  readonly slots: Vec<H256>;303}304305/** @name EthereumTransactionEip1559Transaction */306export interface EthereumTransactionEip1559Transaction extends Struct {307  readonly chainId: u64;308  readonly nonce: U256;309  readonly maxPriorityFeePerGas: U256;310  readonly maxFeePerGas: U256;311  readonly gasLimit: U256;312  readonly action: EthereumTransactionTransactionAction;313  readonly value: U256;314  readonly input: Bytes;315  readonly accessList: Vec<EthereumTransactionAccessListItem>;316  readonly oddYParity: bool;317  readonly r: H256;318  readonly s: H256;319}320321/** @name EthereumTransactionEip2930Transaction */322export interface EthereumTransactionEip2930Transaction extends Struct {323  readonly chainId: u64;324  readonly nonce: U256;325  readonly gasPrice: U256;326  readonly gasLimit: U256;327  readonly action: EthereumTransactionTransactionAction;328  readonly value: U256;329  readonly input: Bytes;330  readonly accessList: Vec<EthereumTransactionAccessListItem>;331  readonly oddYParity: bool;332  readonly r: H256;333  readonly s: H256;334}335336/** @name EthereumTransactionLegacyTransaction */337export interface EthereumTransactionLegacyTransaction extends Struct {338  readonly nonce: U256;339  readonly gasPrice: U256;340  readonly gasLimit: U256;341  readonly action: EthereumTransactionTransactionAction;342  readonly value: U256;343  readonly input: Bytes;344  readonly signature: EthereumTransactionTransactionSignature;345}346347/** @name EthereumTransactionTransactionAction */348export interface EthereumTransactionTransactionAction extends Enum {349  readonly isCall: boolean;350  readonly asCall: H160;351  readonly isCreate: boolean;352  readonly type: 'Call' | 'Create';353}354355/** @name EthereumTransactionTransactionSignature */356export interface EthereumTransactionTransactionSignature extends Struct {357  readonly v: u64;358  readonly r: H256;359  readonly s: H256;360}361362/** @name EthereumTransactionTransactionV2 */363export interface EthereumTransactionTransactionV2 extends Enum {364  readonly isLegacy: boolean;365  readonly asLegacy: EthereumTransactionLegacyTransaction;366  readonly isEip2930: boolean;367  readonly asEip2930: EthereumTransactionEip2930Transaction;368  readonly isEip1559: boolean;369  readonly asEip1559: EthereumTransactionEip1559Transaction;370  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';371}372373/** @name EthereumTypesHashH64 */374export interface EthereumTypesHashH64 extends U8aFixed {}375376/** @name EvmCoreErrorExitError */377export interface EvmCoreErrorExitError extends Enum {378  readonly isStackUnderflow: boolean;379  readonly isStackOverflow: boolean;380  readonly isInvalidJump: boolean;381  readonly isInvalidRange: boolean;382  readonly isDesignatedInvalid: boolean;383  readonly isCallTooDeep: boolean;384  readonly isCreateCollision: boolean;385  readonly isCreateContractLimit: boolean;386  readonly isInvalidCode: boolean;387  readonly isOutOfOffset: boolean;388  readonly isOutOfGas: boolean;389  readonly isOutOfFund: boolean;390  readonly isPcUnderflow: boolean;391  readonly isCreateEmpty: boolean;392  readonly isOther: boolean;393  readonly asOther: Text;394  readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';395}396397/** @name EvmCoreErrorExitFatal */398export interface EvmCoreErrorExitFatal extends Enum {399  readonly isNotSupported: boolean;400  readonly isUnhandledInterrupt: boolean;401  readonly isCallErrorAsFatal: boolean;402  readonly asCallErrorAsFatal: EvmCoreErrorExitError;403  readonly isOther: boolean;404  readonly asOther: Text;405  readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';406}407408/** @name EvmCoreErrorExitReason */409export interface EvmCoreErrorExitReason extends Enum {410  readonly isSucceed: boolean;411  readonly asSucceed: EvmCoreErrorExitSucceed;412  readonly isError: boolean;413  readonly asError: EvmCoreErrorExitError;414  readonly isRevert: boolean;415  readonly asRevert: EvmCoreErrorExitRevert;416  readonly isFatal: boolean;417  readonly asFatal: EvmCoreErrorExitFatal;418  readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';419}420421/** @name EvmCoreErrorExitRevert */422export interface EvmCoreErrorExitRevert extends Enum {423  readonly isReverted: boolean;424  readonly type: 'Reverted';425}426427/** @name EvmCoreErrorExitSucceed */428export interface EvmCoreErrorExitSucceed extends Enum {429  readonly isStopped: boolean;430  readonly isReturned: boolean;431  readonly isSuicided: boolean;432  readonly type: 'Stopped' | 'Returned' | 'Suicided';433}434435/** @name FpRpcTransactionStatus */436export interface FpRpcTransactionStatus extends Struct {437  readonly transactionHash: H256;438  readonly transactionIndex: u32;439  readonly from: H160;440  readonly to: Option<H160>;441  readonly contractAddress: Option<H160>;442  readonly logs: Vec<EthereumLog>;443  readonly logsBloom: EthbloomBloom;444}445446/** @name FrameSupportPalletId */447export interface FrameSupportPalletId extends U8aFixed {}448449/** @name FrameSupportTokensMiscBalanceStatus */450export interface FrameSupportTokensMiscBalanceStatus extends Enum {451  readonly isFree: boolean;452  readonly isReserved: boolean;453  readonly type: 'Free' | 'Reserved';454}455456/** @name FrameSupportWeightsDispatchClass */457export interface FrameSupportWeightsDispatchClass extends Enum {458  readonly isNormal: boolean;459  readonly isOperational: boolean;460  readonly isMandatory: boolean;461  readonly type: 'Normal' | 'Operational' | 'Mandatory';462}463464/** @name FrameSupportWeightsDispatchInfo */465export interface FrameSupportWeightsDispatchInfo extends Struct {466  readonly weight: u64;467  readonly class: FrameSupportWeightsDispatchClass;468  readonly paysFee: FrameSupportWeightsPays;469}470471/** @name FrameSupportWeightsPays */472export interface FrameSupportWeightsPays extends Enum {473  readonly isYes: boolean;474  readonly isNo: boolean;475  readonly type: 'Yes' | 'No';476}477478/** @name FrameSupportWeightsPerDispatchClassU32 */479export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {480  readonly normal: u32;481  readonly operational: u32;482  readonly mandatory: u32;483}484485/** @name FrameSupportWeightsPerDispatchClassU64 */486export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {487  readonly normal: u64;488  readonly operational: u64;489  readonly mandatory: u64;490}491492/** @name FrameSupportWeightsPerDispatchClassWeightsPerClass */493export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {494  readonly normal: FrameSystemLimitsWeightsPerClass;495  readonly operational: FrameSystemLimitsWeightsPerClass;496  readonly mandatory: FrameSystemLimitsWeightsPerClass;497}498499/** @name FrameSupportWeightsRuntimeDbWeight */500export interface FrameSupportWeightsRuntimeDbWeight extends Struct {501  readonly read: u64;502  readonly write: u64;503}504505/** @name FrameSupportWeightsWeightToFeeCoefficient */506export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {507  readonly coeffInteger: u128;508  readonly coeffFrac: Perbill;509  readonly negative: bool;510  readonly degree: u8;511}512513/** @name FrameSystemAccountInfo */514export interface FrameSystemAccountInfo extends Struct {515  readonly nonce: u32;516  readonly consumers: u32;517  readonly providers: u32;518  readonly sufficients: u32;519  readonly data: PalletBalancesAccountData;520}521522/** @name FrameSystemCall */523export interface FrameSystemCall extends Enum {524  readonly isFillBlock: boolean;525  readonly asFillBlock: {526    readonly ratio: Perbill;527  } & Struct;528  readonly isRemark: boolean;529  readonly asRemark: {530    readonly remark: Bytes;531  } & Struct;532  readonly isSetHeapPages: boolean;533  readonly asSetHeapPages: {534    readonly pages: u64;535  } & Struct;536  readonly isSetCode: boolean;537  readonly asSetCode: {538    readonly code: Bytes;539  } & Struct;540  readonly isSetCodeWithoutChecks: boolean;541  readonly asSetCodeWithoutChecks: {542    readonly code: Bytes;543  } & Struct;544  readonly isSetStorage: boolean;545  readonly asSetStorage: {546    readonly items: Vec<ITuple<[Bytes, Bytes]>>;547  } & Struct;548  readonly isKillStorage: boolean;549  readonly asKillStorage: {550    readonly keys_: Vec<Bytes>;551  } & Struct;552  readonly isKillPrefix: boolean;553  readonly asKillPrefix: {554    readonly prefix: Bytes;555    readonly subkeys: u32;556  } & Struct;557  readonly isRemarkWithEvent: boolean;558  readonly asRemarkWithEvent: {559    readonly remark: Bytes;560  } & Struct;561  readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';562}563564/** @name FrameSystemError */565export interface FrameSystemError extends Enum {566  readonly isInvalidSpecName: boolean;567  readonly isSpecVersionNeedsToIncrease: boolean;568  readonly isFailedToExtractRuntimeVersion: boolean;569  readonly isNonDefaultComposite: boolean;570  readonly isNonZeroRefCount: boolean;571  readonly isCallFiltered: boolean;572  readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';573}574575/** @name FrameSystemEvent */576export interface FrameSystemEvent extends Enum {577  readonly isExtrinsicSuccess: boolean;578  readonly asExtrinsicSuccess: {579    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;580  } & Struct;581  readonly isExtrinsicFailed: boolean;582  readonly asExtrinsicFailed: {583    readonly dispatchError: SpRuntimeDispatchError;584    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;585  } & Struct;586  readonly isCodeUpdated: boolean;587  readonly isNewAccount: boolean;588  readonly asNewAccount: {589    readonly account: AccountId32;590  } & Struct;591  readonly isKilledAccount: boolean;592  readonly asKilledAccount: {593    readonly account: AccountId32;594  } & Struct;595  readonly isRemarked: boolean;596  readonly asRemarked: {597    readonly sender: AccountId32;598    readonly hash_: H256;599  } & Struct;600  readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';601}602603/** @name FrameSystemEventRecord */604export interface FrameSystemEventRecord extends Struct {605  readonly phase: FrameSystemPhase;606  readonly event: Event;607  readonly topics: Vec<H256>;608}609610/** @name FrameSystemExtensionsCheckGenesis */611export interface FrameSystemExtensionsCheckGenesis extends Null {}612613/** @name FrameSystemExtensionsCheckNonce */614export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}615616/** @name FrameSystemExtensionsCheckSpecVersion */617export interface FrameSystemExtensionsCheckSpecVersion extends Null {}618619/** @name FrameSystemExtensionsCheckWeight */620export interface FrameSystemExtensionsCheckWeight extends Null {}621622/** @name FrameSystemLastRuntimeUpgradeInfo */623export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {624  readonly specVersion: Compact<u32>;625  readonly specName: Text;626}627628/** @name FrameSystemLimitsBlockLength */629export interface FrameSystemLimitsBlockLength extends Struct {630  readonly max: FrameSupportWeightsPerDispatchClassU32;631}632633/** @name FrameSystemLimitsBlockWeights */634export interface FrameSystemLimitsBlockWeights extends Struct {635  readonly baseBlock: u64;636  readonly maxBlock: u64;637  readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;638}639640/** @name FrameSystemLimitsWeightsPerClass */641export interface FrameSystemLimitsWeightsPerClass extends Struct {642  readonly baseExtrinsic: u64;643  readonly maxExtrinsic: Option<u64>;644  readonly maxTotal: Option<u64>;645  readonly reserved: Option<u64>;646}647648/** @name FrameSystemPhase */649export interface FrameSystemPhase extends Enum {650  readonly isApplyExtrinsic: boolean;651  readonly asApplyExtrinsic: u32;652  readonly isFinalization: boolean;653  readonly isInitialization: boolean;654  readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';655}656657/** @name OrmlVestingModuleCall */658export interface OrmlVestingModuleCall extends Enum {659  readonly isClaim: boolean;660  readonly isVestedTransfer: boolean;661  readonly asVestedTransfer: {662    readonly dest: MultiAddress;663    readonly schedule: OrmlVestingVestingSchedule;664  } & Struct;665  readonly isUpdateVestingSchedules: boolean;666  readonly asUpdateVestingSchedules: {667    readonly who: MultiAddress;668    readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;669  } & Struct;670  readonly isClaimFor: boolean;671  readonly asClaimFor: {672    readonly dest: MultiAddress;673  } & Struct;674  readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';675}676677/** @name OrmlVestingModuleError */678export interface OrmlVestingModuleError extends Enum {679  readonly isZeroVestingPeriod: boolean;680  readonly isZeroVestingPeriodCount: boolean;681  readonly isInsufficientBalanceToLock: boolean;682  readonly isTooManyVestingSchedules: boolean;683  readonly isAmountLow: boolean;684  readonly isMaxVestingSchedulesExceeded: boolean;685  readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';686}687688/** @name OrmlVestingModuleEvent */689export interface OrmlVestingModuleEvent extends Enum {690  readonly isVestingScheduleAdded: boolean;691  readonly asVestingScheduleAdded: {692    readonly from: AccountId32;693    readonly to: AccountId32;694    readonly vestingSchedule: OrmlVestingVestingSchedule;695  } & Struct;696  readonly isClaimed: boolean;697  readonly asClaimed: {698    readonly who: AccountId32;699    readonly amount: u128;700  } & Struct;701  readonly isVestingSchedulesUpdated: boolean;702  readonly asVestingSchedulesUpdated: {703    readonly who: AccountId32;704  } & Struct;705  readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';706}707708/** @name OrmlVestingVestingSchedule */709export interface OrmlVestingVestingSchedule extends Struct {710  readonly start: u32;711  readonly period: u32;712  readonly periodCount: u32;713  readonly perPeriod: Compact<u128>;714}715716/** @name PalletBalancesAccountData */717export interface PalletBalancesAccountData extends Struct {718  readonly free: u128;719  readonly reserved: u128;720  readonly miscFrozen: u128;721  readonly feeFrozen: u128;722}723724/** @name PalletBalancesBalanceLock */725export interface PalletBalancesBalanceLock extends Struct {726  readonly id: U8aFixed;727  readonly amount: u128;728  readonly reasons: PalletBalancesReasons;729}730731/** @name PalletBalancesCall */732export interface PalletBalancesCall extends Enum {733  readonly isTransfer: boolean;734  readonly asTransfer: {735    readonly dest: MultiAddress;736    readonly value: Compact<u128>;737  } & Struct;738  readonly isSetBalance: boolean;739  readonly asSetBalance: {740    readonly who: MultiAddress;741    readonly newFree: Compact<u128>;742    readonly newReserved: Compact<u128>;743  } & Struct;744  readonly isForceTransfer: boolean;745  readonly asForceTransfer: {746    readonly source: MultiAddress;747    readonly dest: MultiAddress;748    readonly value: Compact<u128>;749  } & Struct;750  readonly isTransferKeepAlive: boolean;751  readonly asTransferKeepAlive: {752    readonly dest: MultiAddress;753    readonly value: Compact<u128>;754  } & Struct;755  readonly isTransferAll: boolean;756  readonly asTransferAll: {757    readonly dest: MultiAddress;758    readonly keepAlive: bool;759  } & Struct;760  readonly isForceUnreserve: boolean;761  readonly asForceUnreserve: {762    readonly who: MultiAddress;763    readonly amount: u128;764  } & Struct;765  readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';766}767768/** @name PalletBalancesError */769export interface PalletBalancesError extends Enum {770  readonly isVestingBalance: boolean;771  readonly isLiquidityRestrictions: boolean;772  readonly isInsufficientBalance: boolean;773  readonly isExistentialDeposit: boolean;774  readonly isKeepAlive: boolean;775  readonly isExistingVestingSchedule: boolean;776  readonly isDeadAccount: boolean;777  readonly isTooManyReserves: boolean;778  readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';779}780781/** @name PalletBalancesEvent */782export interface PalletBalancesEvent extends Enum {783  readonly isEndowed: boolean;784  readonly asEndowed: {785    readonly account: AccountId32;786    readonly freeBalance: u128;787  } & Struct;788  readonly isDustLost: boolean;789  readonly asDustLost: {790    readonly account: AccountId32;791    readonly amount: u128;792  } & Struct;793  readonly isTransfer: boolean;794  readonly asTransfer: {795    readonly from: AccountId32;796    readonly to: AccountId32;797    readonly amount: u128;798  } & Struct;799  readonly isBalanceSet: boolean;800  readonly asBalanceSet: {801    readonly who: AccountId32;802    readonly free: u128;803    readonly reserved: u128;804  } & Struct;805  readonly isReserved: boolean;806  readonly asReserved: {807    readonly who: AccountId32;808    readonly amount: u128;809  } & Struct;810  readonly isUnreserved: boolean;811  readonly asUnreserved: {812    readonly who: AccountId32;813    readonly amount: u128;814  } & Struct;815  readonly isReserveRepatriated: boolean;816  readonly asReserveRepatriated: {817    readonly from: AccountId32;818    readonly to: AccountId32;819    readonly amount: u128;820    readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;821  } & Struct;822  readonly isDeposit: boolean;823  readonly asDeposit: {824    readonly who: AccountId32;825    readonly amount: u128;826  } & Struct;827  readonly isWithdraw: boolean;828  readonly asWithdraw: {829    readonly who: AccountId32;830    readonly amount: u128;831  } & Struct;832  readonly isSlashed: boolean;833  readonly asSlashed: {834    readonly who: AccountId32;835    readonly amount: u128;836  } & Struct;837  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';838}839840/** @name PalletBalancesReasons */841export interface PalletBalancesReasons extends Enum {842  readonly isFee: boolean;843  readonly isMisc: boolean;844  readonly isAll: boolean;845  readonly type: 'Fee' | 'Misc' | 'All';846}847848/** @name PalletBalancesReleases */849export interface PalletBalancesReleases extends Enum {850  readonly isV100: boolean;851  readonly isV200: boolean;852  readonly type: 'V100' | 'V200';853}854855/** @name PalletBalancesReserveData */856export interface PalletBalancesReserveData extends Struct {857  readonly id: U8aFixed;858  readonly amount: u128;859}860861/** @name PalletCommonAccountBasicCrossAccountIdRepr */862export interface PalletCommonAccountBasicCrossAccountIdRepr extends Enum {863  readonly isSubstrate: boolean;864  readonly asSubstrate: AccountId32;865  readonly isEthereum: boolean;866  readonly asEthereum: H160;867  readonly type: 'Substrate' | 'Ethereum';868}869870/** @name PalletCommonError */871export interface PalletCommonError extends Enum {872  readonly isCollectionNotFound: boolean;873  readonly isMustBeTokenOwner: boolean;874  readonly isNoPermission: boolean;875  readonly isPublicMintingNotAllowed: boolean;876  readonly isAddressNotInAllowlist: boolean;877  readonly isCollectionNameLimitExceeded: boolean;878  readonly isCollectionDescriptionLimitExceeded: boolean;879  readonly isCollectionTokenPrefixLimitExceeded: boolean;880  readonly isTotalCollectionsLimitExceeded: boolean;881  readonly isTokenVariableDataLimitExceeded: boolean;882  readonly isCollectionAdminCountExceeded: boolean;883  readonly isCollectionLimitBoundsExceeded: boolean;884  readonly isOwnerPermissionsCantBeReverted: boolean;885  readonly isTransferNotAllowed: boolean;886  readonly isAccountTokenLimitExceeded: boolean;887  readonly isCollectionTokenLimitExceeded: boolean;888  readonly isMetadataFlagFrozen: boolean;889  readonly isTokenNotFound: boolean;890  readonly isTokenValueTooLow: boolean;891  readonly isApprovedValueTooLow: boolean;892  readonly isCantApproveMoreThanOwned: boolean;893  readonly isAddressIsZero: boolean;894  readonly isUnsupportedOperation: boolean;895  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation';896}897898/** @name PalletCommonEvent */899export interface PalletCommonEvent extends Enum {900  readonly isCollectionCreated: boolean;901  readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;902  readonly isCollectionDestroyed: boolean;903  readonly asCollectionDestroyed: u32;904  readonly isItemCreated: boolean;905  readonly asItemCreated: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;906  readonly isItemDestroyed: boolean;907  readonly asItemDestroyed: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;908  readonly isTransfer: boolean;909  readonly asTransfer: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;910  readonly isApproved: boolean;911  readonly asApproved: ITuple<[u32, u32, PalletCommonAccountBasicCrossAccountIdRepr, PalletCommonAccountBasicCrossAccountIdRepr, u128]>;912  readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';913}914915/** @name PalletEthereumCall */916export interface PalletEthereumCall extends Enum {917  readonly isTransact: boolean;918  readonly asTransact: {919    readonly transaction: EthereumTransactionTransactionV2;920  } & Struct;921  readonly type: 'Transact';922}923924/** @name PalletEthereumError */925export interface PalletEthereumError extends Enum {926  readonly isInvalidSignature: boolean;927  readonly isPreLogExists: boolean;928  readonly type: 'InvalidSignature' | 'PreLogExists';929}930931/** @name PalletEthereumEvent */932export interface PalletEthereumEvent extends Enum {933  readonly isExecuted: boolean;934  readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;935  readonly type: 'Executed';936}937938/** @name PalletEvmCall */939export interface PalletEvmCall extends Enum {940  readonly isWithdraw: boolean;941  readonly asWithdraw: {942    readonly address: H160;943    readonly value: u128;944  } & Struct;945  readonly isCall: boolean;946  readonly asCall: {947    readonly source: H160;948    readonly target: H160;949    readonly input: Bytes;950    readonly value: U256;951    readonly gasLimit: u64;952    readonly maxFeePerGas: U256;953    readonly maxPriorityFeePerGas: Option<U256>;954    readonly nonce: Option<U256>;955    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;956  } & Struct;957  readonly isCreate: boolean;958  readonly asCreate: {959    readonly source: H160;960    readonly init: Bytes;961    readonly value: U256;962    readonly gasLimit: u64;963    readonly maxFeePerGas: U256;964    readonly maxPriorityFeePerGas: Option<U256>;965    readonly nonce: Option<U256>;966    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;967  } & Struct;968  readonly isCreate2: boolean;969  readonly asCreate2: {970    readonly source: H160;971    readonly init: Bytes;972    readonly salt: H256;973    readonly value: U256;974    readonly gasLimit: u64;975    readonly maxFeePerGas: U256;976    readonly maxPriorityFeePerGas: Option<U256>;977    readonly nonce: Option<U256>;978    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;979  } & Struct;980  readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';981}982983/** @name PalletEvmCoderSubstrateError */984export interface PalletEvmCoderSubstrateError extends Enum {985  readonly isOutOfGas: boolean;986  readonly isOutOfFund: boolean;987  readonly type: 'OutOfGas' | 'OutOfFund';988}989990/** @name PalletEvmContractHelpersError */991export interface PalletEvmContractHelpersError extends Enum {992  readonly isNoPermission: boolean;993  readonly type: 'NoPermission';994}995996/** @name PalletEvmContractHelpersSponsoringModeT */997export interface PalletEvmContractHelpersSponsoringModeT extends Enum {998  readonly isDisabled: boolean;999  readonly isAllowlisted: boolean;1000  readonly isGenerous: boolean;1001  readonly type: 'Disabled' | 'Allowlisted' | 'Generous';1002}10031004/** @name PalletEvmError */1005export interface PalletEvmError extends Enum {1006  readonly isBalanceLow: boolean;1007  readonly isFeeOverflow: boolean;1008  readonly isPaymentOverflow: boolean;1009  readonly isWithdrawFailed: boolean;1010  readonly isGasPriceTooLow: boolean;1011  readonly isInvalidNonce: boolean;1012  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';1013}10141015/** @name PalletEvmEvent */1016export interface PalletEvmEvent extends Enum {1017  readonly isLog: boolean;1018  readonly asLog: EthereumLog;1019  readonly isCreated: boolean;1020  readonly asCreated: H160;1021  readonly isCreatedFailed: boolean;1022  readonly asCreatedFailed: H160;1023  readonly isExecuted: boolean;1024  readonly asExecuted: H160;1025  readonly isExecutedFailed: boolean;1026  readonly asExecutedFailed: H160;1027  readonly isBalanceDeposit: boolean;1028  readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;1029  readonly isBalanceWithdraw: boolean;1030  readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;1031  readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';1032}10331034/** @name PalletEvmMigrationCall */1035export interface PalletEvmMigrationCall extends Enum {1036  readonly isBegin: boolean;1037  readonly asBegin: {1038    readonly address: H160;1039  } & Struct;1040  readonly isSetData: boolean;1041  readonly asSetData: {1042    readonly address: H160;1043    readonly data: Vec<ITuple<[H256, H256]>>;1044  } & Struct;1045  readonly isFinish: boolean;1046  readonly asFinish: {1047    readonly address: H160;1048    readonly code: Bytes;1049  } & Struct;1050  readonly type: 'Begin' | 'SetData' | 'Finish';1051}10521053/** @name PalletEvmMigrationError */1054export interface PalletEvmMigrationError extends Enum {1055  readonly isAccountNotEmpty: boolean;1056  readonly isAccountIsNotMigrating: boolean;1057  readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';1058}10591060/** @name PalletFungibleError */1061export interface PalletFungibleError extends Enum {1062  readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;1063  readonly isFungibleItemsHaveNoId: boolean;1064  readonly isFungibleItemsDontHaveData: boolean;1065  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';1066}10671068/** @name PalletInflationCall */1069export interface PalletInflationCall extends Enum {1070  readonly isStartInflation: boolean;1071  readonly asStartInflation: {1072    readonly inflationStartRelayBlock: u32;1073  } & Struct;1074  readonly type: 'StartInflation';1075}10761077/** @name PalletNonfungibleError */1078export interface PalletNonfungibleError extends Enum {1079  readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;1080  readonly isNonfungibleItemsHaveNoAmount: boolean;1081  readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';1082}10831084/** @name PalletNonfungibleItemData */1085export interface PalletNonfungibleItemData extends Struct {1086  readonly constData: Bytes;1087  readonly variableData: Bytes;1088  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1089}10901091/** @name PalletRefungibleError */1092export interface PalletRefungibleError extends Enum {1093  readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;1094  readonly isWrongRefungiblePieces: boolean;1095  readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';1096}10971098/** @name PalletRefungibleItemData */1099export interface PalletRefungibleItemData extends Struct {1100  readonly constData: Bytes;1101  readonly variableData: Bytes;1102}11031104/** @name PalletSudoCall */1105export interface PalletSudoCall extends Enum {1106  readonly isSudo: boolean;1107  readonly asSudo: {1108    readonly call: Call;1109  } & Struct;1110  readonly isSudoUncheckedWeight: boolean;1111  readonly asSudoUncheckedWeight: {1112    readonly call: Call;1113    readonly weight: u64;1114  } & Struct;1115  readonly isSetKey: boolean;1116  readonly asSetKey: {1117    readonly new_: MultiAddress;1118  } & Struct;1119  readonly isSudoAs: boolean;1120  readonly asSudoAs: {1121    readonly who: MultiAddress;1122    readonly call: Call;1123  } & Struct;1124  readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';1125}11261127/** @name PalletSudoError */1128export interface PalletSudoError extends Enum {1129  readonly isRequireSudo: boolean;1130  readonly type: 'RequireSudo';1131}11321133/** @name PalletSudoEvent */1134export interface PalletSudoEvent extends Enum {1135  readonly isSudid: boolean;1136  readonly asSudid: {1137    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1138  } & Struct;1139  readonly isKeyChanged: boolean;1140  readonly asKeyChanged: {1141    readonly oldSudoer: Option<AccountId32>;1142  } & Struct;1143  readonly isSudoAsDone: boolean;1144  readonly asSudoAsDone: {1145    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1146  } & Struct;1147  readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1148}11491150/** @name PalletTemplateTransactionPaymentCall */1151export interface PalletTemplateTransactionPaymentCall extends Null {}11521153/** @name PalletTemplateTransactionPaymentChargeTransactionPayment */1154export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}11551156/** @name PalletTimestampCall */1157export interface PalletTimestampCall extends Enum {1158  readonly isSet: boolean;1159  readonly asSet: {1160    readonly now: Compact<u64>;1161  } & Struct;1162  readonly type: 'Set';1163}11641165/** @name PalletTransactionPaymentReleases */1166export interface PalletTransactionPaymentReleases extends Enum {1167  readonly isV1Ancient: boolean;1168  readonly isV2: boolean;1169  readonly type: 'V1Ancient' | 'V2';1170}11711172/** @name PalletTreasuryCall */1173export interface PalletTreasuryCall extends Enum {1174  readonly isProposeSpend: boolean;1175  readonly asProposeSpend: {1176    readonly value: Compact<u128>;1177    readonly beneficiary: MultiAddress;1178  } & Struct;1179  readonly isRejectProposal: boolean;1180  readonly asRejectProposal: {1181    readonly proposalId: Compact<u32>;1182  } & Struct;1183  readonly isApproveProposal: boolean;1184  readonly asApproveProposal: {1185    readonly proposalId: Compact<u32>;1186  } & Struct;1187  readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';1188}11891190/** @name PalletTreasuryError */1191export interface PalletTreasuryError extends Enum {1192  readonly isInsufficientProposersBalance: boolean;1193  readonly isInvalidIndex: boolean;1194  readonly isTooManyApprovals: boolean;1195  readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';1196}11971198/** @name PalletTreasuryEvent */1199export interface PalletTreasuryEvent extends Enum {1200  readonly isProposed: boolean;1201  readonly asProposed: {1202    readonly proposalIndex: u32;1203  } & Struct;1204  readonly isSpending: boolean;1205  readonly asSpending: {1206    readonly budgetRemaining: u128;1207  } & Struct;1208  readonly isAwarded: boolean;1209  readonly asAwarded: {1210    readonly proposalIndex: u32;1211    readonly award: u128;1212    readonly account: AccountId32;1213  } & Struct;1214  readonly isRejected: boolean;1215  readonly asRejected: {1216    readonly proposalIndex: u32;1217    readonly slashed: u128;1218  } & Struct;1219  readonly isBurnt: boolean;1220  readonly asBurnt: {1221    readonly burntFunds: u128;1222  } & Struct;1223  readonly isRollover: boolean;1224  readonly asRollover: {1225    readonly rolloverBalance: u128;1226  } & Struct;1227  readonly isDeposit: boolean;1228  readonly asDeposit: {1229    readonly value: u128;1230  } & Struct;1231  readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';1232}12331234/** @name PalletTreasuryProposal */1235export interface PalletTreasuryProposal extends Struct {1236  readonly proposer: AccountId32;1237  readonly value: u128;1238  readonly beneficiary: AccountId32;1239  readonly bond: u128;1240}12411242/** @name PalletUniqueCall */1243export interface PalletUniqueCall extends Enum {1244  readonly isCreateCollection: boolean;1245  readonly asCreateCollection: {1246    readonly collectionName: Vec<u16>;1247    readonly collectionDescription: Vec<u16>;1248    readonly tokenPrefix: Bytes;1249    readonly mode: UpDataStructsCollectionMode;1250  } & Struct;1251  readonly isCreateCollectionEx: boolean;1252  readonly asCreateCollectionEx: {1253    readonly data: UpDataStructsCreateCollectionData;1254  } & Struct;1255  readonly isDestroyCollection: boolean;1256  readonly asDestroyCollection: {1257    readonly collectionId: u32;1258  } & Struct;1259  readonly isAddToAllowList: boolean;1260  readonly asAddToAllowList: {1261    readonly collectionId: u32;1262    readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1263  } & Struct;1264  readonly isRemoveFromAllowList: boolean;1265  readonly asRemoveFromAllowList: {1266    readonly collectionId: u32;1267    readonly address: PalletCommonAccountBasicCrossAccountIdRepr;1268  } & Struct;1269  readonly isSetPublicAccessMode: boolean;1270  readonly asSetPublicAccessMode: {1271    readonly collectionId: u32;1272    readonly mode: UpDataStructsAccessMode;1273  } & Struct;1274  readonly isSetMintPermission: boolean;1275  readonly asSetMintPermission: {1276    readonly collectionId: u32;1277    readonly mintPermission: bool;1278  } & Struct;1279  readonly isChangeCollectionOwner: boolean;1280  readonly asChangeCollectionOwner: {1281    readonly collectionId: u32;1282    readonly newOwner: AccountId32;1283  } & Struct;1284  readonly isAddCollectionAdmin: boolean;1285  readonly asAddCollectionAdmin: {1286    readonly collectionId: u32;1287    readonly newAdminId: PalletCommonAccountBasicCrossAccountIdRepr;1288  } & Struct;1289  readonly isRemoveCollectionAdmin: boolean;1290  readonly asRemoveCollectionAdmin: {1291    readonly collectionId: u32;1292    readonly accountId: PalletCommonAccountBasicCrossAccountIdRepr;1293  } & Struct;1294  readonly isSetCollectionSponsor: boolean;1295  readonly asSetCollectionSponsor: {1296    readonly collectionId: u32;1297    readonly newSponsor: AccountId32;1298  } & Struct;1299  readonly isConfirmSponsorship: boolean;1300  readonly asConfirmSponsorship: {1301    readonly collectionId: u32;1302  } & Struct;1303  readonly isRemoveCollectionSponsor: boolean;1304  readonly asRemoveCollectionSponsor: {1305    readonly collectionId: u32;1306  } & Struct;1307  readonly isCreateItem: boolean;1308  readonly asCreateItem: {1309    readonly collectionId: u32;1310    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1311    readonly data: UpDataStructsCreateItemData;1312  } & Struct;1313  readonly isCreateMultipleItems: boolean;1314  readonly asCreateMultipleItems: {1315    readonly collectionId: u32;1316    readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1317    readonly itemsData: Vec<UpDataStructsCreateItemData>;1318  } & Struct;1319  readonly isCreateMultipleItemsEx: boolean;1320  readonly asCreateMultipleItemsEx: {1321    readonly collectionId: u32;1322    readonly data: UpDataStructsCreateItemExData;1323  } & Struct;1324  readonly isSetTransfersEnabledFlag: boolean;1325  readonly asSetTransfersEnabledFlag: {1326    readonly collectionId: u32;1327    readonly value: bool;1328  } & Struct;1329  readonly isBurnItem: boolean;1330  readonly asBurnItem: {1331    readonly collectionId: u32;1332    readonly itemId: u32;1333    readonly value: u128;1334  } & Struct;1335  readonly isBurnFrom: boolean;1336  readonly asBurnFrom: {1337    readonly collectionId: u32;1338    readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1339    readonly itemId: u32;1340    readonly value: u128;1341  } & Struct;1342  readonly isTransfer: boolean;1343  readonly asTransfer: {1344    readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1345    readonly collectionId: u32;1346    readonly itemId: u32;1347    readonly value: u128;1348  } & Struct;1349  readonly isApprove: boolean;1350  readonly asApprove: {1351    readonly spender: PalletCommonAccountBasicCrossAccountIdRepr;1352    readonly collectionId: u32;1353    readonly itemId: u32;1354    readonly amount: u128;1355  } & Struct;1356  readonly isTransferFrom: boolean;1357  readonly asTransferFrom: {1358    readonly from: PalletCommonAccountBasicCrossAccountIdRepr;1359    readonly recipient: PalletCommonAccountBasicCrossAccountIdRepr;1360    readonly collectionId: u32;1361    readonly itemId: u32;1362    readonly value: u128;1363  } & Struct;1364  readonly isSetVariableMetaData: boolean;1365  readonly asSetVariableMetaData: {1366    readonly collectionId: u32;1367    readonly itemId: u32;1368    readonly data: Bytes;1369  } & Struct;1370  readonly isSetMetaUpdatePermissionFlag: boolean;1371  readonly asSetMetaUpdatePermissionFlag: {1372    readonly collectionId: u32;1373    readonly value: UpDataStructsMetaUpdatePermission;1374  } & Struct;1375  readonly isSetSchemaVersion: boolean;1376  readonly asSetSchemaVersion: {1377    readonly collectionId: u32;1378    readonly version: UpDataStructsSchemaVersion;1379  } & Struct;1380  readonly isSetOffchainSchema: boolean;1381  readonly asSetOffchainSchema: {1382    readonly collectionId: u32;1383    readonly schema: Bytes;1384  } & Struct;1385  readonly isSetConstOnChainSchema: boolean;1386  readonly asSetConstOnChainSchema: {1387    readonly collectionId: u32;1388    readonly schema: Bytes;1389  } & Struct;1390  readonly isSetVariableOnChainSchema: boolean;1391  readonly asSetVariableOnChainSchema: {1392    readonly collectionId: u32;1393    readonly schema: Bytes;1394  } & Struct;1395  readonly isSetCollectionLimits: boolean;1396  readonly asSetCollectionLimits: {1397    readonly collectionId: u32;1398    readonly newLimit: UpDataStructsCollectionLimits;1399  } & Struct;1400  readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';1401}14021403/** @name PalletUniqueError */1404export interface PalletUniqueError extends Enum {1405  readonly isCollectionDecimalPointLimitExceeded: boolean;1406  readonly isConfirmUnsetSponsorFail: boolean;1407  readonly isEmptyArgument: boolean;1408  readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';1409}14101411/** @name PalletUniqueRawEvent */1412export interface PalletUniqueRawEvent extends Enum {1413  readonly isCollectionSponsorRemoved: boolean;1414  readonly asCollectionSponsorRemoved: u32;1415  readonly isCollectionAdminAdded: boolean;1416  readonly asCollectionAdminAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1417  readonly isCollectionOwnedChanged: boolean;1418  readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;1419  readonly isCollectionSponsorSet: boolean;1420  readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;1421  readonly isConstOnChainSchemaSet: boolean;1422  readonly asConstOnChainSchemaSet: u32;1423  readonly isSponsorshipConfirmed: boolean;1424  readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;1425  readonly isCollectionAdminRemoved: boolean;1426  readonly asCollectionAdminRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1427  readonly isAllowListAddressRemoved: boolean;1428  readonly asAllowListAddressRemoved: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1429  readonly isAllowListAddressAdded: boolean;1430  readonly asAllowListAddressAdded: ITuple<[u32, PalletCommonAccountBasicCrossAccountIdRepr]>;1431  readonly isCollectionLimitSet: boolean;1432  readonly asCollectionLimitSet: u32;1433  readonly isMintPermissionSet: boolean;1434  readonly asMintPermissionSet: u32;1435  readonly isOffchainSchemaSet: boolean;1436  readonly asOffchainSchemaSet: u32;1437  readonly isPublicAccessModeSet: boolean;1438  readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;1439  readonly isSchemaVersionSet: boolean;1440  readonly asSchemaVersionSet: u32;1441  readonly isVariableOnChainSchemaSet: boolean;1442  readonly asVariableOnChainSchemaSet: u32;1443  readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';1444}14451446/** @name PalletXcmCall */1447export interface PalletXcmCall extends Enum {1448  readonly isSend: boolean;1449  readonly asSend: {1450    readonly dest: XcmVersionedMultiLocation;1451    readonly message: XcmVersionedXcm;1452  } & Struct;1453  readonly isTeleportAssets: boolean;1454  readonly asTeleportAssets: {1455    readonly dest: XcmVersionedMultiLocation;1456    readonly beneficiary: XcmVersionedMultiLocation;1457    readonly assets: XcmVersionedMultiAssets;1458    readonly feeAssetItem: u32;1459  } & Struct;1460  readonly isReserveTransferAssets: boolean;1461  readonly asReserveTransferAssets: {1462    readonly dest: XcmVersionedMultiLocation;1463    readonly beneficiary: XcmVersionedMultiLocation;1464    readonly assets: XcmVersionedMultiAssets;1465    readonly feeAssetItem: u32;1466  } & Struct;1467  readonly isExecute: boolean;1468  readonly asExecute: {1469    readonly message: XcmVersionedXcm;1470    readonly maxWeight: u64;1471  } & Struct;1472  readonly isForceXcmVersion: boolean;1473  readonly asForceXcmVersion: {1474    readonly location: XcmV1MultiLocation;1475    readonly xcmVersion: u32;1476  } & Struct;1477  readonly isForceDefaultXcmVersion: boolean;1478  readonly asForceDefaultXcmVersion: {1479    readonly maybeXcmVersion: Option<u32>;1480  } & Struct;1481  readonly isForceSubscribeVersionNotify: boolean;1482  readonly asForceSubscribeVersionNotify: {1483    readonly location: XcmVersionedMultiLocation;1484  } & Struct;1485  readonly isForceUnsubscribeVersionNotify: boolean;1486  readonly asForceUnsubscribeVersionNotify: {1487    readonly location: XcmVersionedMultiLocation;1488  } & Struct;1489  readonly isLimitedReserveTransferAssets: boolean;1490  readonly asLimitedReserveTransferAssets: {1491    readonly dest: XcmVersionedMultiLocation;1492    readonly beneficiary: XcmVersionedMultiLocation;1493    readonly assets: XcmVersionedMultiAssets;1494    readonly feeAssetItem: u32;1495    readonly weightLimit: XcmV2WeightLimit;1496  } & Struct;1497  readonly isLimitedTeleportAssets: boolean;1498  readonly asLimitedTeleportAssets: {1499    readonly dest: XcmVersionedMultiLocation;1500    readonly beneficiary: XcmVersionedMultiLocation;1501    readonly assets: XcmVersionedMultiAssets;1502    readonly feeAssetItem: u32;1503    readonly weightLimit: XcmV2WeightLimit;1504  } & Struct;1505  readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';1506}15071508/** @name PalletXcmError */1509export interface PalletXcmError extends Enum {1510  readonly isUnreachable: boolean;1511  readonly isSendFailure: boolean;1512  readonly isFiltered: boolean;1513  readonly isUnweighableMessage: boolean;1514  readonly isDestinationNotInvertible: boolean;1515  readonly isEmpty: boolean;1516  readonly isCannotReanchor: boolean;1517  readonly isTooManyAssets: boolean;1518  readonly isInvalidOrigin: boolean;1519  readonly isBadVersion: boolean;1520  readonly isBadLocation: boolean;1521  readonly isNoSubscription: boolean;1522  readonly isAlreadySubscribed: boolean;1523  readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';1524}15251526/** @name PalletXcmEvent */1527export interface PalletXcmEvent extends Enum {1528  readonly isAttempted: boolean;1529  readonly asAttempted: XcmV2TraitsOutcome;1530  readonly isSent: boolean;1531  readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1532  readonly isUnexpectedResponse: boolean;1533  readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1534  readonly isResponseReady: boolean;1535  readonly asResponseReady: ITuple<[u64, XcmV2Response]>;1536  readonly isNotified: boolean;1537  readonly asNotified: ITuple<[u64, u8, u8]>;1538  readonly isNotifyOverweight: boolean;1539  readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;1540  readonly isNotifyDispatchError: boolean;1541  readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;1542  readonly isNotifyDecodeFailed: boolean;1543  readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;1544  readonly isInvalidResponder: boolean;1545  readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;1546  readonly isInvalidResponderVersion: boolean;1547  readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;1548  readonly isResponseTaken: boolean;1549  readonly asResponseTaken: u64;1550  readonly isAssetsTrapped: boolean;1551  readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;1552  readonly isVersionChangeNotified: boolean;1553  readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;1554  readonly isSupportedVersionChanged: boolean;1555  readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;1556  readonly isNotifyTargetSendFail: boolean;1557  readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;1558  readonly isNotifyTargetMigrationFail: boolean;1559  readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;1560  readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';1561}15621563/** @name PolkadotCorePrimitivesInboundDownwardMessage */1564export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {1565  readonly sentAt: u32;1566  readonly msg: Bytes;1567}15681569/** @name PolkadotCorePrimitivesInboundHrmpMessage */1570export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {1571  readonly sentAt: u32;1572  readonly data: Bytes;1573}15741575/** @name PolkadotCorePrimitivesOutboundHrmpMessage */1576export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {1577  readonly recipient: u32;1578  readonly data: Bytes;1579}15801581/** @name PolkadotParachainPrimitivesXcmpMessageFormat */1582export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {1583  readonly isConcatenatedVersionedXcm: boolean;1584  readonly isConcatenatedEncodedBlob: boolean;1585  readonly isSignals: boolean;1586  readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';1587}15881589/** @name PolkadotPrimitivesV1AbridgedHostConfiguration */1590export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {1591  readonly maxCodeSize: u32;1592  readonly maxHeadDataSize: u32;1593  readonly maxUpwardQueueCount: u32;1594  readonly maxUpwardQueueSize: u32;1595  readonly maxUpwardMessageSize: u32;1596  readonly maxUpwardMessageNumPerCandidate: u32;1597  readonly hrmpMaxMessageNumPerCandidate: u32;1598  readonly validationUpgradeCooldown: u32;1599  readonly validationUpgradeDelay: u32;1600}16011602/** @name PolkadotPrimitivesV1AbridgedHrmpChannel */1603export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {1604  readonly maxCapacity: u32;1605  readonly maxTotalSize: u32;1606  readonly maxMessageSize: u32;1607  readonly msgCount: u32;1608  readonly totalSize: u32;1609  readonly mqcHead: Option<H256>;1610}16111612/** @name PolkadotPrimitivesV1PersistedValidationData */1613export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {1614  readonly parentHead: Bytes;1615  readonly relayParentNumber: u32;1616  readonly relayParentStorageRoot: H256;1617  readonly maxPovSize: u32;1618}16191620/** @name PolkadotPrimitivesV1UpgradeRestriction */1621export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {1622  readonly isPresent: boolean;1623  readonly type: 'Present';1624}16251626/** @name SpCoreEcdsaSignature */1627export interface SpCoreEcdsaSignature extends U8aFixed {}16281629/** @name SpCoreEd25519Signature */1630export interface SpCoreEd25519Signature extends U8aFixed {}16311632/** @name SpCoreSr25519Signature */1633export interface SpCoreSr25519Signature extends U8aFixed {}16341635/** @name SpRuntimeArithmeticError */1636export interface SpRuntimeArithmeticError extends Enum {1637  readonly isUnderflow: boolean;1638  readonly isOverflow: boolean;1639  readonly isDivisionByZero: boolean;1640  readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1641}16421643/** @name SpRuntimeDigest */1644export interface SpRuntimeDigest extends Struct {1645  readonly logs: Vec<SpRuntimeDigestDigestItem>;1646}16471648/** @name SpRuntimeDigestDigestItem */1649export interface SpRuntimeDigestDigestItem extends Enum {1650  readonly isOther: boolean;1651  readonly asOther: Bytes;1652  readonly isConsensus: boolean;1653  readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1654  readonly isSeal: boolean;1655  readonly asSeal: ITuple<[U8aFixed, Bytes]>;1656  readonly isPreRuntime: boolean;1657  readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1658  readonly isRuntimeEnvironmentUpdated: boolean;1659  readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1660}16611662/** @name SpRuntimeDispatchError */1663export interface SpRuntimeDispatchError extends Enum {1664  readonly isOther: boolean;1665  readonly isCannotLookup: boolean;1666  readonly isBadOrigin: boolean;1667  readonly isModule: boolean;1668  readonly asModule: SpRuntimeModuleError;1669  readonly isConsumerRemaining: boolean;1670  readonly isNoProviders: boolean;1671  readonly isTooManyConsumers: boolean;1672  readonly isToken: boolean;1673  readonly asToken: SpRuntimeTokenError;1674  readonly isArithmetic: boolean;1675  readonly asArithmetic: SpRuntimeArithmeticError;1676  readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1677}16781679/** @name SpRuntimeModuleError */1680export interface SpRuntimeModuleError extends Struct {1681  readonly index: u8;1682  readonly error: u8;1683}16841685/** @name SpRuntimeMultiSignature */1686export interface SpRuntimeMultiSignature extends Enum {1687  readonly isEd25519: boolean;1688  readonly asEd25519: SpCoreEd25519Signature;1689  readonly isSr25519: boolean;1690  readonly asSr25519: SpCoreSr25519Signature;1691  readonly isEcdsa: boolean;1692  readonly asEcdsa: SpCoreEcdsaSignature;1693  readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';1694}16951696/** @name SpRuntimeTokenError */1697export interface SpRuntimeTokenError extends Enum {1698  readonly isNoFunds: boolean;1699  readonly isWouldDie: boolean;1700  readonly isBelowMinimum: boolean;1701  readonly isCannotCreate: boolean;1702  readonly isUnknownAsset: boolean;1703  readonly isFrozen: boolean;1704  readonly isUnsupported: boolean;1705  readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1706}17071708/** @name SpTrieStorageProof */1709export interface SpTrieStorageProof extends Struct {1710  readonly trieNodes: Vec<Bytes>;1711}17121713/** @name SpVersionRuntimeVersion */1714export interface SpVersionRuntimeVersion extends Struct {1715  readonly specName: Text;1716  readonly implName: Text;1717  readonly authoringVersion: u32;1718  readonly specVersion: u32;1719  readonly implVersion: u32;1720  readonly apis: Vec<ITuple<[U8aFixed, u32]>>;1721  readonly transactionVersion: u32;1722  readonly stateVersion: u8;1723}17241725/** @name UniqueRuntimeRuntime */1726export interface UniqueRuntimeRuntime extends Null {}17271728/** @name UpDataStructsAccessMode */1729export interface UpDataStructsAccessMode extends Enum {1730  readonly isNormal: boolean;1731  readonly isAllowList: boolean;1732  readonly type: 'Normal' | 'AllowList';1733}17341735/** @name UpDataStructsCollection */1736export interface UpDataStructsCollection extends Struct {1737  readonly owner: AccountId32;1738  readonly mode: UpDataStructsCollectionMode;1739  readonly access: UpDataStructsAccessMode;1740  readonly name: Vec<u16>;1741  readonly description: Vec<u16>;1742  readonly tokenPrefix: Bytes;1743  readonly mintMode: bool;1744  readonly offchainSchema: Bytes;1745  readonly schemaVersion: UpDataStructsSchemaVersion;1746  readonly sponsorship: UpDataStructsSponsorshipState;1747  readonly limits: UpDataStructsCollectionLimits;1748  readonly variableOnChainSchema: Bytes;1749  readonly constOnChainSchema: Bytes;1750  readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1751}17521753/** @name UpDataStructsCollectionLimits */1754export interface UpDataStructsCollectionLimits extends Struct {1755  readonly accountTokenOwnershipLimit: Option<u32>;1756  readonly sponsoredDataSize: Option<u32>;1757  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1758  readonly tokenLimit: Option<u32>;1759  readonly sponsorTransferTimeout: Option<u32>;1760  readonly sponsorApproveTimeout: Option<u32>;1761  readonly ownerCanTransfer: Option<bool>;1762  readonly ownerCanDestroy: Option<bool>;1763  readonly transfersEnabled: Option<bool>;1764}17651766/** @name UpDataStructsCollectionMode */1767export interface UpDataStructsCollectionMode extends Enum {1768  readonly isNft: boolean;1769  readonly isFungible: boolean;1770  readonly asFungible: u8;1771  readonly isReFungible: boolean;1772  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1773}17741775/** @name UpDataStructsCollectionStats */1776export interface UpDataStructsCollectionStats extends Struct {1777  readonly created: u32;1778  readonly destroyed: u32;1779  readonly alive: u32;1780}17811782/** @name UpDataStructsCreateCollectionData */1783export interface UpDataStructsCreateCollectionData extends Struct {1784  readonly mode: UpDataStructsCollectionMode;1785  readonly access: Option<UpDataStructsAccessMode>;1786  readonly name: Vec<u16>;1787  readonly description: Vec<u16>;1788  readonly tokenPrefix: Bytes;1789  readonly offchainSchema: Bytes;1790  readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1791  readonly pendingSponsor: Option<AccountId32>;1792  readonly limits: Option<UpDataStructsCollectionLimits>;1793  readonly variableOnChainSchema: Bytes;1794  readonly constOnChainSchema: Bytes;1795  readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1796}17971798/** @name UpDataStructsCreateFungibleData */1799export interface UpDataStructsCreateFungibleData extends Struct {1800  readonly value: u128;1801}18021803/** @name UpDataStructsCreateItemData */1804export interface UpDataStructsCreateItemData extends Enum {1805  readonly isNft: boolean;1806  readonly asNft: UpDataStructsCreateNftData;1807  readonly isFungible: boolean;1808  readonly asFungible: UpDataStructsCreateFungibleData;1809  readonly isReFungible: boolean;1810  readonly asReFungible: UpDataStructsCreateReFungibleData;1811  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1812}18131814/** @name UpDataStructsCreateItemExData */1815export interface UpDataStructsCreateItemExData extends Enum {1816  readonly isNft: boolean;1817  readonly asNft: Vec<UpDataStructsCreateNftExData>;1818  readonly isFungible: boolean;1819  readonly asFungible: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr,u128>;1820  readonly isRefungibleMultipleItems: boolean;1821  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1822  readonly isRefungibleMultipleOwners: boolean;1823  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1824  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1825}18261827/** @name UpDataStructsCreateNftData */1828export interface UpDataStructsCreateNftData extends Struct {1829  readonly constData: Bytes;1830  readonly variableData: Bytes;1831}18321833/** @name UpDataStructsCreateNftExData */1834export interface UpDataStructsCreateNftExData extends Struct {1835  readonly constData: Bytes;1836  readonly variableData: Bytes;1837  readonly owner: PalletCommonAccountBasicCrossAccountIdRepr;1838}18391840/** @name UpDataStructsCreateReFungibleData */1841export interface UpDataStructsCreateReFungibleData extends Struct {1842  readonly constData: Bytes;1843  readonly variableData: Bytes;1844  readonly pieces: u128;1845}18461847/** @name UpDataStructsCreateRefungibleExData */1848export interface UpDataStructsCreateRefungibleExData extends Struct {1849  readonly constData: Bytes;1850  readonly variableData: Bytes;1851  readonly users: BTreeMap<PalletCommonAccountBasicCrossAccountIdRepr, u128>;1852}18531854/** @name UpDataStructsMetaUpdatePermission */1855export interface UpDataStructsMetaUpdatePermission extends Enum {1856  readonly isItemOwner: boolean;1857  readonly isAdmin: boolean;1858  readonly isNone: boolean;1859  readonly type: 'ItemOwner' | 'Admin' | 'None';1860}18611862/** @name UpDataStructsSchemaVersion */1863export interface UpDataStructsSchemaVersion extends Enum {1864  readonly isImageURL: boolean;1865  readonly isUnique: boolean;1866  readonly type: 'ImageURL' | 'Unique';1867}18681869/** @name UpDataStructsSponsoringRateLimit */1870export interface UpDataStructsSponsoringRateLimit extends Enum {1871  readonly isSponsoringDisabled: boolean;1872  readonly isBlocks: boolean;1873  readonly asBlocks: u32;1874  readonly type: 'SponsoringDisabled' | 'Blocks';1875}18761877/** @name UpDataStructsSponsorshipState */1878export interface UpDataStructsSponsorshipState extends Enum {1879  readonly isDisabled: boolean;1880  readonly isUnconfirmed: boolean;1881  readonly asUnconfirmed: AccountId32;1882  readonly isConfirmed: boolean;1883  readonly asConfirmed: AccountId32;1884  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';1885}18861887/** @name XcmDoubleEncoded */1888export interface XcmDoubleEncoded extends Struct {1889  readonly encoded: Bytes;1890}18911892/** @name XcmV0Junction */1893export interface XcmV0Junction extends Enum {1894  readonly isParent: boolean;1895  readonly isParachain: boolean;1896  readonly asParachain: Compact<u32>;1897  readonly isAccountId32: boolean;1898  readonly asAccountId32: {1899    readonly network: XcmV0JunctionNetworkId;1900    readonly id: U8aFixed;1901  } & Struct;1902  readonly isAccountIndex64: boolean;1903  readonly asAccountIndex64: {1904    readonly network: XcmV0JunctionNetworkId;1905    readonly index: Compact<u64>;1906  } & Struct;1907  readonly isAccountKey20: boolean;1908  readonly asAccountKey20: {1909    readonly network: XcmV0JunctionNetworkId;1910    readonly key: U8aFixed;1911  } & Struct;1912  readonly isPalletInstance: boolean;1913  readonly asPalletInstance: u8;1914  readonly isGeneralIndex: boolean;1915  readonly asGeneralIndex: Compact<u128>;1916  readonly isGeneralKey: boolean;1917  readonly asGeneralKey: Bytes;1918  readonly isOnlyChild: boolean;1919  readonly isPlurality: boolean;1920  readonly asPlurality: {1921    readonly id: XcmV0JunctionBodyId;1922    readonly part: XcmV0JunctionBodyPart;1923  } & Struct;1924  readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';1925}19261927/** @name XcmV0JunctionBodyId */1928export interface XcmV0JunctionBodyId extends Enum {1929  readonly isUnit: boolean;1930  readonly isNamed: boolean;1931  readonly asNamed: Bytes;1932  readonly isIndex: boolean;1933  readonly asIndex: Compact<u32>;1934  readonly isExecutive: boolean;1935  readonly isTechnical: boolean;1936  readonly isLegislative: boolean;1937  readonly isJudicial: boolean;1938  readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';1939}19401941/** @name XcmV0JunctionBodyPart */1942export interface XcmV0JunctionBodyPart extends Enum {1943  readonly isVoice: boolean;1944  readonly isMembers: boolean;1945  readonly asMembers: {1946    readonly count: Compact<u32>;1947  } & Struct;1948  readonly isFraction: boolean;1949  readonly asFraction: {1950    readonly nom: Compact<u32>;1951    readonly denom: Compact<u32>;1952  } & Struct;1953  readonly isAtLeastProportion: boolean;1954  readonly asAtLeastProportion: {1955    readonly nom: Compact<u32>;1956    readonly denom: Compact<u32>;1957  } & Struct;1958  readonly isMoreThanProportion: boolean;1959  readonly asMoreThanProportion: {1960    readonly nom: Compact<u32>;1961    readonly denom: Compact<u32>;1962  } & Struct;1963  readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';1964}19651966/** @name XcmV0JunctionNetworkId */1967export interface XcmV0JunctionNetworkId extends Enum {1968  readonly isAny: boolean;1969  readonly isNamed: boolean;1970  readonly asNamed: Bytes;1971  readonly isPolkadot: boolean;1972  readonly isKusama: boolean;1973  readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';1974}19751976/** @name XcmV0MultiAsset */1977export interface XcmV0MultiAsset extends Enum {1978  readonly isNone: boolean;1979  readonly isAll: boolean;1980  readonly isAllFungible: boolean;1981  readonly isAllNonFungible: boolean;1982  readonly isAllAbstractFungible: boolean;1983  readonly asAllAbstractFungible: {1984    readonly id: Bytes;1985  } & Struct;1986  readonly isAllAbstractNonFungible: boolean;1987  readonly asAllAbstractNonFungible: {1988    readonly class: Bytes;1989  } & Struct;1990  readonly isAllConcreteFungible: boolean;1991  readonly asAllConcreteFungible: {1992    readonly id: XcmV0MultiLocation;1993  } & Struct;1994  readonly isAllConcreteNonFungible: boolean;1995  readonly asAllConcreteNonFungible: {1996    readonly class: XcmV0MultiLocation;1997  } & Struct;1998  readonly isAbstractFungible: boolean;1999  readonly asAbstractFungible: {2000    readonly id: Bytes;2001    readonly amount: Compact<u128>;2002  } & Struct;2003  readonly isAbstractNonFungible: boolean;2004  readonly asAbstractNonFungible: {2005    readonly class: Bytes;2006    readonly instance: XcmV1MultiassetAssetInstance;2007  } & Struct;2008  readonly isConcreteFungible: boolean;2009  readonly asConcreteFungible: {2010    readonly id: XcmV0MultiLocation;2011    readonly amount: Compact<u128>;2012  } & Struct;2013  readonly isConcreteNonFungible: boolean;2014  readonly asConcreteNonFungible: {2015    readonly class: XcmV0MultiLocation;2016    readonly instance: XcmV1MultiassetAssetInstance;2017  } & Struct;2018  readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';2019}20202021/** @name XcmV0MultiLocation */2022export interface XcmV0MultiLocation extends Enum {2023  readonly isNull: boolean;2024  readonly isX1: boolean;2025  readonly asX1: XcmV0Junction;2026  readonly isX2: boolean;2027  readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;2028  readonly isX3: boolean;2029  readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2030  readonly isX4: boolean;2031  readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2032  readonly isX5: boolean;2033  readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2034  readonly isX6: boolean;2035  readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2036  readonly isX7: boolean;2037  readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2038  readonly isX8: boolean;2039  readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2040  readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2041}20422043/** @name XcmV0Order */2044export interface XcmV0Order extends Enum {2045  readonly isNull: boolean;2046  readonly isDepositAsset: boolean;2047  readonly asDepositAsset: {2048    readonly assets: Vec<XcmV0MultiAsset>;2049    readonly dest: XcmV0MultiLocation;2050  } & Struct;2051  readonly isDepositReserveAsset: boolean;2052  readonly asDepositReserveAsset: {2053    readonly assets: Vec<XcmV0MultiAsset>;2054    readonly dest: XcmV0MultiLocation;2055    readonly effects: Vec<XcmV0Order>;2056  } & Struct;2057  readonly isExchangeAsset: boolean;2058  readonly asExchangeAsset: {2059    readonly give: Vec<XcmV0MultiAsset>;2060    readonly receive: Vec<XcmV0MultiAsset>;2061  } & Struct;2062  readonly isInitiateReserveWithdraw: boolean;2063  readonly asInitiateReserveWithdraw: {2064    readonly assets: Vec<XcmV0MultiAsset>;2065    readonly reserve: XcmV0MultiLocation;2066    readonly effects: Vec<XcmV0Order>;2067  } & Struct;2068  readonly isInitiateTeleport: boolean;2069  readonly asInitiateTeleport: {2070    readonly assets: Vec<XcmV0MultiAsset>;2071    readonly dest: XcmV0MultiLocation;2072    readonly effects: Vec<XcmV0Order>;2073  } & Struct;2074  readonly isQueryHolding: boolean;2075  readonly asQueryHolding: {2076    readonly queryId: Compact<u64>;2077    readonly dest: XcmV0MultiLocation;2078    readonly assets: Vec<XcmV0MultiAsset>;2079  } & Struct;2080  readonly isBuyExecution: boolean;2081  readonly asBuyExecution: {2082    readonly fees: XcmV0MultiAsset;2083    readonly weight: u64;2084    readonly debt: u64;2085    readonly haltOnError: bool;2086    readonly xcm: Vec<XcmV0Xcm>;2087  } & Struct;2088  readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2089}20902091/** @name XcmV0OriginKind */2092export interface XcmV0OriginKind extends Enum {2093  readonly isNative: boolean;2094  readonly isSovereignAccount: boolean;2095  readonly isSuperuser: boolean;2096  readonly isXcm: boolean;2097  readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';2098}20992100/** @name XcmV0Response */2101export interface XcmV0Response extends Enum {2102  readonly isAssets: boolean;2103  readonly asAssets: Vec<XcmV0MultiAsset>;2104  readonly type: 'Assets';2105}21062107/** @name XcmV0Xcm */2108export interface XcmV0Xcm extends Enum {2109  readonly isWithdrawAsset: boolean;2110  readonly asWithdrawAsset: {2111    readonly assets: Vec<XcmV0MultiAsset>;2112    readonly effects: Vec<XcmV0Order>;2113  } & Struct;2114  readonly isReserveAssetDeposit: boolean;2115  readonly asReserveAssetDeposit: {2116    readonly assets: Vec<XcmV0MultiAsset>;2117    readonly effects: Vec<XcmV0Order>;2118  } & Struct;2119  readonly isTeleportAsset: boolean;2120  readonly asTeleportAsset: {2121    readonly assets: Vec<XcmV0MultiAsset>;2122    readonly effects: Vec<XcmV0Order>;2123  } & Struct;2124  readonly isQueryResponse: boolean;2125  readonly asQueryResponse: {2126    readonly queryId: Compact<u64>;2127    readonly response: XcmV0Response;2128  } & Struct;2129  readonly isTransferAsset: boolean;2130  readonly asTransferAsset: {2131    readonly assets: Vec<XcmV0MultiAsset>;2132    readonly dest: XcmV0MultiLocation;2133  } & Struct;2134  readonly isTransferReserveAsset: boolean;2135  readonly asTransferReserveAsset: {2136    readonly assets: Vec<XcmV0MultiAsset>;2137    readonly dest: XcmV0MultiLocation;2138    readonly effects: Vec<XcmV0Order>;2139  } & Struct;2140  readonly isTransact: boolean;2141  readonly asTransact: {2142    readonly originType: XcmV0OriginKind;2143    readonly requireWeightAtMost: u64;2144    readonly call: XcmDoubleEncoded;2145  } & Struct;2146  readonly isHrmpNewChannelOpenRequest: boolean;2147  readonly asHrmpNewChannelOpenRequest: {2148    readonly sender: Compact<u32>;2149    readonly maxMessageSize: Compact<u32>;2150    readonly maxCapacity: Compact<u32>;2151  } & Struct;2152  readonly isHrmpChannelAccepted: boolean;2153  readonly asHrmpChannelAccepted: {2154    readonly recipient: Compact<u32>;2155  } & Struct;2156  readonly isHrmpChannelClosing: boolean;2157  readonly asHrmpChannelClosing: {2158    readonly initiator: Compact<u32>;2159    readonly sender: Compact<u32>;2160    readonly recipient: Compact<u32>;2161  } & Struct;2162  readonly isRelayedFrom: boolean;2163  readonly asRelayedFrom: {2164    readonly who: XcmV0MultiLocation;2165    readonly message: XcmV0Xcm;2166  } & Struct;2167  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';2168}21692170/** @name XcmV1Junction */2171export interface XcmV1Junction extends Enum {2172  readonly isParachain: boolean;2173  readonly asParachain: Compact<u32>;2174  readonly isAccountId32: boolean;2175  readonly asAccountId32: {2176    readonly network: XcmV0JunctionNetworkId;2177    readonly id: U8aFixed;2178  } & Struct;2179  readonly isAccountIndex64: boolean;2180  readonly asAccountIndex64: {2181    readonly network: XcmV0JunctionNetworkId;2182    readonly index: Compact<u64>;2183  } & Struct;2184  readonly isAccountKey20: boolean;2185  readonly asAccountKey20: {2186    readonly network: XcmV0JunctionNetworkId;2187    readonly key: U8aFixed;2188  } & Struct;2189  readonly isPalletInstance: boolean;2190  readonly asPalletInstance: u8;2191  readonly isGeneralIndex: boolean;2192  readonly asGeneralIndex: Compact<u128>;2193  readonly isGeneralKey: boolean;2194  readonly asGeneralKey: Bytes;2195  readonly isOnlyChild: boolean;2196  readonly isPlurality: boolean;2197  readonly asPlurality: {2198    readonly id: XcmV0JunctionBodyId;2199    readonly part: XcmV0JunctionBodyPart;2200  } & Struct;2201  readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2202}22032204/** @name XcmV1MultiAsset */2205export interface XcmV1MultiAsset extends Struct {2206  readonly id: XcmV1MultiassetAssetId;2207  readonly fun: XcmV1MultiassetFungibility;2208}22092210/** @name XcmV1MultiassetAssetId */2211export interface XcmV1MultiassetAssetId extends Enum {2212  readonly isConcrete: boolean;2213  readonly asConcrete: XcmV1MultiLocation;2214  readonly isAbstract: boolean;2215  readonly asAbstract: Bytes;2216  readonly type: 'Concrete' | 'Abstract';2217}22182219/** @name XcmV1MultiassetAssetInstance */2220export interface XcmV1MultiassetAssetInstance extends Enum {2221  readonly isUndefined: boolean;2222  readonly isIndex: boolean;2223  readonly asIndex: Compact<u128>;2224  readonly isArray4: boolean;2225  readonly asArray4: U8aFixed;2226  readonly isArray8: boolean;2227  readonly asArray8: U8aFixed;2228  readonly isArray16: boolean;2229  readonly asArray16: U8aFixed;2230  readonly isArray32: boolean;2231  readonly asArray32: U8aFixed;2232  readonly isBlob: boolean;2233  readonly asBlob: Bytes;2234  readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';2235}22362237/** @name XcmV1MultiassetFungibility */2238export interface XcmV1MultiassetFungibility extends Enum {2239  readonly isFungible: boolean;2240  readonly asFungible: Compact<u128>;2241  readonly isNonFungible: boolean;2242  readonly asNonFungible: XcmV1MultiassetAssetInstance;2243  readonly type: 'Fungible' | 'NonFungible';2244}22452246/** @name XcmV1MultiassetMultiAssetFilter */2247export interface XcmV1MultiassetMultiAssetFilter extends Enum {2248  readonly isDefinite: boolean;2249  readonly asDefinite: XcmV1MultiassetMultiAssets;2250  readonly isWild: boolean;2251  readonly asWild: XcmV1MultiassetWildMultiAsset;2252  readonly type: 'Definite' | 'Wild';2253}22542255/** @name XcmV1MultiassetMultiAssets */2256export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}22572258/** @name XcmV1MultiassetWildFungibility */2259export interface XcmV1MultiassetWildFungibility extends Enum {2260  readonly isFungible: boolean;2261  readonly isNonFungible: boolean;2262  readonly type: 'Fungible' | 'NonFungible';2263}22642265/** @name XcmV1MultiassetWildMultiAsset */2266export interface XcmV1MultiassetWildMultiAsset extends Enum {2267  readonly isAll: boolean;2268  readonly isAllOf: boolean;2269  readonly asAllOf: {2270    readonly id: XcmV1MultiassetAssetId;2271    readonly fun: XcmV1MultiassetWildFungibility;2272  } & Struct;2273  readonly type: 'All' | 'AllOf';2274}22752276/** @name XcmV1MultiLocation */2277export interface XcmV1MultiLocation extends Struct {2278  readonly parents: u8;2279  readonly interior: XcmV1MultilocationJunctions;2280}22812282/** @name XcmV1MultilocationJunctions */2283export interface XcmV1MultilocationJunctions extends Enum {2284  readonly isHere: boolean;2285  readonly isX1: boolean;2286  readonly asX1: XcmV1Junction;2287  readonly isX2: boolean;2288  readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;2289  readonly isX3: boolean;2290  readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2291  readonly isX4: boolean;2292  readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2293  readonly isX5: boolean;2294  readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2295  readonly isX6: boolean;2296  readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2297  readonly isX7: boolean;2298  readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2299  readonly isX8: boolean;2300  readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2301  readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2302}23032304/** @name XcmV1Order */2305export interface XcmV1Order extends Enum {2306  readonly isNoop: boolean;2307  readonly isDepositAsset: boolean;2308  readonly asDepositAsset: {2309    readonly assets: XcmV1MultiassetMultiAssetFilter;2310    readonly maxAssets: u32;2311    readonly beneficiary: XcmV1MultiLocation;2312  } & Struct;2313  readonly isDepositReserveAsset: boolean;2314  readonly asDepositReserveAsset: {2315    readonly assets: XcmV1MultiassetMultiAssetFilter;2316    readonly maxAssets: u32;2317    readonly dest: XcmV1MultiLocation;2318    readonly effects: Vec<XcmV1Order>;2319  } & Struct;2320  readonly isExchangeAsset: boolean;2321  readonly asExchangeAsset: {2322    readonly give: XcmV1MultiassetMultiAssetFilter;2323    readonly receive: XcmV1MultiassetMultiAssets;2324  } & Struct;2325  readonly isInitiateReserveWithdraw: boolean;2326  readonly asInitiateReserveWithdraw: {2327    readonly assets: XcmV1MultiassetMultiAssetFilter;2328    readonly reserve: XcmV1MultiLocation;2329    readonly effects: Vec<XcmV1Order>;2330  } & Struct;2331  readonly isInitiateTeleport: boolean;2332  readonly asInitiateTeleport: {2333    readonly assets: XcmV1MultiassetMultiAssetFilter;2334    readonly dest: XcmV1MultiLocation;2335    readonly effects: Vec<XcmV1Order>;2336  } & Struct;2337  readonly isQueryHolding: boolean;2338  readonly asQueryHolding: {2339    readonly queryId: Compact<u64>;2340    readonly dest: XcmV1MultiLocation;2341    readonly assets: XcmV1MultiassetMultiAssetFilter;2342  } & Struct;2343  readonly isBuyExecution: boolean;2344  readonly asBuyExecution: {2345    readonly fees: XcmV1MultiAsset;2346    readonly weight: u64;2347    readonly debt: u64;2348    readonly haltOnError: bool;2349    readonly instructions: Vec<XcmV1Xcm>;2350  } & Struct;2351  readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2352}23532354/** @name XcmV1Response */2355export interface XcmV1Response extends Enum {2356  readonly isAssets: boolean;2357  readonly asAssets: XcmV1MultiassetMultiAssets;2358  readonly isVersion: boolean;2359  readonly asVersion: u32;2360  readonly type: 'Assets' | 'Version';2361}23622363/** @name XcmV1Xcm */2364export interface XcmV1Xcm extends Enum {2365  readonly isWithdrawAsset: boolean;2366  readonly asWithdrawAsset: {2367    readonly assets: XcmV1MultiassetMultiAssets;2368    readonly effects: Vec<XcmV1Order>;2369  } & Struct;2370  readonly isReserveAssetDeposited: boolean;2371  readonly asReserveAssetDeposited: {2372    readonly assets: XcmV1MultiassetMultiAssets;2373    readonly effects: Vec<XcmV1Order>;2374  } & Struct;2375  readonly isReceiveTeleportedAsset: boolean;2376  readonly asReceiveTeleportedAsset: {2377    readonly assets: XcmV1MultiassetMultiAssets;2378    readonly effects: Vec<XcmV1Order>;2379  } & Struct;2380  readonly isQueryResponse: boolean;2381  readonly asQueryResponse: {2382    readonly queryId: Compact<u64>;2383    readonly response: XcmV1Response;2384  } & Struct;2385  readonly isTransferAsset: boolean;2386  readonly asTransferAsset: {2387    readonly assets: XcmV1MultiassetMultiAssets;2388    readonly beneficiary: XcmV1MultiLocation;2389  } & Struct;2390  readonly isTransferReserveAsset: boolean;2391  readonly asTransferReserveAsset: {2392    readonly assets: XcmV1MultiassetMultiAssets;2393    readonly dest: XcmV1MultiLocation;2394    readonly effects: Vec<XcmV1Order>;2395  } & Struct;2396  readonly isTransact: boolean;2397  readonly asTransact: {2398    readonly originType: XcmV0OriginKind;2399    readonly requireWeightAtMost: u64;2400    readonly call: XcmDoubleEncoded;2401  } & Struct;2402  readonly isHrmpNewChannelOpenRequest: boolean;2403  readonly asHrmpNewChannelOpenRequest: {2404    readonly sender: Compact<u32>;2405    readonly maxMessageSize: Compact<u32>;2406    readonly maxCapacity: Compact<u32>;2407  } & Struct;2408  readonly isHrmpChannelAccepted: boolean;2409  readonly asHrmpChannelAccepted: {2410    readonly recipient: Compact<u32>;2411  } & Struct;2412  readonly isHrmpChannelClosing: boolean;2413  readonly asHrmpChannelClosing: {2414    readonly initiator: Compact<u32>;2415    readonly sender: Compact<u32>;2416    readonly recipient: Compact<u32>;2417  } & Struct;2418  readonly isRelayedFrom: boolean;2419  readonly asRelayedFrom: {2420    readonly who: XcmV1MultilocationJunctions;2421    readonly message: XcmV1Xcm;2422  } & Struct;2423  readonly isSubscribeVersion: boolean;2424  readonly asSubscribeVersion: {2425    readonly queryId: Compact<u64>;2426    readonly maxResponseWeight: Compact<u64>;2427  } & Struct;2428  readonly isUnsubscribeVersion: boolean;2429  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';2430}24312432/** @name XcmV2Instruction */2433export interface XcmV2Instruction extends Enum {2434  readonly isWithdrawAsset: boolean;2435  readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;2436  readonly isReserveAssetDeposited: boolean;2437  readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;2438  readonly isReceiveTeleportedAsset: boolean;2439  readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;2440  readonly isQueryResponse: boolean;2441  readonly asQueryResponse: {2442    readonly queryId: Compact<u64>;2443    readonly response: XcmV2Response;2444    readonly maxWeight: Compact<u64>;2445  } & Struct;2446  readonly isTransferAsset: boolean;2447  readonly asTransferAsset: {2448    readonly assets: XcmV1MultiassetMultiAssets;2449    readonly beneficiary: XcmV1MultiLocation;2450  } & Struct;2451  readonly isTransferReserveAsset: boolean;2452  readonly asTransferReserveAsset: {2453    readonly assets: XcmV1MultiassetMultiAssets;2454    readonly dest: XcmV1MultiLocation;2455    readonly xcm: XcmV2Xcm;2456  } & Struct;2457  readonly isTransact: boolean;2458  readonly asTransact: {2459    readonly originType: XcmV0OriginKind;2460    readonly requireWeightAtMost: Compact<u64>;2461    readonly call: XcmDoubleEncoded;2462  } & Struct;2463  readonly isHrmpNewChannelOpenRequest: boolean;2464  readonly asHrmpNewChannelOpenRequest: {2465    readonly sender: Compact<u32>;2466    readonly maxMessageSize: Compact<u32>;2467    readonly maxCapacity: Compact<u32>;2468  } & Struct;2469  readonly isHrmpChannelAccepted: boolean;2470  readonly asHrmpChannelAccepted: {2471    readonly recipient: Compact<u32>;2472  } & Struct;2473  readonly isHrmpChannelClosing: boolean;2474  readonly asHrmpChannelClosing: {2475    readonly initiator: Compact<u32>;2476    readonly sender: Compact<u32>;2477    readonly recipient: Compact<u32>;2478  } & Struct;2479  readonly isClearOrigin: boolean;2480  readonly isDescendOrigin: boolean;2481  readonly asDescendOrigin: XcmV1MultilocationJunctions;2482  readonly isReportError: boolean;2483  readonly asReportError: {2484    readonly queryId: Compact<u64>;2485    readonly dest: XcmV1MultiLocation;2486    readonly maxResponseWeight: Compact<u64>;2487  } & Struct;2488  readonly isDepositAsset: boolean;2489  readonly asDepositAsset: {2490    readonly assets: XcmV1MultiassetMultiAssetFilter;2491    readonly maxAssets: Compact<u32>;2492    readonly beneficiary: XcmV1MultiLocation;2493  } & Struct;2494  readonly isDepositReserveAsset: boolean;2495  readonly asDepositReserveAsset: {2496    readonly assets: XcmV1MultiassetMultiAssetFilter;2497    readonly maxAssets: Compact<u32>;2498    readonly dest: XcmV1MultiLocation;2499    readonly xcm: XcmV2Xcm;2500  } & Struct;2501  readonly isExchangeAsset: boolean;2502  readonly asExchangeAsset: {2503    readonly give: XcmV1MultiassetMultiAssetFilter;2504    readonly receive: XcmV1MultiassetMultiAssets;2505  } & Struct;2506  readonly isInitiateReserveWithdraw: boolean;2507  readonly asInitiateReserveWithdraw: {2508    readonly assets: XcmV1MultiassetMultiAssetFilter;2509    readonly reserve: XcmV1MultiLocation;2510    readonly xcm: XcmV2Xcm;2511  } & Struct;2512  readonly isInitiateTeleport: boolean;2513  readonly asInitiateTeleport: {2514    readonly assets: XcmV1MultiassetMultiAssetFilter;2515    readonly dest: XcmV1MultiLocation;2516    readonly xcm: XcmV2Xcm;2517  } & Struct;2518  readonly isQueryHolding: boolean;2519  readonly asQueryHolding: {2520    readonly queryId: Compact<u64>;2521    readonly dest: XcmV1MultiLocation;2522    readonly assets: XcmV1MultiassetMultiAssetFilter;2523    readonly maxResponseWeight: Compact<u64>;2524  } & Struct;2525  readonly isBuyExecution: boolean;2526  readonly asBuyExecution: {2527    readonly fees: XcmV1MultiAsset;2528    readonly weightLimit: XcmV2WeightLimit;2529  } & Struct;2530  readonly isRefundSurplus: boolean;2531  readonly isSetErrorHandler: boolean;2532  readonly asSetErrorHandler: XcmV2Xcm;2533  readonly isSetAppendix: boolean;2534  readonly asSetAppendix: XcmV2Xcm;2535  readonly isClearError: boolean;2536  readonly isClaimAsset: boolean;2537  readonly asClaimAsset: {2538    readonly assets: XcmV1MultiassetMultiAssets;2539    readonly ticket: XcmV1MultiLocation;2540  } & Struct;2541  readonly isTrap: boolean;2542  readonly asTrap: Compact<u64>;2543  readonly isSubscribeVersion: boolean;2544  readonly asSubscribeVersion: {2545    readonly queryId: Compact<u64>;2546    readonly maxResponseWeight: Compact<u64>;2547  } & Struct;2548  readonly isUnsubscribeVersion: boolean;2549  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';2550}25512552/** @name XcmV2Response */2553export interface XcmV2Response extends Enum {2554  readonly isNull: boolean;2555  readonly isAssets: boolean;2556  readonly asAssets: XcmV1MultiassetMultiAssets;2557  readonly isExecutionResult: boolean;2558  readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;2559  readonly isVersion: boolean;2560  readonly asVersion: u32;2561  readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';2562}25632564/** @name XcmV2TraitsError */2565export interface XcmV2TraitsError extends Enum {2566  readonly isOverflow: boolean;2567  readonly isUnimplemented: boolean;2568  readonly isUntrustedReserveLocation: boolean;2569  readonly isUntrustedTeleportLocation: boolean;2570  readonly isMultiLocationFull: boolean;2571  readonly isMultiLocationNotInvertible: boolean;2572  readonly isBadOrigin: boolean;2573  readonly isInvalidLocation: boolean;2574  readonly isAssetNotFound: boolean;2575  readonly isFailedToTransactAsset: boolean;2576  readonly isNotWithdrawable: boolean;2577  readonly isLocationCannotHold: boolean;2578  readonly isExceedsMaxMessageSize: boolean;2579  readonly isDestinationUnsupported: boolean;2580  readonly isTransport: boolean;2581  readonly isUnroutable: boolean;2582  readonly isUnknownClaim: boolean;2583  readonly isFailedToDecode: boolean;2584  readonly isMaxWeightInvalid: boolean;2585  readonly isNotHoldingFees: boolean;2586  readonly isTooExpensive: boolean;2587  readonly isTrap: boolean;2588  readonly asTrap: u64;2589  readonly isUnhandledXcmVersion: boolean;2590  readonly isWeightLimitReached: boolean;2591  readonly asWeightLimitReached: u64;2592  readonly isBarrier: boolean;2593  readonly isWeightNotComputable: boolean;2594  readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';2595}25962597/** @name XcmV2TraitsOutcome */2598export interface XcmV2TraitsOutcome extends Enum {2599  readonly isComplete: boolean;2600  readonly asComplete: u64;2601  readonly isIncomplete: boolean;2602  readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2603  readonly isError: boolean;2604  readonly asError: XcmV2TraitsError;2605  readonly type: 'Complete' | 'Incomplete' | 'Error';2606}26072608/** @name XcmV2WeightLimit */2609export interface XcmV2WeightLimit extends Enum {2610  readonly isUnlimited: boolean;2611  readonly isLimited: boolean;2612  readonly asLimited: Compact<u64>;2613  readonly type: 'Unlimited' | 'Limited';2614}26152616/** @name XcmV2Xcm */2617export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}26182619/** @name XcmVersionedMultiAssets */2620export interface XcmVersionedMultiAssets extends Enum {2621  readonly isV0: boolean;2622  readonly asV0: Vec<XcmV0MultiAsset>;2623  readonly isV1: boolean;2624  readonly asV1: XcmV1MultiassetMultiAssets;2625  readonly type: 'V0' | 'V1';2626}26272628/** @name XcmVersionedMultiLocation */2629export interface XcmVersionedMultiLocation extends Enum {2630  readonly isV0: boolean;2631  readonly asV0: XcmV0MultiLocation;2632  readonly isV1: boolean;2633  readonly asV1: XcmV1MultiLocation;2634  readonly type: 'V0' | 'V1';2635}26362637/** @name XcmVersionedXcm */2638export interface XcmVersionedXcm extends Enum {2639  readonly isV0: boolean;2640  readonly asV0: XcmV0Xcm;2641  readonly isV1: boolean;2642  readonly asV1: XcmV1Xcm;2643  readonly isV2: boolean;2644  readonly asV2: XcmV2Xcm;2645  readonly type: 'V0' | 'V1' | 'V2';2646}26472648export type PHANTOM_UNIQUE = 'unique';
after · tests/src/interfaces/unique/types.ts
1// Auto-generated via `yarn polkadot-types-from-defs`, do not edit2/* eslint-disable */34import type { BTreeMap, Bytes, Compact, Enum, Null, Option, Result, Struct, Text, U256, U8aFixed, Vec, bool, u128, u16, u32, u64, u8 } from '@polkadot/types-codec';5import type { ITuple } from '@polkadot/types-codec/types';6import type { AccountId32, Call, H160, H256, MultiAddress, Perbill } from '@polkadot/types/interfaces/runtime';7import type { Event } from '@polkadot/types/interfaces/system';89/** @name CumulusPalletDmpQueueCall */10export interface CumulusPalletDmpQueueCall extends Enum {11  readonly isServiceOverweight: boolean;12  readonly asServiceOverweight: {13    readonly index: u64;14    readonly weightLimit: u64;15  } & Struct;16  readonly type: 'ServiceOverweight';17}1819/** @name CumulusPalletDmpQueueConfigData */20export interface CumulusPalletDmpQueueConfigData extends Struct {21  readonly maxIndividual: u64;22}2324/** @name CumulusPalletDmpQueueError */25export interface CumulusPalletDmpQueueError extends Enum {26  readonly isUnknown: boolean;27  readonly isOverLimit: boolean;28  readonly type: 'Unknown' | 'OverLimit';29}3031/** @name CumulusPalletDmpQueueEvent */32export interface CumulusPalletDmpQueueEvent extends Enum {33  readonly isInvalidFormat: boolean;34  readonly asInvalidFormat: U8aFixed;35  readonly isUnsupportedVersion: boolean;36  readonly asUnsupportedVersion: U8aFixed;37  readonly isExecutedDownward: boolean;38  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;39  readonly isWeightExhausted: boolean;40  readonly asWeightExhausted: ITuple<[U8aFixed, u64, u64]>;41  readonly isOverweightEnqueued: boolean;42  readonly asOverweightEnqueued: ITuple<[U8aFixed, u64, u64]>;43  readonly isOverweightServiced: boolean;44  readonly asOverweightServiced: ITuple<[u64, u64]>;45  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward' | 'WeightExhausted' | 'OverweightEnqueued' | 'OverweightServiced';46}4748/** @name CumulusPalletDmpQueuePageIndexData */49export interface CumulusPalletDmpQueuePageIndexData extends Struct {50  readonly beginUsed: u32;51  readonly endUsed: u32;52  readonly overweightCount: u64;53}5455/** @name CumulusPalletParachainSystemCall */56export interface CumulusPalletParachainSystemCall extends Enum {57  readonly isSetValidationData: boolean;58  readonly asSetValidationData: {59    readonly data: CumulusPrimitivesParachainInherentParachainInherentData;60  } & Struct;61  readonly isSudoSendUpwardMessage: boolean;62  readonly asSudoSendUpwardMessage: {63    readonly message: Bytes;64  } & Struct;65  readonly isAuthorizeUpgrade: boolean;66  readonly asAuthorizeUpgrade: {67    readonly codeHash: H256;68  } & Struct;69  readonly isEnactAuthorizedUpgrade: boolean;70  readonly asEnactAuthorizedUpgrade: {71    readonly code: Bytes;72  } & Struct;73  readonly type: 'SetValidationData' | 'SudoSendUpwardMessage' | 'AuthorizeUpgrade' | 'EnactAuthorizedUpgrade';74}7576/** @name CumulusPalletParachainSystemError */77export interface CumulusPalletParachainSystemError extends Enum {78  readonly isOverlappingUpgrades: boolean;79  readonly isProhibitedByPolkadot: boolean;80  readonly isTooBig: boolean;81  readonly isValidationDataNotAvailable: boolean;82  readonly isHostConfigurationNotAvailable: boolean;83  readonly isNotScheduled: boolean;84  readonly isNothingAuthorized: boolean;85  readonly isUnauthorized: boolean;86  readonly type: 'OverlappingUpgrades' | 'ProhibitedByPolkadot' | 'TooBig' | 'ValidationDataNotAvailable' | 'HostConfigurationNotAvailable' | 'NotScheduled' | 'NothingAuthorized' | 'Unauthorized';87}8889/** @name CumulusPalletParachainSystemEvent */90export interface CumulusPalletParachainSystemEvent extends Enum {91  readonly isValidationFunctionStored: boolean;92  readonly isValidationFunctionApplied: boolean;93  readonly asValidationFunctionApplied: u32;94  readonly isValidationFunctionDiscarded: boolean;95  readonly isUpgradeAuthorized: boolean;96  readonly asUpgradeAuthorized: H256;97  readonly isDownwardMessagesReceived: boolean;98  readonly asDownwardMessagesReceived: u32;99  readonly isDownwardMessagesProcessed: boolean;100  readonly asDownwardMessagesProcessed: ITuple<[u64, H256]>;101  readonly type: 'ValidationFunctionStored' | 'ValidationFunctionApplied' | 'ValidationFunctionDiscarded' | 'UpgradeAuthorized' | 'DownwardMessagesReceived' | 'DownwardMessagesProcessed';102}103104/** @name CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot */105export interface CumulusPalletParachainSystemRelayStateSnapshotMessagingStateSnapshot extends Struct {106  readonly dmqMqcHead: H256;107  readonly relayDispatchQueueSize: ITuple<[u32, u32]>;108  readonly ingressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;109  readonly egressChannels: Vec<ITuple<[u32, PolkadotPrimitivesV1AbridgedHrmpChannel]>>;110}111112/** @name CumulusPalletXcmCall */113export interface CumulusPalletXcmCall extends Null {}114115/** @name CumulusPalletXcmError */116export interface CumulusPalletXcmError extends Null {}117118/** @name CumulusPalletXcmEvent */119export interface CumulusPalletXcmEvent extends Enum {120  readonly isInvalidFormat: boolean;121  readonly asInvalidFormat: U8aFixed;122  readonly isUnsupportedVersion: boolean;123  readonly asUnsupportedVersion: U8aFixed;124  readonly isExecutedDownward: boolean;125  readonly asExecutedDownward: ITuple<[U8aFixed, XcmV2TraitsOutcome]>;126  readonly type: 'InvalidFormat' | 'UnsupportedVersion' | 'ExecutedDownward';127}128129/** @name CumulusPalletXcmpQueueCall */130export interface CumulusPalletXcmpQueueCall extends Enum {131  readonly isServiceOverweight: boolean;132  readonly asServiceOverweight: {133    readonly index: u64;134    readonly weightLimit: u64;135  } & Struct;136  readonly isSuspendXcmExecution: boolean;137  readonly isResumeXcmExecution: boolean;138  readonly isUpdateSuspendThreshold: boolean;139  readonly asUpdateSuspendThreshold: {140    readonly new_: u32;141  } & Struct;142  readonly isUpdateDropThreshold: boolean;143  readonly asUpdateDropThreshold: {144    readonly new_: u32;145  } & Struct;146  readonly isUpdateResumeThreshold: boolean;147  readonly asUpdateResumeThreshold: {148    readonly new_: u32;149  } & Struct;150  readonly isUpdateThresholdWeight: boolean;151  readonly asUpdateThresholdWeight: {152    readonly new_: u64;153  } & Struct;154  readonly isUpdateWeightRestrictDecay: boolean;155  readonly asUpdateWeightRestrictDecay: {156    readonly new_: u64;157  } & Struct;158  readonly isUpdateXcmpMaxIndividualWeight: boolean;159  readonly asUpdateXcmpMaxIndividualWeight: {160    readonly new_: u64;161  } & Struct;162  readonly type: 'ServiceOverweight' | 'SuspendXcmExecution' | 'ResumeXcmExecution' | 'UpdateSuspendThreshold' | 'UpdateDropThreshold' | 'UpdateResumeThreshold' | 'UpdateThresholdWeight' | 'UpdateWeightRestrictDecay' | 'UpdateXcmpMaxIndividualWeight';163}164165/** @name CumulusPalletXcmpQueueError */166export interface CumulusPalletXcmpQueueError extends Enum {167  readonly isFailedToSend: boolean;168  readonly isBadXcmOrigin: boolean;169  readonly isBadXcm: boolean;170  readonly isBadOverweightIndex: boolean;171  readonly isWeightOverLimit: boolean;172  readonly type: 'FailedToSend' | 'BadXcmOrigin' | 'BadXcm' | 'BadOverweightIndex' | 'WeightOverLimit';173}174175/** @name CumulusPalletXcmpQueueEvent */176export interface CumulusPalletXcmpQueueEvent extends Enum {177  readonly isSuccess: boolean;178  readonly asSuccess: Option<H256>;179  readonly isFail: boolean;180  readonly asFail: ITuple<[Option<H256>, XcmV2TraitsError]>;181  readonly isBadVersion: boolean;182  readonly asBadVersion: Option<H256>;183  readonly isBadFormat: boolean;184  readonly asBadFormat: Option<H256>;185  readonly isUpwardMessageSent: boolean;186  readonly asUpwardMessageSent: Option<H256>;187  readonly isXcmpMessageSent: boolean;188  readonly asXcmpMessageSent: Option<H256>;189  readonly isOverweightEnqueued: boolean;190  readonly asOverweightEnqueued: ITuple<[u32, u32, u64, u64]>;191  readonly isOverweightServiced: boolean;192  readonly asOverweightServiced: ITuple<[u64, u64]>;193  readonly type: 'Success' | 'Fail' | 'BadVersion' | 'BadFormat' | 'UpwardMessageSent' | 'XcmpMessageSent' | 'OverweightEnqueued' | 'OverweightServiced';194}195196/** @name CumulusPalletXcmpQueueInboundChannelDetails */197export interface CumulusPalletXcmpQueueInboundChannelDetails extends Struct {198  readonly sender: u32;199  readonly state: CumulusPalletXcmpQueueInboundState;200  readonly messageMetadata: Vec<ITuple<[u32, PolkadotParachainPrimitivesXcmpMessageFormat]>>;201}202203/** @name CumulusPalletXcmpQueueInboundState */204export interface CumulusPalletXcmpQueueInboundState extends Enum {205  readonly isOk: boolean;206  readonly isSuspended: boolean;207  readonly type: 'Ok' | 'Suspended';208}209210/** @name CumulusPalletXcmpQueueOutboundChannelDetails */211export interface CumulusPalletXcmpQueueOutboundChannelDetails extends Struct {212  readonly recipient: u32;213  readonly state: CumulusPalletXcmpQueueOutboundState;214  readonly signalsExist: bool;215  readonly firstIndex: u16;216  readonly lastIndex: u16;217}218219/** @name CumulusPalletXcmpQueueOutboundState */220export interface CumulusPalletXcmpQueueOutboundState extends Enum {221  readonly isOk: boolean;222  readonly isSuspended: boolean;223  readonly type: 'Ok' | 'Suspended';224}225226/** @name CumulusPalletXcmpQueueQueueConfigData */227export interface CumulusPalletXcmpQueueQueueConfigData extends Struct {228  readonly suspendThreshold: u32;229  readonly dropThreshold: u32;230  readonly resumeThreshold: u32;231  readonly thresholdWeight: u64;232  readonly weightRestrictDecay: u64;233  readonly xcmpMaxIndividualWeight: u64;234}235236/** @name CumulusPrimitivesParachainInherentParachainInherentData */237export interface CumulusPrimitivesParachainInherentParachainInherentData extends Struct {238  readonly validationData: PolkadotPrimitivesV1PersistedValidationData;239  readonly relayChainState: SpTrieStorageProof;240  readonly downwardMessages: Vec<PolkadotCorePrimitivesInboundDownwardMessage>;241  readonly horizontalMessages: BTreeMap<u32, Vec<PolkadotCorePrimitivesInboundHrmpMessage>>;242}243244/** @name EthbloomBloom */245export interface EthbloomBloom extends U8aFixed {}246247/** @name EthereumBlock */248export interface EthereumBlock extends Struct {249  readonly header: EthereumHeader;250  readonly transactions: Vec<EthereumTransactionTransactionV2>;251  readonly ommers: Vec<EthereumHeader>;252}253254/** @name EthereumHeader */255export interface EthereumHeader extends Struct {256  readonly parentHash: H256;257  readonly ommersHash: H256;258  readonly beneficiary: H160;259  readonly stateRoot: H256;260  readonly transactionsRoot: H256;261  readonly receiptsRoot: H256;262  readonly logsBloom: EthbloomBloom;263  readonly difficulty: U256;264  readonly number: U256;265  readonly gasLimit: U256;266  readonly gasUsed: U256;267  readonly timestamp: u64;268  readonly extraData: Bytes;269  readonly mixHash: H256;270  readonly nonce: EthereumTypesHashH64;271}272273/** @name EthereumLog */274export interface EthereumLog extends Struct {275  readonly address: H160;276  readonly topics: Vec<H256>;277  readonly data: Bytes;278}279280/** @name EthereumReceiptEip658ReceiptData */281export interface EthereumReceiptEip658ReceiptData extends Struct {282  readonly statusCode: u8;283  readonly usedGas: U256;284  readonly logsBloom: EthbloomBloom;285  readonly logs: Vec<EthereumLog>;286}287288/** @name EthereumReceiptReceiptV3 */289export interface EthereumReceiptReceiptV3 extends Enum {290  readonly isLegacy: boolean;291  readonly asLegacy: EthereumReceiptEip658ReceiptData;292  readonly isEip2930: boolean;293  readonly asEip2930: EthereumReceiptEip658ReceiptData;294  readonly isEip1559: boolean;295  readonly asEip1559: EthereumReceiptEip658ReceiptData;296  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';297}298299/** @name EthereumTransactionAccessListItem */300export interface EthereumTransactionAccessListItem extends Struct {301  readonly address: H160;302  readonly slots: Vec<H256>;303}304305/** @name EthereumTransactionEip1559Transaction */306export interface EthereumTransactionEip1559Transaction extends Struct {307  readonly chainId: u64;308  readonly nonce: U256;309  readonly maxPriorityFeePerGas: U256;310  readonly maxFeePerGas: U256;311  readonly gasLimit: U256;312  readonly action: EthereumTransactionTransactionAction;313  readonly value: U256;314  readonly input: Bytes;315  readonly accessList: Vec<EthereumTransactionAccessListItem>;316  readonly oddYParity: bool;317  readonly r: H256;318  readonly s: H256;319}320321/** @name EthereumTransactionEip2930Transaction */322export interface EthereumTransactionEip2930Transaction extends Struct {323  readonly chainId: u64;324  readonly nonce: U256;325  readonly gasPrice: U256;326  readonly gasLimit: U256;327  readonly action: EthereumTransactionTransactionAction;328  readonly value: U256;329  readonly input: Bytes;330  readonly accessList: Vec<EthereumTransactionAccessListItem>;331  readonly oddYParity: bool;332  readonly r: H256;333  readonly s: H256;334}335336/** @name EthereumTransactionLegacyTransaction */337export interface EthereumTransactionLegacyTransaction extends Struct {338  readonly nonce: U256;339  readonly gasPrice: U256;340  readonly gasLimit: U256;341  readonly action: EthereumTransactionTransactionAction;342  readonly value: U256;343  readonly input: Bytes;344  readonly signature: EthereumTransactionTransactionSignature;345}346347/** @name EthereumTransactionTransactionAction */348export interface EthereumTransactionTransactionAction extends Enum {349  readonly isCall: boolean;350  readonly asCall: H160;351  readonly isCreate: boolean;352  readonly type: 'Call' | 'Create';353}354355/** @name EthereumTransactionTransactionSignature */356export interface EthereumTransactionTransactionSignature extends Struct {357  readonly v: u64;358  readonly r: H256;359  readonly s: H256;360}361362/** @name EthereumTransactionTransactionV2 */363export interface EthereumTransactionTransactionV2 extends Enum {364  readonly isLegacy: boolean;365  readonly asLegacy: EthereumTransactionLegacyTransaction;366  readonly isEip2930: boolean;367  readonly asEip2930: EthereumTransactionEip2930Transaction;368  readonly isEip1559: boolean;369  readonly asEip1559: EthereumTransactionEip1559Transaction;370  readonly type: 'Legacy' | 'Eip2930' | 'Eip1559';371}372373/** @name EthereumTypesHashH64 */374export interface EthereumTypesHashH64 extends U8aFixed {}375376/** @name EvmCoreErrorExitError */377export interface EvmCoreErrorExitError extends Enum {378  readonly isStackUnderflow: boolean;379  readonly isStackOverflow: boolean;380  readonly isInvalidJump: boolean;381  readonly isInvalidRange: boolean;382  readonly isDesignatedInvalid: boolean;383  readonly isCallTooDeep: boolean;384  readonly isCreateCollision: boolean;385  readonly isCreateContractLimit: boolean;386  readonly isInvalidCode: boolean;387  readonly isOutOfOffset: boolean;388  readonly isOutOfGas: boolean;389  readonly isOutOfFund: boolean;390  readonly isPcUnderflow: boolean;391  readonly isCreateEmpty: boolean;392  readonly isOther: boolean;393  readonly asOther: Text;394  readonly type: 'StackUnderflow' | 'StackOverflow' | 'InvalidJump' | 'InvalidRange' | 'DesignatedInvalid' | 'CallTooDeep' | 'CreateCollision' | 'CreateContractLimit' | 'InvalidCode' | 'OutOfOffset' | 'OutOfGas' | 'OutOfFund' | 'PcUnderflow' | 'CreateEmpty' | 'Other';395}396397/** @name EvmCoreErrorExitFatal */398export interface EvmCoreErrorExitFatal extends Enum {399  readonly isNotSupported: boolean;400  readonly isUnhandledInterrupt: boolean;401  readonly isCallErrorAsFatal: boolean;402  readonly asCallErrorAsFatal: EvmCoreErrorExitError;403  readonly isOther: boolean;404  readonly asOther: Text;405  readonly type: 'NotSupported' | 'UnhandledInterrupt' | 'CallErrorAsFatal' | 'Other';406}407408/** @name EvmCoreErrorExitReason */409export interface EvmCoreErrorExitReason extends Enum {410  readonly isSucceed: boolean;411  readonly asSucceed: EvmCoreErrorExitSucceed;412  readonly isError: boolean;413  readonly asError: EvmCoreErrorExitError;414  readonly isRevert: boolean;415  readonly asRevert: EvmCoreErrorExitRevert;416  readonly isFatal: boolean;417  readonly asFatal: EvmCoreErrorExitFatal;418  readonly type: 'Succeed' | 'Error' | 'Revert' | 'Fatal';419}420421/** @name EvmCoreErrorExitRevert */422export interface EvmCoreErrorExitRevert extends Enum {423  readonly isReverted: boolean;424  readonly type: 'Reverted';425}426427/** @name EvmCoreErrorExitSucceed */428export interface EvmCoreErrorExitSucceed extends Enum {429  readonly isStopped: boolean;430  readonly isReturned: boolean;431  readonly isSuicided: boolean;432  readonly type: 'Stopped' | 'Returned' | 'Suicided';433}434435/** @name FpRpcTransactionStatus */436export interface FpRpcTransactionStatus extends Struct {437  readonly transactionHash: H256;438  readonly transactionIndex: u32;439  readonly from: H160;440  readonly to: Option<H160>;441  readonly contractAddress: Option<H160>;442  readonly logs: Vec<EthereumLog>;443  readonly logsBloom: EthbloomBloom;444}445446/** @name FrameSupportPalletId */447export interface FrameSupportPalletId extends U8aFixed {}448449/** @name FrameSupportTokensMiscBalanceStatus */450export interface FrameSupportTokensMiscBalanceStatus extends Enum {451  readonly isFree: boolean;452  readonly isReserved: boolean;453  readonly type: 'Free' | 'Reserved';454}455456/** @name FrameSupportWeightsDispatchClass */457export interface FrameSupportWeightsDispatchClass extends Enum {458  readonly isNormal: boolean;459  readonly isOperational: boolean;460  readonly isMandatory: boolean;461  readonly type: 'Normal' | 'Operational' | 'Mandatory';462}463464/** @name FrameSupportWeightsDispatchInfo */465export interface FrameSupportWeightsDispatchInfo extends Struct {466  readonly weight: u64;467  readonly class: FrameSupportWeightsDispatchClass;468  readonly paysFee: FrameSupportWeightsPays;469}470471/** @name FrameSupportWeightsPays */472export interface FrameSupportWeightsPays extends Enum {473  readonly isYes: boolean;474  readonly isNo: boolean;475  readonly type: 'Yes' | 'No';476}477478/** @name FrameSupportWeightsPerDispatchClassU32 */479export interface FrameSupportWeightsPerDispatchClassU32 extends Struct {480  readonly normal: u32;481  readonly operational: u32;482  readonly mandatory: u32;483}484485/** @name FrameSupportWeightsPerDispatchClassU64 */486export interface FrameSupportWeightsPerDispatchClassU64 extends Struct {487  readonly normal: u64;488  readonly operational: u64;489  readonly mandatory: u64;490}491492/** @name FrameSupportWeightsPerDispatchClassWeightsPerClass */493export interface FrameSupportWeightsPerDispatchClassWeightsPerClass extends Struct {494  readonly normal: FrameSystemLimitsWeightsPerClass;495  readonly operational: FrameSystemLimitsWeightsPerClass;496  readonly mandatory: FrameSystemLimitsWeightsPerClass;497}498499/** @name FrameSupportWeightsRuntimeDbWeight */500export interface FrameSupportWeightsRuntimeDbWeight extends Struct {501  readonly read: u64;502  readonly write: u64;503}504505/** @name FrameSupportWeightsWeightToFeeCoefficient */506export interface FrameSupportWeightsWeightToFeeCoefficient extends Struct {507  readonly coeffInteger: u128;508  readonly coeffFrac: Perbill;509  readonly negative: bool;510  readonly degree: u8;511}512513/** @name FrameSystemAccountInfo */514export interface FrameSystemAccountInfo extends Struct {515  readonly nonce: u32;516  readonly consumers: u32;517  readonly providers: u32;518  readonly sufficients: u32;519  readonly data: PalletBalancesAccountData;520}521522/** @name FrameSystemCall */523export interface FrameSystemCall extends Enum {524  readonly isFillBlock: boolean;525  readonly asFillBlock: {526    readonly ratio: Perbill;527  } & Struct;528  readonly isRemark: boolean;529  readonly asRemark: {530    readonly remark: Bytes;531  } & Struct;532  readonly isSetHeapPages: boolean;533  readonly asSetHeapPages: {534    readonly pages: u64;535  } & Struct;536  readonly isSetCode: boolean;537  readonly asSetCode: {538    readonly code: Bytes;539  } & Struct;540  readonly isSetCodeWithoutChecks: boolean;541  readonly asSetCodeWithoutChecks: {542    readonly code: Bytes;543  } & Struct;544  readonly isSetStorage: boolean;545  readonly asSetStorage: {546    readonly items: Vec<ITuple<[Bytes, Bytes]>>;547  } & Struct;548  readonly isKillStorage: boolean;549  readonly asKillStorage: {550    readonly keys_: Vec<Bytes>;551  } & Struct;552  readonly isKillPrefix: boolean;553  readonly asKillPrefix: {554    readonly prefix: Bytes;555    readonly subkeys: u32;556  } & Struct;557  readonly isRemarkWithEvent: boolean;558  readonly asRemarkWithEvent: {559    readonly remark: Bytes;560  } & Struct;561  readonly type: 'FillBlock' | 'Remark' | 'SetHeapPages' | 'SetCode' | 'SetCodeWithoutChecks' | 'SetStorage' | 'KillStorage' | 'KillPrefix' | 'RemarkWithEvent';562}563564/** @name FrameSystemError */565export interface FrameSystemError extends Enum {566  readonly isInvalidSpecName: boolean;567  readonly isSpecVersionNeedsToIncrease: boolean;568  readonly isFailedToExtractRuntimeVersion: boolean;569  readonly isNonDefaultComposite: boolean;570  readonly isNonZeroRefCount: boolean;571  readonly isCallFiltered: boolean;572  readonly type: 'InvalidSpecName' | 'SpecVersionNeedsToIncrease' | 'FailedToExtractRuntimeVersion' | 'NonDefaultComposite' | 'NonZeroRefCount' | 'CallFiltered';573}574575/** @name FrameSystemEvent */576export interface FrameSystemEvent extends Enum {577  readonly isExtrinsicSuccess: boolean;578  readonly asExtrinsicSuccess: {579    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;580  } & Struct;581  readonly isExtrinsicFailed: boolean;582  readonly asExtrinsicFailed: {583    readonly dispatchError: SpRuntimeDispatchError;584    readonly dispatchInfo: FrameSupportWeightsDispatchInfo;585  } & Struct;586  readonly isCodeUpdated: boolean;587  readonly isNewAccount: boolean;588  readonly asNewAccount: {589    readonly account: AccountId32;590  } & Struct;591  readonly isKilledAccount: boolean;592  readonly asKilledAccount: {593    readonly account: AccountId32;594  } & Struct;595  readonly isRemarked: boolean;596  readonly asRemarked: {597    readonly sender: AccountId32;598    readonly hash_: H256;599  } & Struct;600  readonly type: 'ExtrinsicSuccess' | 'ExtrinsicFailed' | 'CodeUpdated' | 'NewAccount' | 'KilledAccount' | 'Remarked';601}602603/** @name FrameSystemEventRecord */604export interface FrameSystemEventRecord extends Struct {605  readonly phase: FrameSystemPhase;606  readonly event: Event;607  readonly topics: Vec<H256>;608}609610/** @name FrameSystemExtensionsCheckGenesis */611export interface FrameSystemExtensionsCheckGenesis extends Null {}612613/** @name FrameSystemExtensionsCheckNonce */614export interface FrameSystemExtensionsCheckNonce extends Compact<u32> {}615616/** @name FrameSystemExtensionsCheckSpecVersion */617export interface FrameSystemExtensionsCheckSpecVersion extends Null {}618619/** @name FrameSystemExtensionsCheckWeight */620export interface FrameSystemExtensionsCheckWeight extends Null {}621622/** @name FrameSystemLastRuntimeUpgradeInfo */623export interface FrameSystemLastRuntimeUpgradeInfo extends Struct {624  readonly specVersion: Compact<u32>;625  readonly specName: Text;626}627628/** @name FrameSystemLimitsBlockLength */629export interface FrameSystemLimitsBlockLength extends Struct {630  readonly max: FrameSupportWeightsPerDispatchClassU32;631}632633/** @name FrameSystemLimitsBlockWeights */634export interface FrameSystemLimitsBlockWeights extends Struct {635  readonly baseBlock: u64;636  readonly maxBlock: u64;637  readonly perClass: FrameSupportWeightsPerDispatchClassWeightsPerClass;638}639640/** @name FrameSystemLimitsWeightsPerClass */641export interface FrameSystemLimitsWeightsPerClass extends Struct {642  readonly baseExtrinsic: u64;643  readonly maxExtrinsic: Option<u64>;644  readonly maxTotal: Option<u64>;645  readonly reserved: Option<u64>;646}647648/** @name FrameSystemPhase */649export interface FrameSystemPhase extends Enum {650  readonly isApplyExtrinsic: boolean;651  readonly asApplyExtrinsic: u32;652  readonly isFinalization: boolean;653  readonly isInitialization: boolean;654  readonly type: 'ApplyExtrinsic' | 'Finalization' | 'Initialization';655}656657/** @name OpalRuntimeRuntime */658export interface OpalRuntimeRuntime extends Null {}659660/** @name OrmlVestingModuleCall */661export interface OrmlVestingModuleCall extends Enum {662  readonly isClaim: boolean;663  readonly isVestedTransfer: boolean;664  readonly asVestedTransfer: {665    readonly dest: MultiAddress;666    readonly schedule: OrmlVestingVestingSchedule;667  } & Struct;668  readonly isUpdateVestingSchedules: boolean;669  readonly asUpdateVestingSchedules: {670    readonly who: MultiAddress;671    readonly vestingSchedules: Vec<OrmlVestingVestingSchedule>;672  } & Struct;673  readonly isClaimFor: boolean;674  readonly asClaimFor: {675    readonly dest: MultiAddress;676  } & Struct;677  readonly type: 'Claim' | 'VestedTransfer' | 'UpdateVestingSchedules' | 'ClaimFor';678}679680/** @name OrmlVestingModuleError */681export interface OrmlVestingModuleError extends Enum {682  readonly isZeroVestingPeriod: boolean;683  readonly isZeroVestingPeriodCount: boolean;684  readonly isInsufficientBalanceToLock: boolean;685  readonly isTooManyVestingSchedules: boolean;686  readonly isAmountLow: boolean;687  readonly isMaxVestingSchedulesExceeded: boolean;688  readonly type: 'ZeroVestingPeriod' | 'ZeroVestingPeriodCount' | 'InsufficientBalanceToLock' | 'TooManyVestingSchedules' | 'AmountLow' | 'MaxVestingSchedulesExceeded';689}690691/** @name OrmlVestingModuleEvent */692export interface OrmlVestingModuleEvent extends Enum {693  readonly isVestingScheduleAdded: boolean;694  readonly asVestingScheduleAdded: {695    readonly from: AccountId32;696    readonly to: AccountId32;697    readonly vestingSchedule: OrmlVestingVestingSchedule;698  } & Struct;699  readonly isClaimed: boolean;700  readonly asClaimed: {701    readonly who: AccountId32;702    readonly amount: u128;703  } & Struct;704  readonly isVestingSchedulesUpdated: boolean;705  readonly asVestingSchedulesUpdated: {706    readonly who: AccountId32;707  } & Struct;708  readonly type: 'VestingScheduleAdded' | 'Claimed' | 'VestingSchedulesUpdated';709}710711/** @name OrmlVestingVestingSchedule */712export interface OrmlVestingVestingSchedule extends Struct {713  readonly start: u32;714  readonly period: u32;715  readonly periodCount: u32;716  readonly perPeriod: Compact<u128>;717}718719/** @name PalletBalancesAccountData */720export interface PalletBalancesAccountData extends Struct {721  readonly free: u128;722  readonly reserved: u128;723  readonly miscFrozen: u128;724  readonly feeFrozen: u128;725}726727/** @name PalletBalancesBalanceLock */728export interface PalletBalancesBalanceLock extends Struct {729  readonly id: U8aFixed;730  readonly amount: u128;731  readonly reasons: PalletBalancesReasons;732}733734/** @name PalletBalancesCall */735export interface PalletBalancesCall extends Enum {736  readonly isTransfer: boolean;737  readonly asTransfer: {738    readonly dest: MultiAddress;739    readonly value: Compact<u128>;740  } & Struct;741  readonly isSetBalance: boolean;742  readonly asSetBalance: {743    readonly who: MultiAddress;744    readonly newFree: Compact<u128>;745    readonly newReserved: Compact<u128>;746  } & Struct;747  readonly isForceTransfer: boolean;748  readonly asForceTransfer: {749    readonly source: MultiAddress;750    readonly dest: MultiAddress;751    readonly value: Compact<u128>;752  } & Struct;753  readonly isTransferKeepAlive: boolean;754  readonly asTransferKeepAlive: {755    readonly dest: MultiAddress;756    readonly value: Compact<u128>;757  } & Struct;758  readonly isTransferAll: boolean;759  readonly asTransferAll: {760    readonly dest: MultiAddress;761    readonly keepAlive: bool;762  } & Struct;763  readonly isForceUnreserve: boolean;764  readonly asForceUnreserve: {765    readonly who: MultiAddress;766    readonly amount: u128;767  } & Struct;768  readonly type: 'Transfer' | 'SetBalance' | 'ForceTransfer' | 'TransferKeepAlive' | 'TransferAll' | 'ForceUnreserve';769}770771/** @name PalletBalancesError */772export interface PalletBalancesError extends Enum {773  readonly isVestingBalance: boolean;774  readonly isLiquidityRestrictions: boolean;775  readonly isInsufficientBalance: boolean;776  readonly isExistentialDeposit: boolean;777  readonly isKeepAlive: boolean;778  readonly isExistingVestingSchedule: boolean;779  readonly isDeadAccount: boolean;780  readonly isTooManyReserves: boolean;781  readonly type: 'VestingBalance' | 'LiquidityRestrictions' | 'InsufficientBalance' | 'ExistentialDeposit' | 'KeepAlive' | 'ExistingVestingSchedule' | 'DeadAccount' | 'TooManyReserves';782}783784/** @name PalletBalancesEvent */785export interface PalletBalancesEvent extends Enum {786  readonly isEndowed: boolean;787  readonly asEndowed: {788    readonly account: AccountId32;789    readonly freeBalance: u128;790  } & Struct;791  readonly isDustLost: boolean;792  readonly asDustLost: {793    readonly account: AccountId32;794    readonly amount: u128;795  } & Struct;796  readonly isTransfer: boolean;797  readonly asTransfer: {798    readonly from: AccountId32;799    readonly to: AccountId32;800    readonly amount: u128;801  } & Struct;802  readonly isBalanceSet: boolean;803  readonly asBalanceSet: {804    readonly who: AccountId32;805    readonly free: u128;806    readonly reserved: u128;807  } & Struct;808  readonly isReserved: boolean;809  readonly asReserved: {810    readonly who: AccountId32;811    readonly amount: u128;812  } & Struct;813  readonly isUnreserved: boolean;814  readonly asUnreserved: {815    readonly who: AccountId32;816    readonly amount: u128;817  } & Struct;818  readonly isReserveRepatriated: boolean;819  readonly asReserveRepatriated: {820    readonly from: AccountId32;821    readonly to: AccountId32;822    readonly amount: u128;823    readonly destinationStatus: FrameSupportTokensMiscBalanceStatus;824  } & Struct;825  readonly isDeposit: boolean;826  readonly asDeposit: {827    readonly who: AccountId32;828    readonly amount: u128;829  } & Struct;830  readonly isWithdraw: boolean;831  readonly asWithdraw: {832    readonly who: AccountId32;833    readonly amount: u128;834  } & Struct;835  readonly isSlashed: boolean;836  readonly asSlashed: {837    readonly who: AccountId32;838    readonly amount: u128;839  } & Struct;840  readonly type: 'Endowed' | 'DustLost' | 'Transfer' | 'BalanceSet' | 'Reserved' | 'Unreserved' | 'ReserveRepatriated' | 'Deposit' | 'Withdraw' | 'Slashed';841}842843/** @name PalletBalancesReasons */844export interface PalletBalancesReasons extends Enum {845  readonly isFee: boolean;846  readonly isMisc: boolean;847  readonly isAll: boolean;848  readonly type: 'Fee' | 'Misc' | 'All';849}850851/** @name PalletBalancesReleases */852export interface PalletBalancesReleases extends Enum {853  readonly isV100: boolean;854  readonly isV200: boolean;855  readonly type: 'V100' | 'V200';856}857858/** @name PalletBalancesReserveData */859export interface PalletBalancesReserveData extends Struct {860  readonly id: U8aFixed;861  readonly amount: u128;862}863864/** @name PalletCommonError */865export interface PalletCommonError extends Enum {866  readonly isCollectionNotFound: boolean;867  readonly isMustBeTokenOwner: boolean;868  readonly isNoPermission: boolean;869  readonly isPublicMintingNotAllowed: boolean;870  readonly isAddressNotInAllowlist: boolean;871  readonly isCollectionNameLimitExceeded: boolean;872  readonly isCollectionDescriptionLimitExceeded: boolean;873  readonly isCollectionTokenPrefixLimitExceeded: boolean;874  readonly isTotalCollectionsLimitExceeded: boolean;875  readonly isTokenVariableDataLimitExceeded: boolean;876  readonly isCollectionAdminCountExceeded: boolean;877  readonly isCollectionLimitBoundsExceeded: boolean;878  readonly isOwnerPermissionsCantBeReverted: boolean;879  readonly isTransferNotAllowed: boolean;880  readonly isAccountTokenLimitExceeded: boolean;881  readonly isCollectionTokenLimitExceeded: boolean;882  readonly isMetadataFlagFrozen: boolean;883  readonly isTokenNotFound: boolean;884  readonly isTokenValueTooLow: boolean;885  readonly isApprovedValueTooLow: boolean;886  readonly isCantApproveMoreThanOwned: boolean;887  readonly isAddressIsZero: boolean;888  readonly isUnsupportedOperation: boolean;889  readonly isNotSufficientFounds: boolean;890  readonly type: 'CollectionNotFound' | 'MustBeTokenOwner' | 'NoPermission' | 'PublicMintingNotAllowed' | 'AddressNotInAllowlist' | 'CollectionNameLimitExceeded' | 'CollectionDescriptionLimitExceeded' | 'CollectionTokenPrefixLimitExceeded' | 'TotalCollectionsLimitExceeded' | 'TokenVariableDataLimitExceeded' | 'CollectionAdminCountExceeded' | 'CollectionLimitBoundsExceeded' | 'OwnerPermissionsCantBeReverted' | 'TransferNotAllowed' | 'AccountTokenLimitExceeded' | 'CollectionTokenLimitExceeded' | 'MetadataFlagFrozen' | 'TokenNotFound' | 'TokenValueTooLow' | 'ApprovedValueTooLow' | 'CantApproveMoreThanOwned' | 'AddressIsZero' | 'UnsupportedOperation' | 'NotSufficientFounds';891}892893/** @name PalletCommonEvent */894export interface PalletCommonEvent extends Enum {895  readonly isCollectionCreated: boolean;896  readonly asCollectionCreated: ITuple<[u32, u8, AccountId32]>;897  readonly isCollectionDestroyed: boolean;898  readonly asCollectionDestroyed: u32;899  readonly isItemCreated: boolean;900  readonly asItemCreated: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;901  readonly isItemDestroyed: boolean;902  readonly asItemDestroyed: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;903  readonly isTransfer: boolean;904  readonly asTransfer: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;905  readonly isApproved: boolean;906  readonly asApproved: ITuple<[u32, u32, PalletEvmAccountBasicCrossAccountIdRepr, PalletEvmAccountBasicCrossAccountIdRepr, u128]>;907  readonly type: 'CollectionCreated' | 'CollectionDestroyed' | 'ItemCreated' | 'ItemDestroyed' | 'Transfer' | 'Approved';908}909910/** @name PalletEthereumCall */911export interface PalletEthereumCall extends Enum {912  readonly isTransact: boolean;913  readonly asTransact: {914    readonly transaction: EthereumTransactionTransactionV2;915  } & Struct;916  readonly type: 'Transact';917}918919/** @name PalletEthereumError */920export interface PalletEthereumError extends Enum {921  readonly isInvalidSignature: boolean;922  readonly isPreLogExists: boolean;923  readonly type: 'InvalidSignature' | 'PreLogExists';924}925926/** @name PalletEthereumEvent */927export interface PalletEthereumEvent extends Enum {928  readonly isExecuted: boolean;929  readonly asExecuted: ITuple<[H160, H160, H256, EvmCoreErrorExitReason]>;930  readonly type: 'Executed';931}932933/** @name PalletEvmAccountBasicCrossAccountIdRepr */934export interface PalletEvmAccountBasicCrossAccountIdRepr extends Enum {935  readonly isSubstrate: boolean;936  readonly asSubstrate: AccountId32;937  readonly isEthereum: boolean;938  readonly asEthereum: H160;939  readonly type: 'Substrate' | 'Ethereum';940}941942/** @name PalletEvmCall */943export interface PalletEvmCall extends Enum {944  readonly isWithdraw: boolean;945  readonly asWithdraw: {946    readonly address: H160;947    readonly value: u128;948  } & Struct;949  readonly isCall: boolean;950  readonly asCall: {951    readonly source: H160;952    readonly target: H160;953    readonly input: Bytes;954    readonly value: U256;955    readonly gasLimit: u64;956    readonly maxFeePerGas: U256;957    readonly maxPriorityFeePerGas: Option<U256>;958    readonly nonce: Option<U256>;959    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;960  } & Struct;961  readonly isCreate: boolean;962  readonly asCreate: {963    readonly source: H160;964    readonly init: Bytes;965    readonly value: U256;966    readonly gasLimit: u64;967    readonly maxFeePerGas: U256;968    readonly maxPriorityFeePerGas: Option<U256>;969    readonly nonce: Option<U256>;970    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;971  } & Struct;972  readonly isCreate2: boolean;973  readonly asCreate2: {974    readonly source: H160;975    readonly init: Bytes;976    readonly salt: H256;977    readonly value: U256;978    readonly gasLimit: u64;979    readonly maxFeePerGas: U256;980    readonly maxPriorityFeePerGas: Option<U256>;981    readonly nonce: Option<U256>;982    readonly accessList: Vec<ITuple<[H160, Vec<H256>]>>;983  } & Struct;984  readonly type: 'Withdraw' | 'Call' | 'Create' | 'Create2';985}986987/** @name PalletEvmCoderSubstrateError */988export interface PalletEvmCoderSubstrateError extends Enum {989  readonly isOutOfGas: boolean;990  readonly isOutOfFund: boolean;991  readonly type: 'OutOfGas' | 'OutOfFund';992}993994/** @name PalletEvmContractHelpersError */995export interface PalletEvmContractHelpersError extends Enum {996  readonly isNoPermission: boolean;997  readonly type: 'NoPermission';998}9991000/** @name PalletEvmContractHelpersSponsoringModeT */1001export interface PalletEvmContractHelpersSponsoringModeT extends Enum {1002  readonly isDisabled: boolean;1003  readonly isAllowlisted: boolean;1004  readonly isGenerous: boolean;1005  readonly type: 'Disabled' | 'Allowlisted' | 'Generous';1006}10071008/** @name PalletEvmError */1009export interface PalletEvmError extends Enum {1010  readonly isBalanceLow: boolean;1011  readonly isFeeOverflow: boolean;1012  readonly isPaymentOverflow: boolean;1013  readonly isWithdrawFailed: boolean;1014  readonly isGasPriceTooLow: boolean;1015  readonly isInvalidNonce: boolean;1016  readonly type: 'BalanceLow' | 'FeeOverflow' | 'PaymentOverflow' | 'WithdrawFailed' | 'GasPriceTooLow' | 'InvalidNonce';1017}10181019/** @name PalletEvmEvent */1020export interface PalletEvmEvent extends Enum {1021  readonly isLog: boolean;1022  readonly asLog: EthereumLog;1023  readonly isCreated: boolean;1024  readonly asCreated: H160;1025  readonly isCreatedFailed: boolean;1026  readonly asCreatedFailed: H160;1027  readonly isExecuted: boolean;1028  readonly asExecuted: H160;1029  readonly isExecutedFailed: boolean;1030  readonly asExecutedFailed: H160;1031  readonly isBalanceDeposit: boolean;1032  readonly asBalanceDeposit: ITuple<[AccountId32, H160, U256]>;1033  readonly isBalanceWithdraw: boolean;1034  readonly asBalanceWithdraw: ITuple<[AccountId32, H160, U256]>;1035  readonly type: 'Log' | 'Created' | 'CreatedFailed' | 'Executed' | 'ExecutedFailed' | 'BalanceDeposit' | 'BalanceWithdraw';1036}10371038/** @name PalletEvmMigrationCall */1039export interface PalletEvmMigrationCall extends Enum {1040  readonly isBegin: boolean;1041  readonly asBegin: {1042    readonly address: H160;1043  } & Struct;1044  readonly isSetData: boolean;1045  readonly asSetData: {1046    readonly address: H160;1047    readonly data: Vec<ITuple<[H256, H256]>>;1048  } & Struct;1049  readonly isFinish: boolean;1050  readonly asFinish: {1051    readonly address: H160;1052    readonly code: Bytes;1053  } & Struct;1054  readonly type: 'Begin' | 'SetData' | 'Finish';1055}10561057/** @name PalletEvmMigrationError */1058export interface PalletEvmMigrationError extends Enum {1059  readonly isAccountNotEmpty: boolean;1060  readonly isAccountIsNotMigrating: boolean;1061  readonly type: 'AccountNotEmpty' | 'AccountIsNotMigrating';1062}10631064/** @name PalletFungibleError */1065export interface PalletFungibleError extends Enum {1066  readonly isNotFungibleDataUsedToMintFungibleCollectionToken: boolean;1067  readonly isFungibleItemsHaveNoId: boolean;1068  readonly isFungibleItemsDontHaveData: boolean;1069  readonly type: 'NotFungibleDataUsedToMintFungibleCollectionToken' | 'FungibleItemsHaveNoId' | 'FungibleItemsDontHaveData';1070}10711072/** @name PalletInflationCall */1073export interface PalletInflationCall extends Enum {1074  readonly isStartInflation: boolean;1075  readonly asStartInflation: {1076    readonly inflationStartRelayBlock: u32;1077  } & Struct;1078  readonly type: 'StartInflation';1079}10801081/** @name PalletNonfungibleError */1082export interface PalletNonfungibleError extends Enum {1083  readonly isNotNonfungibleDataUsedToMintFungibleCollectionToken: boolean;1084  readonly isNonfungibleItemsHaveNoAmount: boolean;1085  readonly type: 'NotNonfungibleDataUsedToMintFungibleCollectionToken' | 'NonfungibleItemsHaveNoAmount';1086}10871088/** @name PalletNonfungibleItemData */1089export interface PalletNonfungibleItemData extends Struct {1090  readonly constData: Bytes;1091  readonly variableData: Bytes;1092  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1093}10941095/** @name PalletRefungibleError */1096export interface PalletRefungibleError extends Enum {1097  readonly isNotRefungibleDataUsedToMintFungibleCollectionToken: boolean;1098  readonly isWrongRefungiblePieces: boolean;1099  readonly type: 'NotRefungibleDataUsedToMintFungibleCollectionToken' | 'WrongRefungiblePieces';1100}11011102/** @name PalletRefungibleItemData */1103export interface PalletRefungibleItemData extends Struct {1104  readonly constData: Bytes;1105  readonly variableData: Bytes;1106}11071108/** @name PalletSudoCall */1109export interface PalletSudoCall extends Enum {1110  readonly isSudo: boolean;1111  readonly asSudo: {1112    readonly call: Call;1113  } & Struct;1114  readonly isSudoUncheckedWeight: boolean;1115  readonly asSudoUncheckedWeight: {1116    readonly call: Call;1117    readonly weight: u64;1118  } & Struct;1119  readonly isSetKey: boolean;1120  readonly asSetKey: {1121    readonly new_: MultiAddress;1122  } & Struct;1123  readonly isSudoAs: boolean;1124  readonly asSudoAs: {1125    readonly who: MultiAddress;1126    readonly call: Call;1127  } & Struct;1128  readonly type: 'Sudo' | 'SudoUncheckedWeight' | 'SetKey' | 'SudoAs';1129}11301131/** @name PalletSudoError */1132export interface PalletSudoError extends Enum {1133  readonly isRequireSudo: boolean;1134  readonly type: 'RequireSudo';1135}11361137/** @name PalletSudoEvent */1138export interface PalletSudoEvent extends Enum {1139  readonly isSudid: boolean;1140  readonly asSudid: {1141    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1142  } & Struct;1143  readonly isKeyChanged: boolean;1144  readonly asKeyChanged: {1145    readonly oldSudoer: Option<AccountId32>;1146  } & Struct;1147  readonly isSudoAsDone: boolean;1148  readonly asSudoAsDone: {1149    readonly sudoResult: Result<Null, SpRuntimeDispatchError>;1150  } & Struct;1151  readonly type: 'Sudid' | 'KeyChanged' | 'SudoAsDone';1152}11531154/** @name PalletTemplateTransactionPaymentCall */1155export interface PalletTemplateTransactionPaymentCall extends Null {}11561157/** @name PalletTemplateTransactionPaymentChargeTransactionPayment */1158export interface PalletTemplateTransactionPaymentChargeTransactionPayment extends Compact<u128> {}11591160/** @name PalletTimestampCall */1161export interface PalletTimestampCall extends Enum {1162  readonly isSet: boolean;1163  readonly asSet: {1164    readonly now: Compact<u64>;1165  } & Struct;1166  readonly type: 'Set';1167}11681169/** @name PalletTransactionPaymentReleases */1170export interface PalletTransactionPaymentReleases extends Enum {1171  readonly isV1Ancient: boolean;1172  readonly isV2: boolean;1173  readonly type: 'V1Ancient' | 'V2';1174}11751176/** @name PalletTreasuryCall */1177export interface PalletTreasuryCall extends Enum {1178  readonly isProposeSpend: boolean;1179  readonly asProposeSpend: {1180    readonly value: Compact<u128>;1181    readonly beneficiary: MultiAddress;1182  } & Struct;1183  readonly isRejectProposal: boolean;1184  readonly asRejectProposal: {1185    readonly proposalId: Compact<u32>;1186  } & Struct;1187  readonly isApproveProposal: boolean;1188  readonly asApproveProposal: {1189    readonly proposalId: Compact<u32>;1190  } & Struct;1191  readonly type: 'ProposeSpend' | 'RejectProposal' | 'ApproveProposal';1192}11931194/** @name PalletTreasuryError */1195export interface PalletTreasuryError extends Enum {1196  readonly isInsufficientProposersBalance: boolean;1197  readonly isInvalidIndex: boolean;1198  readonly isTooManyApprovals: boolean;1199  readonly type: 'InsufficientProposersBalance' | 'InvalidIndex' | 'TooManyApprovals';1200}12011202/** @name PalletTreasuryEvent */1203export interface PalletTreasuryEvent extends Enum {1204  readonly isProposed: boolean;1205  readonly asProposed: {1206    readonly proposalIndex: u32;1207  } & Struct;1208  readonly isSpending: boolean;1209  readonly asSpending: {1210    readonly budgetRemaining: u128;1211  } & Struct;1212  readonly isAwarded: boolean;1213  readonly asAwarded: {1214    readonly proposalIndex: u32;1215    readonly award: u128;1216    readonly account: AccountId32;1217  } & Struct;1218  readonly isRejected: boolean;1219  readonly asRejected: {1220    readonly proposalIndex: u32;1221    readonly slashed: u128;1222  } & Struct;1223  readonly isBurnt: boolean;1224  readonly asBurnt: {1225    readonly burntFunds: u128;1226  } & Struct;1227  readonly isRollover: boolean;1228  readonly asRollover: {1229    readonly rolloverBalance: u128;1230  } & Struct;1231  readonly isDeposit: boolean;1232  readonly asDeposit: {1233    readonly value: u128;1234  } & Struct;1235  readonly type: 'Proposed' | 'Spending' | 'Awarded' | 'Rejected' | 'Burnt' | 'Rollover' | 'Deposit';1236}12371238/** @name PalletTreasuryProposal */1239export interface PalletTreasuryProposal extends Struct {1240  readonly proposer: AccountId32;1241  readonly value: u128;1242  readonly beneficiary: AccountId32;1243  readonly bond: u128;1244}12451246/** @name PalletUniqueCall */1247export interface PalletUniqueCall extends Enum {1248  readonly isCreateCollection: boolean;1249  readonly asCreateCollection: {1250    readonly collectionName: Vec<u16>;1251    readonly collectionDescription: Vec<u16>;1252    readonly tokenPrefix: Bytes;1253    readonly mode: UpDataStructsCollectionMode;1254  } & Struct;1255  readonly isCreateCollectionEx: boolean;1256  readonly asCreateCollectionEx: {1257    readonly data: UpDataStructsCreateCollectionData;1258  } & Struct;1259  readonly isDestroyCollection: boolean;1260  readonly asDestroyCollection: {1261    readonly collectionId: u32;1262  } & Struct;1263  readonly isAddToAllowList: boolean;1264  readonly asAddToAllowList: {1265    readonly collectionId: u32;1266    readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1267  } & Struct;1268  readonly isRemoveFromAllowList: boolean;1269  readonly asRemoveFromAllowList: {1270    readonly collectionId: u32;1271    readonly address: PalletEvmAccountBasicCrossAccountIdRepr;1272  } & Struct;1273  readonly isSetPublicAccessMode: boolean;1274  readonly asSetPublicAccessMode: {1275    readonly collectionId: u32;1276    readonly mode: UpDataStructsAccessMode;1277  } & Struct;1278  readonly isSetMintPermission: boolean;1279  readonly asSetMintPermission: {1280    readonly collectionId: u32;1281    readonly mintPermission: bool;1282  } & Struct;1283  readonly isChangeCollectionOwner: boolean;1284  readonly asChangeCollectionOwner: {1285    readonly collectionId: u32;1286    readonly newOwner: AccountId32;1287  } & Struct;1288  readonly isAddCollectionAdmin: boolean;1289  readonly asAddCollectionAdmin: {1290    readonly collectionId: u32;1291    readonly newAdminId: PalletEvmAccountBasicCrossAccountIdRepr;1292  } & Struct;1293  readonly isRemoveCollectionAdmin: boolean;1294  readonly asRemoveCollectionAdmin: {1295    readonly collectionId: u32;1296    readonly accountId: PalletEvmAccountBasicCrossAccountIdRepr;1297  } & Struct;1298  readonly isSetCollectionSponsor: boolean;1299  readonly asSetCollectionSponsor: {1300    readonly collectionId: u32;1301    readonly newSponsor: AccountId32;1302  } & Struct;1303  readonly isConfirmSponsorship: boolean;1304  readonly asConfirmSponsorship: {1305    readonly collectionId: u32;1306  } & Struct;1307  readonly isRemoveCollectionSponsor: boolean;1308  readonly asRemoveCollectionSponsor: {1309    readonly collectionId: u32;1310  } & Struct;1311  readonly isCreateItem: boolean;1312  readonly asCreateItem: {1313    readonly collectionId: u32;1314    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1315    readonly data: UpDataStructsCreateItemData;1316  } & Struct;1317  readonly isCreateMultipleItems: boolean;1318  readonly asCreateMultipleItems: {1319    readonly collectionId: u32;1320    readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1321    readonly itemsData: Vec<UpDataStructsCreateItemData>;1322  } & Struct;1323  readonly isCreateMultipleItemsEx: boolean;1324  readonly asCreateMultipleItemsEx: {1325    readonly collectionId: u32;1326    readonly data: UpDataStructsCreateItemExData;1327  } & Struct;1328  readonly isSetTransfersEnabledFlag: boolean;1329  readonly asSetTransfersEnabledFlag: {1330    readonly collectionId: u32;1331    readonly value: bool;1332  } & Struct;1333  readonly isBurnItem: boolean;1334  readonly asBurnItem: {1335    readonly collectionId: u32;1336    readonly itemId: u32;1337    readonly value: u128;1338  } & Struct;1339  readonly isBurnFrom: boolean;1340  readonly asBurnFrom: {1341    readonly collectionId: u32;1342    readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1343    readonly itemId: u32;1344    readonly value: u128;1345  } & Struct;1346  readonly isTransfer: boolean;1347  readonly asTransfer: {1348    readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1349    readonly collectionId: u32;1350    readonly itemId: u32;1351    readonly value: u128;1352  } & Struct;1353  readonly isApprove: boolean;1354  readonly asApprove: {1355    readonly spender: PalletEvmAccountBasicCrossAccountIdRepr;1356    readonly collectionId: u32;1357    readonly itemId: u32;1358    readonly amount: u128;1359  } & Struct;1360  readonly isTransferFrom: boolean;1361  readonly asTransferFrom: {1362    readonly from: PalletEvmAccountBasicCrossAccountIdRepr;1363    readonly recipient: PalletEvmAccountBasicCrossAccountIdRepr;1364    readonly collectionId: u32;1365    readonly itemId: u32;1366    readonly value: u128;1367  } & Struct;1368  readonly isSetVariableMetaData: boolean;1369  readonly asSetVariableMetaData: {1370    readonly collectionId: u32;1371    readonly itemId: u32;1372    readonly data: Bytes;1373  } & Struct;1374  readonly isSetMetaUpdatePermissionFlag: boolean;1375  readonly asSetMetaUpdatePermissionFlag: {1376    readonly collectionId: u32;1377    readonly value: UpDataStructsMetaUpdatePermission;1378  } & Struct;1379  readonly isSetSchemaVersion: boolean;1380  readonly asSetSchemaVersion: {1381    readonly collectionId: u32;1382    readonly version: UpDataStructsSchemaVersion;1383  } & Struct;1384  readonly isSetOffchainSchema: boolean;1385  readonly asSetOffchainSchema: {1386    readonly collectionId: u32;1387    readonly schema: Bytes;1388  } & Struct;1389  readonly isSetConstOnChainSchema: boolean;1390  readonly asSetConstOnChainSchema: {1391    readonly collectionId: u32;1392    readonly schema: Bytes;1393  } & Struct;1394  readonly isSetVariableOnChainSchema: boolean;1395  readonly asSetVariableOnChainSchema: {1396    readonly collectionId: u32;1397    readonly schema: Bytes;1398  } & Struct;1399  readonly isSetCollectionLimits: boolean;1400  readonly asSetCollectionLimits: {1401    readonly collectionId: u32;1402    readonly newLimit: UpDataStructsCollectionLimits;1403  } & Struct;1404  readonly type: 'CreateCollection' | 'CreateCollectionEx' | 'DestroyCollection' | 'AddToAllowList' | 'RemoveFromAllowList' | 'SetPublicAccessMode' | 'SetMintPermission' | 'ChangeCollectionOwner' | 'AddCollectionAdmin' | 'RemoveCollectionAdmin' | 'SetCollectionSponsor' | 'ConfirmSponsorship' | 'RemoveCollectionSponsor' | 'CreateItem' | 'CreateMultipleItems' | 'CreateMultipleItemsEx' | 'SetTransfersEnabledFlag' | 'BurnItem' | 'BurnFrom' | 'Transfer' | 'Approve' | 'TransferFrom' | 'SetVariableMetaData' | 'SetMetaUpdatePermissionFlag' | 'SetSchemaVersion' | 'SetOffchainSchema' | 'SetConstOnChainSchema' | 'SetVariableOnChainSchema' | 'SetCollectionLimits';1405}14061407/** @name PalletUniqueError */1408export interface PalletUniqueError extends Enum {1409  readonly isCollectionDecimalPointLimitExceeded: boolean;1410  readonly isConfirmUnsetSponsorFail: boolean;1411  readonly isEmptyArgument: boolean;1412  readonly type: 'CollectionDecimalPointLimitExceeded' | 'ConfirmUnsetSponsorFail' | 'EmptyArgument';1413}14141415/** @name PalletUniqueRawEvent */1416export interface PalletUniqueRawEvent extends Enum {1417  readonly isCollectionSponsorRemoved: boolean;1418  readonly asCollectionSponsorRemoved: u32;1419  readonly isCollectionAdminAdded: boolean;1420  readonly asCollectionAdminAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1421  readonly isCollectionOwnedChanged: boolean;1422  readonly asCollectionOwnedChanged: ITuple<[u32, AccountId32]>;1423  readonly isCollectionSponsorSet: boolean;1424  readonly asCollectionSponsorSet: ITuple<[u32, AccountId32]>;1425  readonly isConstOnChainSchemaSet: boolean;1426  readonly asConstOnChainSchemaSet: u32;1427  readonly isSponsorshipConfirmed: boolean;1428  readonly asSponsorshipConfirmed: ITuple<[u32, AccountId32]>;1429  readonly isCollectionAdminRemoved: boolean;1430  readonly asCollectionAdminRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1431  readonly isAllowListAddressRemoved: boolean;1432  readonly asAllowListAddressRemoved: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1433  readonly isAllowListAddressAdded: boolean;1434  readonly asAllowListAddressAdded: ITuple<[u32, PalletEvmAccountBasicCrossAccountIdRepr]>;1435  readonly isCollectionLimitSet: boolean;1436  readonly asCollectionLimitSet: u32;1437  readonly isMintPermissionSet: boolean;1438  readonly asMintPermissionSet: u32;1439  readonly isOffchainSchemaSet: boolean;1440  readonly asOffchainSchemaSet: u32;1441  readonly isPublicAccessModeSet: boolean;1442  readonly asPublicAccessModeSet: ITuple<[u32, UpDataStructsAccessMode]>;1443  readonly isSchemaVersionSet: boolean;1444  readonly asSchemaVersionSet: u32;1445  readonly isVariableOnChainSchemaSet: boolean;1446  readonly asVariableOnChainSchemaSet: u32;1447  readonly type: 'CollectionSponsorRemoved' | 'CollectionAdminAdded' | 'CollectionOwnedChanged' | 'CollectionSponsorSet' | 'ConstOnChainSchemaSet' | 'SponsorshipConfirmed' | 'CollectionAdminRemoved' | 'AllowListAddressRemoved' | 'AllowListAddressAdded' | 'CollectionLimitSet' | 'MintPermissionSet' | 'OffchainSchemaSet' | 'PublicAccessModeSet' | 'SchemaVersionSet' | 'VariableOnChainSchemaSet';1448}14491450/** @name PalletXcmCall */1451export interface PalletXcmCall extends Enum {1452  readonly isSend: boolean;1453  readonly asSend: {1454    readonly dest: XcmVersionedMultiLocation;1455    readonly message: XcmVersionedXcm;1456  } & Struct;1457  readonly isTeleportAssets: boolean;1458  readonly asTeleportAssets: {1459    readonly dest: XcmVersionedMultiLocation;1460    readonly beneficiary: XcmVersionedMultiLocation;1461    readonly assets: XcmVersionedMultiAssets;1462    readonly feeAssetItem: u32;1463  } & Struct;1464  readonly isReserveTransferAssets: boolean;1465  readonly asReserveTransferAssets: {1466    readonly dest: XcmVersionedMultiLocation;1467    readonly beneficiary: XcmVersionedMultiLocation;1468    readonly assets: XcmVersionedMultiAssets;1469    readonly feeAssetItem: u32;1470  } & Struct;1471  readonly isExecute: boolean;1472  readonly asExecute: {1473    readonly message: XcmVersionedXcm;1474    readonly maxWeight: u64;1475  } & Struct;1476  readonly isForceXcmVersion: boolean;1477  readonly asForceXcmVersion: {1478    readonly location: XcmV1MultiLocation;1479    readonly xcmVersion: u32;1480  } & Struct;1481  readonly isForceDefaultXcmVersion: boolean;1482  readonly asForceDefaultXcmVersion: {1483    readonly maybeXcmVersion: Option<u32>;1484  } & Struct;1485  readonly isForceSubscribeVersionNotify: boolean;1486  readonly asForceSubscribeVersionNotify: {1487    readonly location: XcmVersionedMultiLocation;1488  } & Struct;1489  readonly isForceUnsubscribeVersionNotify: boolean;1490  readonly asForceUnsubscribeVersionNotify: {1491    readonly location: XcmVersionedMultiLocation;1492  } & Struct;1493  readonly isLimitedReserveTransferAssets: boolean;1494  readonly asLimitedReserveTransferAssets: {1495    readonly dest: XcmVersionedMultiLocation;1496    readonly beneficiary: XcmVersionedMultiLocation;1497    readonly assets: XcmVersionedMultiAssets;1498    readonly feeAssetItem: u32;1499    readonly weightLimit: XcmV2WeightLimit;1500  } & Struct;1501  readonly isLimitedTeleportAssets: boolean;1502  readonly asLimitedTeleportAssets: {1503    readonly dest: XcmVersionedMultiLocation;1504    readonly beneficiary: XcmVersionedMultiLocation;1505    readonly assets: XcmVersionedMultiAssets;1506    readonly feeAssetItem: u32;1507    readonly weightLimit: XcmV2WeightLimit;1508  } & Struct;1509  readonly type: 'Send' | 'TeleportAssets' | 'ReserveTransferAssets' | 'Execute' | 'ForceXcmVersion' | 'ForceDefaultXcmVersion' | 'ForceSubscribeVersionNotify' | 'ForceUnsubscribeVersionNotify' | 'LimitedReserveTransferAssets' | 'LimitedTeleportAssets';1510}15111512/** @name PalletXcmError */1513export interface PalletXcmError extends Enum {1514  readonly isUnreachable: boolean;1515  readonly isSendFailure: boolean;1516  readonly isFiltered: boolean;1517  readonly isUnweighableMessage: boolean;1518  readonly isDestinationNotInvertible: boolean;1519  readonly isEmpty: boolean;1520  readonly isCannotReanchor: boolean;1521  readonly isTooManyAssets: boolean;1522  readonly isInvalidOrigin: boolean;1523  readonly isBadVersion: boolean;1524  readonly isBadLocation: boolean;1525  readonly isNoSubscription: boolean;1526  readonly isAlreadySubscribed: boolean;1527  readonly type: 'Unreachable' | 'SendFailure' | 'Filtered' | 'UnweighableMessage' | 'DestinationNotInvertible' | 'Empty' | 'CannotReanchor' | 'TooManyAssets' | 'InvalidOrigin' | 'BadVersion' | 'BadLocation' | 'NoSubscription' | 'AlreadySubscribed';1528}15291530/** @name PalletXcmEvent */1531export interface PalletXcmEvent extends Enum {1532  readonly isAttempted: boolean;1533  readonly asAttempted: XcmV2TraitsOutcome;1534  readonly isSent: boolean;1535  readonly asSent: ITuple<[XcmV1MultiLocation, XcmV1MultiLocation, XcmV2Xcm]>;1536  readonly isUnexpectedResponse: boolean;1537  readonly asUnexpectedResponse: ITuple<[XcmV1MultiLocation, u64]>;1538  readonly isResponseReady: boolean;1539  readonly asResponseReady: ITuple<[u64, XcmV2Response]>;1540  readonly isNotified: boolean;1541  readonly asNotified: ITuple<[u64, u8, u8]>;1542  readonly isNotifyOverweight: boolean;1543  readonly asNotifyOverweight: ITuple<[u64, u8, u8, u64, u64]>;1544  readonly isNotifyDispatchError: boolean;1545  readonly asNotifyDispatchError: ITuple<[u64, u8, u8]>;1546  readonly isNotifyDecodeFailed: boolean;1547  readonly asNotifyDecodeFailed: ITuple<[u64, u8, u8]>;1548  readonly isInvalidResponder: boolean;1549  readonly asInvalidResponder: ITuple<[XcmV1MultiLocation, u64, Option<XcmV1MultiLocation>]>;1550  readonly isInvalidResponderVersion: boolean;1551  readonly asInvalidResponderVersion: ITuple<[XcmV1MultiLocation, u64]>;1552  readonly isResponseTaken: boolean;1553  readonly asResponseTaken: u64;1554  readonly isAssetsTrapped: boolean;1555  readonly asAssetsTrapped: ITuple<[H256, XcmV1MultiLocation, XcmVersionedMultiAssets]>;1556  readonly isVersionChangeNotified: boolean;1557  readonly asVersionChangeNotified: ITuple<[XcmV1MultiLocation, u32]>;1558  readonly isSupportedVersionChanged: boolean;1559  readonly asSupportedVersionChanged: ITuple<[XcmV1MultiLocation, u32]>;1560  readonly isNotifyTargetSendFail: boolean;1561  readonly asNotifyTargetSendFail: ITuple<[XcmV1MultiLocation, u64, XcmV2TraitsError]>;1562  readonly isNotifyTargetMigrationFail: boolean;1563  readonly asNotifyTargetMigrationFail: ITuple<[XcmVersionedMultiLocation, u64]>;1564  readonly type: 'Attempted' | 'Sent' | 'UnexpectedResponse' | 'ResponseReady' | 'Notified' | 'NotifyOverweight' | 'NotifyDispatchError' | 'NotifyDecodeFailed' | 'InvalidResponder' | 'InvalidResponderVersion' | 'ResponseTaken' | 'AssetsTrapped' | 'VersionChangeNotified' | 'SupportedVersionChanged' | 'NotifyTargetSendFail' | 'NotifyTargetMigrationFail';1565}15661567/** @name PolkadotCorePrimitivesInboundDownwardMessage */1568export interface PolkadotCorePrimitivesInboundDownwardMessage extends Struct {1569  readonly sentAt: u32;1570  readonly msg: Bytes;1571}15721573/** @name PolkadotCorePrimitivesInboundHrmpMessage */1574export interface PolkadotCorePrimitivesInboundHrmpMessage extends Struct {1575  readonly sentAt: u32;1576  readonly data: Bytes;1577}15781579/** @name PolkadotCorePrimitivesOutboundHrmpMessage */1580export interface PolkadotCorePrimitivesOutboundHrmpMessage extends Struct {1581  readonly recipient: u32;1582  readonly data: Bytes;1583}15841585/** @name PolkadotParachainPrimitivesXcmpMessageFormat */1586export interface PolkadotParachainPrimitivesXcmpMessageFormat extends Enum {1587  readonly isConcatenatedVersionedXcm: boolean;1588  readonly isConcatenatedEncodedBlob: boolean;1589  readonly isSignals: boolean;1590  readonly type: 'ConcatenatedVersionedXcm' | 'ConcatenatedEncodedBlob' | 'Signals';1591}15921593/** @name PolkadotPrimitivesV1AbridgedHostConfiguration */1594export interface PolkadotPrimitivesV1AbridgedHostConfiguration extends Struct {1595  readonly maxCodeSize: u32;1596  readonly maxHeadDataSize: u32;1597  readonly maxUpwardQueueCount: u32;1598  readonly maxUpwardQueueSize: u32;1599  readonly maxUpwardMessageSize: u32;1600  readonly maxUpwardMessageNumPerCandidate: u32;1601  readonly hrmpMaxMessageNumPerCandidate: u32;1602  readonly validationUpgradeCooldown: u32;1603  readonly validationUpgradeDelay: u32;1604}16051606/** @name PolkadotPrimitivesV1AbridgedHrmpChannel */1607export interface PolkadotPrimitivesV1AbridgedHrmpChannel extends Struct {1608  readonly maxCapacity: u32;1609  readonly maxTotalSize: u32;1610  readonly maxMessageSize: u32;1611  readonly msgCount: u32;1612  readonly totalSize: u32;1613  readonly mqcHead: Option<H256>;1614}16151616/** @name PolkadotPrimitivesV1PersistedValidationData */1617export interface PolkadotPrimitivesV1PersistedValidationData extends Struct {1618  readonly parentHead: Bytes;1619  readonly relayParentNumber: u32;1620  readonly relayParentStorageRoot: H256;1621  readonly maxPovSize: u32;1622}16231624/** @name PolkadotPrimitivesV1UpgradeRestriction */1625export interface PolkadotPrimitivesV1UpgradeRestriction extends Enum {1626  readonly isPresent: boolean;1627  readonly type: 'Present';1628}16291630/** @name SpCoreEcdsaSignature */1631export interface SpCoreEcdsaSignature extends U8aFixed {}16321633/** @name SpCoreEd25519Signature */1634export interface SpCoreEd25519Signature extends U8aFixed {}16351636/** @name SpCoreSr25519Signature */1637export interface SpCoreSr25519Signature extends U8aFixed {}16381639/** @name SpRuntimeArithmeticError */1640export interface SpRuntimeArithmeticError extends Enum {1641  readonly isUnderflow: boolean;1642  readonly isOverflow: boolean;1643  readonly isDivisionByZero: boolean;1644  readonly type: 'Underflow' | 'Overflow' | 'DivisionByZero';1645}16461647/** @name SpRuntimeDigest */1648export interface SpRuntimeDigest extends Struct {1649  readonly logs: Vec<SpRuntimeDigestDigestItem>;1650}16511652/** @name SpRuntimeDigestDigestItem */1653export interface SpRuntimeDigestDigestItem extends Enum {1654  readonly isOther: boolean;1655  readonly asOther: Bytes;1656  readonly isConsensus: boolean;1657  readonly asConsensus: ITuple<[U8aFixed, Bytes]>;1658  readonly isSeal: boolean;1659  readonly asSeal: ITuple<[U8aFixed, Bytes]>;1660  readonly isPreRuntime: boolean;1661  readonly asPreRuntime: ITuple<[U8aFixed, Bytes]>;1662  readonly isRuntimeEnvironmentUpdated: boolean;1663  readonly type: 'Other' | 'Consensus' | 'Seal' | 'PreRuntime' | 'RuntimeEnvironmentUpdated';1664}16651666/** @name SpRuntimeDispatchError */1667export interface SpRuntimeDispatchError extends Enum {1668  readonly isOther: boolean;1669  readonly isCannotLookup: boolean;1670  readonly isBadOrigin: boolean;1671  readonly isModule: boolean;1672  readonly asModule: SpRuntimeModuleError;1673  readonly isConsumerRemaining: boolean;1674  readonly isNoProviders: boolean;1675  readonly isTooManyConsumers: boolean;1676  readonly isToken: boolean;1677  readonly asToken: SpRuntimeTokenError;1678  readonly isArithmetic: boolean;1679  readonly asArithmetic: SpRuntimeArithmeticError;1680  readonly type: 'Other' | 'CannotLookup' | 'BadOrigin' | 'Module' | 'ConsumerRemaining' | 'NoProviders' | 'TooManyConsumers' | 'Token' | 'Arithmetic';1681}16821683/** @name SpRuntimeModuleError */1684export interface SpRuntimeModuleError extends Struct {1685  readonly index: u8;1686  readonly error: u8;1687}16881689/** @name SpRuntimeMultiSignature */1690export interface SpRuntimeMultiSignature extends Enum {1691  readonly isEd25519: boolean;1692  readonly asEd25519: SpCoreEd25519Signature;1693  readonly isSr25519: boolean;1694  readonly asSr25519: SpCoreSr25519Signature;1695  readonly isEcdsa: boolean;1696  readonly asEcdsa: SpCoreEcdsaSignature;1697  readonly type: 'Ed25519' | 'Sr25519' | 'Ecdsa';1698}16991700/** @name SpRuntimeTokenError */1701export interface SpRuntimeTokenError extends Enum {1702  readonly isNoFunds: boolean;1703  readonly isWouldDie: boolean;1704  readonly isBelowMinimum: boolean;1705  readonly isCannotCreate: boolean;1706  readonly isUnknownAsset: boolean;1707  readonly isFrozen: boolean;1708  readonly isUnsupported: boolean;1709  readonly type: 'NoFunds' | 'WouldDie' | 'BelowMinimum' | 'CannotCreate' | 'UnknownAsset' | 'Frozen' | 'Unsupported';1710}17111712/** @name SpTrieStorageProof */1713export interface SpTrieStorageProof extends Struct {1714  readonly trieNodes: Vec<Bytes>;1715}17161717/** @name SpVersionRuntimeVersion */1718export interface SpVersionRuntimeVersion extends Struct {1719  readonly specName: Text;1720  readonly implName: Text;1721  readonly authoringVersion: u32;1722  readonly specVersion: u32;1723  readonly implVersion: u32;1724  readonly apis: Vec<ITuple<[U8aFixed, u32]>>;1725  readonly transactionVersion: u32;1726  readonly stateVersion: u8;1727}17281729/** @name UpDataStructsAccessMode */1730export interface UpDataStructsAccessMode extends Enum {1731  readonly isNormal: boolean;1732  readonly isAllowList: boolean;1733  readonly type: 'Normal' | 'AllowList';1734}17351736/** @name UpDataStructsCollection */1737export interface UpDataStructsCollection extends Struct {1738  readonly owner: AccountId32;1739  readonly mode: UpDataStructsCollectionMode;1740  readonly access: UpDataStructsAccessMode;1741  readonly name: Vec<u16>;1742  readonly description: Vec<u16>;1743  readonly tokenPrefix: Bytes;1744  readonly mintMode: bool;1745  readonly offchainSchema: Bytes;1746  readonly schemaVersion: UpDataStructsSchemaVersion;1747  readonly sponsorship: UpDataStructsSponsorshipState;1748  readonly limits: UpDataStructsCollectionLimits;1749  readonly variableOnChainSchema: Bytes;1750  readonly constOnChainSchema: Bytes;1751  readonly metaUpdatePermission: UpDataStructsMetaUpdatePermission;1752}17531754/** @name UpDataStructsCollectionLimits */1755export interface UpDataStructsCollectionLimits extends Struct {1756  readonly accountTokenOwnershipLimit: Option<u32>;1757  readonly sponsoredDataSize: Option<u32>;1758  readonly sponsoredDataRateLimit: Option<UpDataStructsSponsoringRateLimit>;1759  readonly tokenLimit: Option<u32>;1760  readonly sponsorTransferTimeout: Option<u32>;1761  readonly sponsorApproveTimeout: Option<u32>;1762  readonly ownerCanTransfer: Option<bool>;1763  readonly ownerCanDestroy: Option<bool>;1764  readonly transfersEnabled: Option<bool>;1765}17661767/** @name UpDataStructsCollectionMode */1768export interface UpDataStructsCollectionMode extends Enum {1769  readonly isNft: boolean;1770  readonly isFungible: boolean;1771  readonly asFungible: u8;1772  readonly isReFungible: boolean;1773  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1774}17751776/** @name UpDataStructsCollectionStats */1777export interface UpDataStructsCollectionStats extends Struct {1778  readonly created: u32;1779  readonly destroyed: u32;1780  readonly alive: u32;1781}17821783/** @name UpDataStructsCreateCollectionData */1784export interface UpDataStructsCreateCollectionData extends Struct {1785  readonly mode: UpDataStructsCollectionMode;1786  readonly access: Option<UpDataStructsAccessMode>;1787  readonly name: Vec<u16>;1788  readonly description: Vec<u16>;1789  readonly tokenPrefix: Bytes;1790  readonly offchainSchema: Bytes;1791  readonly schemaVersion: Option<UpDataStructsSchemaVersion>;1792  readonly pendingSponsor: Option<AccountId32>;1793  readonly limits: Option<UpDataStructsCollectionLimits>;1794  readonly variableOnChainSchema: Bytes;1795  readonly constOnChainSchema: Bytes;1796  readonly metaUpdatePermission: Option<UpDataStructsMetaUpdatePermission>;1797}17981799/** @name UpDataStructsCreateFungibleData */1800export interface UpDataStructsCreateFungibleData extends Struct {1801  readonly value: u128;1802}18031804/** @name UpDataStructsCreateItemData */1805export interface UpDataStructsCreateItemData extends Enum {1806  readonly isNft: boolean;1807  readonly asNft: UpDataStructsCreateNftData;1808  readonly isFungible: boolean;1809  readonly asFungible: UpDataStructsCreateFungibleData;1810  readonly isReFungible: boolean;1811  readonly asReFungible: UpDataStructsCreateReFungibleData;1812  readonly type: 'Nft' | 'Fungible' | 'ReFungible';1813}18141815/** @name UpDataStructsCreateItemExData */1816export interface UpDataStructsCreateItemExData extends Enum {1817  readonly isNft: boolean;1818  readonly asNft: Vec<UpDataStructsCreateNftExData>;1819  readonly isFungible: boolean;1820  readonly asFungible: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr,u128>;1821  readonly isRefungibleMultipleItems: boolean;1822  readonly asRefungibleMultipleItems: Vec<UpDataStructsCreateRefungibleExData>;1823  readonly isRefungibleMultipleOwners: boolean;1824  readonly asRefungibleMultipleOwners: UpDataStructsCreateRefungibleExData;1825  readonly type: 'Nft' | 'Fungible' | 'RefungibleMultipleItems' | 'RefungibleMultipleOwners';1826}18271828/** @name UpDataStructsCreateNftData */1829export interface UpDataStructsCreateNftData extends Struct {1830  readonly constData: Bytes;1831  readonly variableData: Bytes;1832}18331834/** @name UpDataStructsCreateNftExData */1835export interface UpDataStructsCreateNftExData extends Struct {1836  readonly constData: Bytes;1837  readonly variableData: Bytes;1838  readonly owner: PalletEvmAccountBasicCrossAccountIdRepr;1839}18401841/** @name UpDataStructsCreateReFungibleData */1842export interface UpDataStructsCreateReFungibleData extends Struct {1843  readonly constData: Bytes;1844  readonly variableData: Bytes;1845  readonly pieces: u128;1846}18471848/** @name UpDataStructsCreateRefungibleExData */1849export interface UpDataStructsCreateRefungibleExData extends Struct {1850  readonly constData: Bytes;1851  readonly variableData: Bytes;1852  readonly users: BTreeMap<PalletEvmAccountBasicCrossAccountIdRepr, u128>;1853}18541855/** @name UpDataStructsMetaUpdatePermission */1856export interface UpDataStructsMetaUpdatePermission extends Enum {1857  readonly isItemOwner: boolean;1858  readonly isAdmin: boolean;1859  readonly isNone: boolean;1860  readonly type: 'ItemOwner' | 'Admin' | 'None';1861}18621863/** @name UpDataStructsSchemaVersion */1864export interface UpDataStructsSchemaVersion extends Enum {1865  readonly isImageURL: boolean;1866  readonly isUnique: boolean;1867  readonly type: 'ImageURL' | 'Unique';1868}18691870/** @name UpDataStructsSponsoringRateLimit */1871export interface UpDataStructsSponsoringRateLimit extends Enum {1872  readonly isSponsoringDisabled: boolean;1873  readonly isBlocks: boolean;1874  readonly asBlocks: u32;1875  readonly type: 'SponsoringDisabled' | 'Blocks';1876}18771878/** @name UpDataStructsSponsorshipState */1879export interface UpDataStructsSponsorshipState extends Enum {1880  readonly isDisabled: boolean;1881  readonly isUnconfirmed: boolean;1882  readonly asUnconfirmed: AccountId32;1883  readonly isConfirmed: boolean;1884  readonly asConfirmed: AccountId32;1885  readonly type: 'Disabled' | 'Unconfirmed' | 'Confirmed';1886}18871888/** @name XcmDoubleEncoded */1889export interface XcmDoubleEncoded extends Struct {1890  readonly encoded: Bytes;1891}18921893/** @name XcmV0Junction */1894export interface XcmV0Junction extends Enum {1895  readonly isParent: boolean;1896  readonly isParachain: boolean;1897  readonly asParachain: Compact<u32>;1898  readonly isAccountId32: boolean;1899  readonly asAccountId32: {1900    readonly network: XcmV0JunctionNetworkId;1901    readonly id: U8aFixed;1902  } & Struct;1903  readonly isAccountIndex64: boolean;1904  readonly asAccountIndex64: {1905    readonly network: XcmV0JunctionNetworkId;1906    readonly index: Compact<u64>;1907  } & Struct;1908  readonly isAccountKey20: boolean;1909  readonly asAccountKey20: {1910    readonly network: XcmV0JunctionNetworkId;1911    readonly key: U8aFixed;1912  } & Struct;1913  readonly isPalletInstance: boolean;1914  readonly asPalletInstance: u8;1915  readonly isGeneralIndex: boolean;1916  readonly asGeneralIndex: Compact<u128>;1917  readonly isGeneralKey: boolean;1918  readonly asGeneralKey: Bytes;1919  readonly isOnlyChild: boolean;1920  readonly isPlurality: boolean;1921  readonly asPlurality: {1922    readonly id: XcmV0JunctionBodyId;1923    readonly part: XcmV0JunctionBodyPart;1924  } & Struct;1925  readonly type: 'Parent' | 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';1926}19271928/** @name XcmV0JunctionBodyId */1929export interface XcmV0JunctionBodyId extends Enum {1930  readonly isUnit: boolean;1931  readonly isNamed: boolean;1932  readonly asNamed: Bytes;1933  readonly isIndex: boolean;1934  readonly asIndex: Compact<u32>;1935  readonly isExecutive: boolean;1936  readonly isTechnical: boolean;1937  readonly isLegislative: boolean;1938  readonly isJudicial: boolean;1939  readonly type: 'Unit' | 'Named' | 'Index' | 'Executive' | 'Technical' | 'Legislative' | 'Judicial';1940}19411942/** @name XcmV0JunctionBodyPart */1943export interface XcmV0JunctionBodyPart extends Enum {1944  readonly isVoice: boolean;1945  readonly isMembers: boolean;1946  readonly asMembers: {1947    readonly count: Compact<u32>;1948  } & Struct;1949  readonly isFraction: boolean;1950  readonly asFraction: {1951    readonly nom: Compact<u32>;1952    readonly denom: Compact<u32>;1953  } & Struct;1954  readonly isAtLeastProportion: boolean;1955  readonly asAtLeastProportion: {1956    readonly nom: Compact<u32>;1957    readonly denom: Compact<u32>;1958  } & Struct;1959  readonly isMoreThanProportion: boolean;1960  readonly asMoreThanProportion: {1961    readonly nom: Compact<u32>;1962    readonly denom: Compact<u32>;1963  } & Struct;1964  readonly type: 'Voice' | 'Members' | 'Fraction' | 'AtLeastProportion' | 'MoreThanProportion';1965}19661967/** @name XcmV0JunctionNetworkId */1968export interface XcmV0JunctionNetworkId extends Enum {1969  readonly isAny: boolean;1970  readonly isNamed: boolean;1971  readonly asNamed: Bytes;1972  readonly isPolkadot: boolean;1973  readonly isKusama: boolean;1974  readonly type: 'Any' | 'Named' | 'Polkadot' | 'Kusama';1975}19761977/** @name XcmV0MultiAsset */1978export interface XcmV0MultiAsset extends Enum {1979  readonly isNone: boolean;1980  readonly isAll: boolean;1981  readonly isAllFungible: boolean;1982  readonly isAllNonFungible: boolean;1983  readonly isAllAbstractFungible: boolean;1984  readonly asAllAbstractFungible: {1985    readonly id: Bytes;1986  } & Struct;1987  readonly isAllAbstractNonFungible: boolean;1988  readonly asAllAbstractNonFungible: {1989    readonly class: Bytes;1990  } & Struct;1991  readonly isAllConcreteFungible: boolean;1992  readonly asAllConcreteFungible: {1993    readonly id: XcmV0MultiLocation;1994  } & Struct;1995  readonly isAllConcreteNonFungible: boolean;1996  readonly asAllConcreteNonFungible: {1997    readonly class: XcmV0MultiLocation;1998  } & Struct;1999  readonly isAbstractFungible: boolean;2000  readonly asAbstractFungible: {2001    readonly id: Bytes;2002    readonly amount: Compact<u128>;2003  } & Struct;2004  readonly isAbstractNonFungible: boolean;2005  readonly asAbstractNonFungible: {2006    readonly class: Bytes;2007    readonly instance: XcmV1MultiassetAssetInstance;2008  } & Struct;2009  readonly isConcreteFungible: boolean;2010  readonly asConcreteFungible: {2011    readonly id: XcmV0MultiLocation;2012    readonly amount: Compact<u128>;2013  } & Struct;2014  readonly isConcreteNonFungible: boolean;2015  readonly asConcreteNonFungible: {2016    readonly class: XcmV0MultiLocation;2017    readonly instance: XcmV1MultiassetAssetInstance;2018  } & Struct;2019  readonly type: 'None' | 'All' | 'AllFungible' | 'AllNonFungible' | 'AllAbstractFungible' | 'AllAbstractNonFungible' | 'AllConcreteFungible' | 'AllConcreteNonFungible' | 'AbstractFungible' | 'AbstractNonFungible' | 'ConcreteFungible' | 'ConcreteNonFungible';2020}20212022/** @name XcmV0MultiLocation */2023export interface XcmV0MultiLocation extends Enum {2024  readonly isNull: boolean;2025  readonly isX1: boolean;2026  readonly asX1: XcmV0Junction;2027  readonly isX2: boolean;2028  readonly asX2: ITuple<[XcmV0Junction, XcmV0Junction]>;2029  readonly isX3: boolean;2030  readonly asX3: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2031  readonly isX4: boolean;2032  readonly asX4: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2033  readonly isX5: boolean;2034  readonly asX5: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2035  readonly isX6: boolean;2036  readonly asX6: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2037  readonly isX7: boolean;2038  readonly asX7: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2039  readonly isX8: boolean;2040  readonly asX8: ITuple<[XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction, XcmV0Junction]>;2041  readonly type: 'Null' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2042}20432044/** @name XcmV0Order */2045export interface XcmV0Order extends Enum {2046  readonly isNull: boolean;2047  readonly isDepositAsset: boolean;2048  readonly asDepositAsset: {2049    readonly assets: Vec<XcmV0MultiAsset>;2050    readonly dest: XcmV0MultiLocation;2051  } & Struct;2052  readonly isDepositReserveAsset: boolean;2053  readonly asDepositReserveAsset: {2054    readonly assets: Vec<XcmV0MultiAsset>;2055    readonly dest: XcmV0MultiLocation;2056    readonly effects: Vec<XcmV0Order>;2057  } & Struct;2058  readonly isExchangeAsset: boolean;2059  readonly asExchangeAsset: {2060    readonly give: Vec<XcmV0MultiAsset>;2061    readonly receive: Vec<XcmV0MultiAsset>;2062  } & Struct;2063  readonly isInitiateReserveWithdraw: boolean;2064  readonly asInitiateReserveWithdraw: {2065    readonly assets: Vec<XcmV0MultiAsset>;2066    readonly reserve: XcmV0MultiLocation;2067    readonly effects: Vec<XcmV0Order>;2068  } & Struct;2069  readonly isInitiateTeleport: boolean;2070  readonly asInitiateTeleport: {2071    readonly assets: Vec<XcmV0MultiAsset>;2072    readonly dest: XcmV0MultiLocation;2073    readonly effects: Vec<XcmV0Order>;2074  } & Struct;2075  readonly isQueryHolding: boolean;2076  readonly asQueryHolding: {2077    readonly queryId: Compact<u64>;2078    readonly dest: XcmV0MultiLocation;2079    readonly assets: Vec<XcmV0MultiAsset>;2080  } & Struct;2081  readonly isBuyExecution: boolean;2082  readonly asBuyExecution: {2083    readonly fees: XcmV0MultiAsset;2084    readonly weight: u64;2085    readonly debt: u64;2086    readonly haltOnError: bool;2087    readonly xcm: Vec<XcmV0Xcm>;2088  } & Struct;2089  readonly type: 'Null' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2090}20912092/** @name XcmV0OriginKind */2093export interface XcmV0OriginKind extends Enum {2094  readonly isNative: boolean;2095  readonly isSovereignAccount: boolean;2096  readonly isSuperuser: boolean;2097  readonly isXcm: boolean;2098  readonly type: 'Native' | 'SovereignAccount' | 'Superuser' | 'Xcm';2099}21002101/** @name XcmV0Response */2102export interface XcmV0Response extends Enum {2103  readonly isAssets: boolean;2104  readonly asAssets: Vec<XcmV0MultiAsset>;2105  readonly type: 'Assets';2106}21072108/** @name XcmV0Xcm */2109export interface XcmV0Xcm extends Enum {2110  readonly isWithdrawAsset: boolean;2111  readonly asWithdrawAsset: {2112    readonly assets: Vec<XcmV0MultiAsset>;2113    readonly effects: Vec<XcmV0Order>;2114  } & Struct;2115  readonly isReserveAssetDeposit: boolean;2116  readonly asReserveAssetDeposit: {2117    readonly assets: Vec<XcmV0MultiAsset>;2118    readonly effects: Vec<XcmV0Order>;2119  } & Struct;2120  readonly isTeleportAsset: boolean;2121  readonly asTeleportAsset: {2122    readonly assets: Vec<XcmV0MultiAsset>;2123    readonly effects: Vec<XcmV0Order>;2124  } & Struct;2125  readonly isQueryResponse: boolean;2126  readonly asQueryResponse: {2127    readonly queryId: Compact<u64>;2128    readonly response: XcmV0Response;2129  } & Struct;2130  readonly isTransferAsset: boolean;2131  readonly asTransferAsset: {2132    readonly assets: Vec<XcmV0MultiAsset>;2133    readonly dest: XcmV0MultiLocation;2134  } & Struct;2135  readonly isTransferReserveAsset: boolean;2136  readonly asTransferReserveAsset: {2137    readonly assets: Vec<XcmV0MultiAsset>;2138    readonly dest: XcmV0MultiLocation;2139    readonly effects: Vec<XcmV0Order>;2140  } & Struct;2141  readonly isTransact: boolean;2142  readonly asTransact: {2143    readonly originType: XcmV0OriginKind;2144    readonly requireWeightAtMost: u64;2145    readonly call: XcmDoubleEncoded;2146  } & Struct;2147  readonly isHrmpNewChannelOpenRequest: boolean;2148  readonly asHrmpNewChannelOpenRequest: {2149    readonly sender: Compact<u32>;2150    readonly maxMessageSize: Compact<u32>;2151    readonly maxCapacity: Compact<u32>;2152  } & Struct;2153  readonly isHrmpChannelAccepted: boolean;2154  readonly asHrmpChannelAccepted: {2155    readonly recipient: Compact<u32>;2156  } & Struct;2157  readonly isHrmpChannelClosing: boolean;2158  readonly asHrmpChannelClosing: {2159    readonly initiator: Compact<u32>;2160    readonly sender: Compact<u32>;2161    readonly recipient: Compact<u32>;2162  } & Struct;2163  readonly isRelayedFrom: boolean;2164  readonly asRelayedFrom: {2165    readonly who: XcmV0MultiLocation;2166    readonly message: XcmV0Xcm;2167  } & Struct;2168  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposit' | 'TeleportAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom';2169}21702171/** @name XcmV1Junction */2172export interface XcmV1Junction extends Enum {2173  readonly isParachain: boolean;2174  readonly asParachain: Compact<u32>;2175  readonly isAccountId32: boolean;2176  readonly asAccountId32: {2177    readonly network: XcmV0JunctionNetworkId;2178    readonly id: U8aFixed;2179  } & Struct;2180  readonly isAccountIndex64: boolean;2181  readonly asAccountIndex64: {2182    readonly network: XcmV0JunctionNetworkId;2183    readonly index: Compact<u64>;2184  } & Struct;2185  readonly isAccountKey20: boolean;2186  readonly asAccountKey20: {2187    readonly network: XcmV0JunctionNetworkId;2188    readonly key: U8aFixed;2189  } & Struct;2190  readonly isPalletInstance: boolean;2191  readonly asPalletInstance: u8;2192  readonly isGeneralIndex: boolean;2193  readonly asGeneralIndex: Compact<u128>;2194  readonly isGeneralKey: boolean;2195  readonly asGeneralKey: Bytes;2196  readonly isOnlyChild: boolean;2197  readonly isPlurality: boolean;2198  readonly asPlurality: {2199    readonly id: XcmV0JunctionBodyId;2200    readonly part: XcmV0JunctionBodyPart;2201  } & Struct;2202  readonly type: 'Parachain' | 'AccountId32' | 'AccountIndex64' | 'AccountKey20' | 'PalletInstance' | 'GeneralIndex' | 'GeneralKey' | 'OnlyChild' | 'Plurality';2203}22042205/** @name XcmV1MultiAsset */2206export interface XcmV1MultiAsset extends Struct {2207  readonly id: XcmV1MultiassetAssetId;2208  readonly fun: XcmV1MultiassetFungibility;2209}22102211/** @name XcmV1MultiassetAssetId */2212export interface XcmV1MultiassetAssetId extends Enum {2213  readonly isConcrete: boolean;2214  readonly asConcrete: XcmV1MultiLocation;2215  readonly isAbstract: boolean;2216  readonly asAbstract: Bytes;2217  readonly type: 'Concrete' | 'Abstract';2218}22192220/** @name XcmV1MultiassetAssetInstance */2221export interface XcmV1MultiassetAssetInstance extends Enum {2222  readonly isUndefined: boolean;2223  readonly isIndex: boolean;2224  readonly asIndex: Compact<u128>;2225  readonly isArray4: boolean;2226  readonly asArray4: U8aFixed;2227  readonly isArray8: boolean;2228  readonly asArray8: U8aFixed;2229  readonly isArray16: boolean;2230  readonly asArray16: U8aFixed;2231  readonly isArray32: boolean;2232  readonly asArray32: U8aFixed;2233  readonly isBlob: boolean;2234  readonly asBlob: Bytes;2235  readonly type: 'Undefined' | 'Index' | 'Array4' | 'Array8' | 'Array16' | 'Array32' | 'Blob';2236}22372238/** @name XcmV1MultiassetFungibility */2239export interface XcmV1MultiassetFungibility extends Enum {2240  readonly isFungible: boolean;2241  readonly asFungible: Compact<u128>;2242  readonly isNonFungible: boolean;2243  readonly asNonFungible: XcmV1MultiassetAssetInstance;2244  readonly type: 'Fungible' | 'NonFungible';2245}22462247/** @name XcmV1MultiassetMultiAssetFilter */2248export interface XcmV1MultiassetMultiAssetFilter extends Enum {2249  readonly isDefinite: boolean;2250  readonly asDefinite: XcmV1MultiassetMultiAssets;2251  readonly isWild: boolean;2252  readonly asWild: XcmV1MultiassetWildMultiAsset;2253  readonly type: 'Definite' | 'Wild';2254}22552256/** @name XcmV1MultiassetMultiAssets */2257export interface XcmV1MultiassetMultiAssets extends Vec<XcmV1MultiAsset> {}22582259/** @name XcmV1MultiassetWildFungibility */2260export interface XcmV1MultiassetWildFungibility extends Enum {2261  readonly isFungible: boolean;2262  readonly isNonFungible: boolean;2263  readonly type: 'Fungible' | 'NonFungible';2264}22652266/** @name XcmV1MultiassetWildMultiAsset */2267export interface XcmV1MultiassetWildMultiAsset extends Enum {2268  readonly isAll: boolean;2269  readonly isAllOf: boolean;2270  readonly asAllOf: {2271    readonly id: XcmV1MultiassetAssetId;2272    readonly fun: XcmV1MultiassetWildFungibility;2273  } & Struct;2274  readonly type: 'All' | 'AllOf';2275}22762277/** @name XcmV1MultiLocation */2278export interface XcmV1MultiLocation extends Struct {2279  readonly parents: u8;2280  readonly interior: XcmV1MultilocationJunctions;2281}22822283/** @name XcmV1MultilocationJunctions */2284export interface XcmV1MultilocationJunctions extends Enum {2285  readonly isHere: boolean;2286  readonly isX1: boolean;2287  readonly asX1: XcmV1Junction;2288  readonly isX2: boolean;2289  readonly asX2: ITuple<[XcmV1Junction, XcmV1Junction]>;2290  readonly isX3: boolean;2291  readonly asX3: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2292  readonly isX4: boolean;2293  readonly asX4: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2294  readonly isX5: boolean;2295  readonly asX5: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2296  readonly isX6: boolean;2297  readonly asX6: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2298  readonly isX7: boolean;2299  readonly asX7: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2300  readonly isX8: boolean;2301  readonly asX8: ITuple<[XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction, XcmV1Junction]>;2302  readonly type: 'Here' | 'X1' | 'X2' | 'X3' | 'X4' | 'X5' | 'X6' | 'X7' | 'X8';2303}23042305/** @name XcmV1Order */2306export interface XcmV1Order extends Enum {2307  readonly isNoop: boolean;2308  readonly isDepositAsset: boolean;2309  readonly asDepositAsset: {2310    readonly assets: XcmV1MultiassetMultiAssetFilter;2311    readonly maxAssets: u32;2312    readonly beneficiary: XcmV1MultiLocation;2313  } & Struct;2314  readonly isDepositReserveAsset: boolean;2315  readonly asDepositReserveAsset: {2316    readonly assets: XcmV1MultiassetMultiAssetFilter;2317    readonly maxAssets: u32;2318    readonly dest: XcmV1MultiLocation;2319    readonly effects: Vec<XcmV1Order>;2320  } & Struct;2321  readonly isExchangeAsset: boolean;2322  readonly asExchangeAsset: {2323    readonly give: XcmV1MultiassetMultiAssetFilter;2324    readonly receive: XcmV1MultiassetMultiAssets;2325  } & Struct;2326  readonly isInitiateReserveWithdraw: boolean;2327  readonly asInitiateReserveWithdraw: {2328    readonly assets: XcmV1MultiassetMultiAssetFilter;2329    readonly reserve: XcmV1MultiLocation;2330    readonly effects: Vec<XcmV1Order>;2331  } & Struct;2332  readonly isInitiateTeleport: boolean;2333  readonly asInitiateTeleport: {2334    readonly assets: XcmV1MultiassetMultiAssetFilter;2335    readonly dest: XcmV1MultiLocation;2336    readonly effects: Vec<XcmV1Order>;2337  } & Struct;2338  readonly isQueryHolding: boolean;2339  readonly asQueryHolding: {2340    readonly queryId: Compact<u64>;2341    readonly dest: XcmV1MultiLocation;2342    readonly assets: XcmV1MultiassetMultiAssetFilter;2343  } & Struct;2344  readonly isBuyExecution: boolean;2345  readonly asBuyExecution: {2346    readonly fees: XcmV1MultiAsset;2347    readonly weight: u64;2348    readonly debt: u64;2349    readonly haltOnError: bool;2350    readonly instructions: Vec<XcmV1Xcm>;2351  } & Struct;2352  readonly type: 'Noop' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution';2353}23542355/** @name XcmV1Response */2356export interface XcmV1Response extends Enum {2357  readonly isAssets: boolean;2358  readonly asAssets: XcmV1MultiassetMultiAssets;2359  readonly isVersion: boolean;2360  readonly asVersion: u32;2361  readonly type: 'Assets' | 'Version';2362}23632364/** @name XcmV1Xcm */2365export interface XcmV1Xcm extends Enum {2366  readonly isWithdrawAsset: boolean;2367  readonly asWithdrawAsset: {2368    readonly assets: XcmV1MultiassetMultiAssets;2369    readonly effects: Vec<XcmV1Order>;2370  } & Struct;2371  readonly isReserveAssetDeposited: boolean;2372  readonly asReserveAssetDeposited: {2373    readonly assets: XcmV1MultiassetMultiAssets;2374    readonly effects: Vec<XcmV1Order>;2375  } & Struct;2376  readonly isReceiveTeleportedAsset: boolean;2377  readonly asReceiveTeleportedAsset: {2378    readonly assets: XcmV1MultiassetMultiAssets;2379    readonly effects: Vec<XcmV1Order>;2380  } & Struct;2381  readonly isQueryResponse: boolean;2382  readonly asQueryResponse: {2383    readonly queryId: Compact<u64>;2384    readonly response: XcmV1Response;2385  } & Struct;2386  readonly isTransferAsset: boolean;2387  readonly asTransferAsset: {2388    readonly assets: XcmV1MultiassetMultiAssets;2389    readonly beneficiary: XcmV1MultiLocation;2390  } & Struct;2391  readonly isTransferReserveAsset: boolean;2392  readonly asTransferReserveAsset: {2393    readonly assets: XcmV1MultiassetMultiAssets;2394    readonly dest: XcmV1MultiLocation;2395    readonly effects: Vec<XcmV1Order>;2396  } & Struct;2397  readonly isTransact: boolean;2398  readonly asTransact: {2399    readonly originType: XcmV0OriginKind;2400    readonly requireWeightAtMost: u64;2401    readonly call: XcmDoubleEncoded;2402  } & Struct;2403  readonly isHrmpNewChannelOpenRequest: boolean;2404  readonly asHrmpNewChannelOpenRequest: {2405    readonly sender: Compact<u32>;2406    readonly maxMessageSize: Compact<u32>;2407    readonly maxCapacity: Compact<u32>;2408  } & Struct;2409  readonly isHrmpChannelAccepted: boolean;2410  readonly asHrmpChannelAccepted: {2411    readonly recipient: Compact<u32>;2412  } & Struct;2413  readonly isHrmpChannelClosing: boolean;2414  readonly asHrmpChannelClosing: {2415    readonly initiator: Compact<u32>;2416    readonly sender: Compact<u32>;2417    readonly recipient: Compact<u32>;2418  } & Struct;2419  readonly isRelayedFrom: boolean;2420  readonly asRelayedFrom: {2421    readonly who: XcmV1MultilocationJunctions;2422    readonly message: XcmV1Xcm;2423  } & Struct;2424  readonly isSubscribeVersion: boolean;2425  readonly asSubscribeVersion: {2426    readonly queryId: Compact<u64>;2427    readonly maxResponseWeight: Compact<u64>;2428  } & Struct;2429  readonly isUnsubscribeVersion: boolean;2430  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'RelayedFrom' | 'SubscribeVersion' | 'UnsubscribeVersion';2431}24322433/** @name XcmV2Instruction */2434export interface XcmV2Instruction extends Enum {2435  readonly isWithdrawAsset: boolean;2436  readonly asWithdrawAsset: XcmV1MultiassetMultiAssets;2437  readonly isReserveAssetDeposited: boolean;2438  readonly asReserveAssetDeposited: XcmV1MultiassetMultiAssets;2439  readonly isReceiveTeleportedAsset: boolean;2440  readonly asReceiveTeleportedAsset: XcmV1MultiassetMultiAssets;2441  readonly isQueryResponse: boolean;2442  readonly asQueryResponse: {2443    readonly queryId: Compact<u64>;2444    readonly response: XcmV2Response;2445    readonly maxWeight: Compact<u64>;2446  } & Struct;2447  readonly isTransferAsset: boolean;2448  readonly asTransferAsset: {2449    readonly assets: XcmV1MultiassetMultiAssets;2450    readonly beneficiary: XcmV1MultiLocation;2451  } & Struct;2452  readonly isTransferReserveAsset: boolean;2453  readonly asTransferReserveAsset: {2454    readonly assets: XcmV1MultiassetMultiAssets;2455    readonly dest: XcmV1MultiLocation;2456    readonly xcm: XcmV2Xcm;2457  } & Struct;2458  readonly isTransact: boolean;2459  readonly asTransact: {2460    readonly originType: XcmV0OriginKind;2461    readonly requireWeightAtMost: Compact<u64>;2462    readonly call: XcmDoubleEncoded;2463  } & Struct;2464  readonly isHrmpNewChannelOpenRequest: boolean;2465  readonly asHrmpNewChannelOpenRequest: {2466    readonly sender: Compact<u32>;2467    readonly maxMessageSize: Compact<u32>;2468    readonly maxCapacity: Compact<u32>;2469  } & Struct;2470  readonly isHrmpChannelAccepted: boolean;2471  readonly asHrmpChannelAccepted: {2472    readonly recipient: Compact<u32>;2473  } & Struct;2474  readonly isHrmpChannelClosing: boolean;2475  readonly asHrmpChannelClosing: {2476    readonly initiator: Compact<u32>;2477    readonly sender: Compact<u32>;2478    readonly recipient: Compact<u32>;2479  } & Struct;2480  readonly isClearOrigin: boolean;2481  readonly isDescendOrigin: boolean;2482  readonly asDescendOrigin: XcmV1MultilocationJunctions;2483  readonly isReportError: boolean;2484  readonly asReportError: {2485    readonly queryId: Compact<u64>;2486    readonly dest: XcmV1MultiLocation;2487    readonly maxResponseWeight: Compact<u64>;2488  } & Struct;2489  readonly isDepositAsset: boolean;2490  readonly asDepositAsset: {2491    readonly assets: XcmV1MultiassetMultiAssetFilter;2492    readonly maxAssets: Compact<u32>;2493    readonly beneficiary: XcmV1MultiLocation;2494  } & Struct;2495  readonly isDepositReserveAsset: boolean;2496  readonly asDepositReserveAsset: {2497    readonly assets: XcmV1MultiassetMultiAssetFilter;2498    readonly maxAssets: Compact<u32>;2499    readonly dest: XcmV1MultiLocation;2500    readonly xcm: XcmV2Xcm;2501  } & Struct;2502  readonly isExchangeAsset: boolean;2503  readonly asExchangeAsset: {2504    readonly give: XcmV1MultiassetMultiAssetFilter;2505    readonly receive: XcmV1MultiassetMultiAssets;2506  } & Struct;2507  readonly isInitiateReserveWithdraw: boolean;2508  readonly asInitiateReserveWithdraw: {2509    readonly assets: XcmV1MultiassetMultiAssetFilter;2510    readonly reserve: XcmV1MultiLocation;2511    readonly xcm: XcmV2Xcm;2512  } & Struct;2513  readonly isInitiateTeleport: boolean;2514  readonly asInitiateTeleport: {2515    readonly assets: XcmV1MultiassetMultiAssetFilter;2516    readonly dest: XcmV1MultiLocation;2517    readonly xcm: XcmV2Xcm;2518  } & Struct;2519  readonly isQueryHolding: boolean;2520  readonly asQueryHolding: {2521    readonly queryId: Compact<u64>;2522    readonly dest: XcmV1MultiLocation;2523    readonly assets: XcmV1MultiassetMultiAssetFilter;2524    readonly maxResponseWeight: Compact<u64>;2525  } & Struct;2526  readonly isBuyExecution: boolean;2527  readonly asBuyExecution: {2528    readonly fees: XcmV1MultiAsset;2529    readonly weightLimit: XcmV2WeightLimit;2530  } & Struct;2531  readonly isRefundSurplus: boolean;2532  readonly isSetErrorHandler: boolean;2533  readonly asSetErrorHandler: XcmV2Xcm;2534  readonly isSetAppendix: boolean;2535  readonly asSetAppendix: XcmV2Xcm;2536  readonly isClearError: boolean;2537  readonly isClaimAsset: boolean;2538  readonly asClaimAsset: {2539    readonly assets: XcmV1MultiassetMultiAssets;2540    readonly ticket: XcmV1MultiLocation;2541  } & Struct;2542  readonly isTrap: boolean;2543  readonly asTrap: Compact<u64>;2544  readonly isSubscribeVersion: boolean;2545  readonly asSubscribeVersion: {2546    readonly queryId: Compact<u64>;2547    readonly maxResponseWeight: Compact<u64>;2548  } & Struct;2549  readonly isUnsubscribeVersion: boolean;2550  readonly type: 'WithdrawAsset' | 'ReserveAssetDeposited' | 'ReceiveTeleportedAsset' | 'QueryResponse' | 'TransferAsset' | 'TransferReserveAsset' | 'Transact' | 'HrmpNewChannelOpenRequest' | 'HrmpChannelAccepted' | 'HrmpChannelClosing' | 'ClearOrigin' | 'DescendOrigin' | 'ReportError' | 'DepositAsset' | 'DepositReserveAsset' | 'ExchangeAsset' | 'InitiateReserveWithdraw' | 'InitiateTeleport' | 'QueryHolding' | 'BuyExecution' | 'RefundSurplus' | 'SetErrorHandler' | 'SetAppendix' | 'ClearError' | 'ClaimAsset' | 'Trap' | 'SubscribeVersion' | 'UnsubscribeVersion';2551}25522553/** @name XcmV2Response */2554export interface XcmV2Response extends Enum {2555  readonly isNull: boolean;2556  readonly isAssets: boolean;2557  readonly asAssets: XcmV1MultiassetMultiAssets;2558  readonly isExecutionResult: boolean;2559  readonly asExecutionResult: Option<ITuple<[u32, XcmV2TraitsError]>>;2560  readonly isVersion: boolean;2561  readonly asVersion: u32;2562  readonly type: 'Null' | 'Assets' | 'ExecutionResult' | 'Version';2563}25642565/** @name XcmV2TraitsError */2566export interface XcmV2TraitsError extends Enum {2567  readonly isOverflow: boolean;2568  readonly isUnimplemented: boolean;2569  readonly isUntrustedReserveLocation: boolean;2570  readonly isUntrustedTeleportLocation: boolean;2571  readonly isMultiLocationFull: boolean;2572  readonly isMultiLocationNotInvertible: boolean;2573  readonly isBadOrigin: boolean;2574  readonly isInvalidLocation: boolean;2575  readonly isAssetNotFound: boolean;2576  readonly isFailedToTransactAsset: boolean;2577  readonly isNotWithdrawable: boolean;2578  readonly isLocationCannotHold: boolean;2579  readonly isExceedsMaxMessageSize: boolean;2580  readonly isDestinationUnsupported: boolean;2581  readonly isTransport: boolean;2582  readonly isUnroutable: boolean;2583  readonly isUnknownClaim: boolean;2584  readonly isFailedToDecode: boolean;2585  readonly isMaxWeightInvalid: boolean;2586  readonly isNotHoldingFees: boolean;2587  readonly isTooExpensive: boolean;2588  readonly isTrap: boolean;2589  readonly asTrap: u64;2590  readonly isUnhandledXcmVersion: boolean;2591  readonly isWeightLimitReached: boolean;2592  readonly asWeightLimitReached: u64;2593  readonly isBarrier: boolean;2594  readonly isWeightNotComputable: boolean;2595  readonly type: 'Overflow' | 'Unimplemented' | 'UntrustedReserveLocation' | 'UntrustedTeleportLocation' | 'MultiLocationFull' | 'MultiLocationNotInvertible' | 'BadOrigin' | 'InvalidLocation' | 'AssetNotFound' | 'FailedToTransactAsset' | 'NotWithdrawable' | 'LocationCannotHold' | 'ExceedsMaxMessageSize' | 'DestinationUnsupported' | 'Transport' | 'Unroutable' | 'UnknownClaim' | 'FailedToDecode' | 'MaxWeightInvalid' | 'NotHoldingFees' | 'TooExpensive' | 'Trap' | 'UnhandledXcmVersion' | 'WeightLimitReached' | 'Barrier' | 'WeightNotComputable';2596}25972598/** @name XcmV2TraitsOutcome */2599export interface XcmV2TraitsOutcome extends Enum {2600  readonly isComplete: boolean;2601  readonly asComplete: u64;2602  readonly isIncomplete: boolean;2603  readonly asIncomplete: ITuple<[u64, XcmV2TraitsError]>;2604  readonly isError: boolean;2605  readonly asError: XcmV2TraitsError;2606  readonly type: 'Complete' | 'Incomplete' | 'Error';2607}26082609/** @name XcmV2WeightLimit */2610export interface XcmV2WeightLimit extends Enum {2611  readonly isUnlimited: boolean;2612  readonly isLimited: boolean;2613  readonly asLimited: Compact<u64>;2614  readonly type: 'Unlimited' | 'Limited';2615}26162617/** @name XcmV2Xcm */2618export interface XcmV2Xcm extends Vec<XcmV2Instruction> {}26192620/** @name XcmVersionedMultiAssets */2621export interface XcmVersionedMultiAssets extends Enum {2622  readonly isV0: boolean;2623  readonly asV0: Vec<XcmV0MultiAsset>;2624  readonly isV1: boolean;2625  readonly asV1: XcmV1MultiassetMultiAssets;2626  readonly type: 'V0' | 'V1';2627}26282629/** @name XcmVersionedMultiLocation */2630export interface XcmVersionedMultiLocation extends Enum {2631  readonly isV0: boolean;2632  readonly asV0: XcmV0MultiLocation;2633  readonly isV1: boolean;2634  readonly asV1: XcmV1MultiLocation;2635  readonly type: 'V0' | 'V1';2636}26372638/** @name XcmVersionedXcm */2639export interface XcmVersionedXcm extends Enum {2640  readonly isV0: boolean;2641  readonly asV0: XcmV0Xcm;2642  readonly isV1: boolean;2643  readonly asV1: XcmV1Xcm;2644  readonly isV2: boolean;2645  readonly asV2: XcmV2Xcm;2646  readonly type: 'V0' | 'V1' | 'V2';2647}26482649export type PHANTOM_UNIQUE = 'unique';
modifiedtests/src/limits.test.tsdiffbeforeafterboth
--- a/tests/src/limits.test.ts
+++ b/tests/src/limits.test.ts
@@ -395,4 +395,73 @@
     expect(aliceBalanceAfterSponsoredTransaction1 < aliceBalanceBefore).to.be.true;
     //expect(aliceBalanceAfterSponsoredTransaction1).to.be.lessThan(aliceBalanceBefore);
   });
+  
+  it('Effective collection limits', async () => {
+    await usingApi(async (api) => {
+      const collectionId = await createCollectionExpectSuccess({mode: {type: 'NFT'}});
+      
+      { // Check that limits is undefined
+        const collection = await api.rpc.unique.collectionById(collectionId);
+        expect(collection.isSome).to.be.true;
+        const limits = collection.unwrap().limits;
+        expect(limits).to.be.any;
+        
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.null;
+        expect(limits.sponsoredDataSize.toHuman()).to.be.null;
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.null;
+        expect(limits.tokenLimit.toHuman()).to.be.null;
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.null;
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.null;
+        expect(limits.ownerCanTransfer.toHuman()).to.be.null;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.null;
+        expect(limits.transfersEnabled.toHuman()).to.be.null;
+      }
+  
+      { // Check that limits is undefined for non-existent collection
+        const limits = await api.rpc.unique.effectiveCollectionLimits(11111);
+        expect(limits.toHuman()).to.be.null;
+      }
+  
+      { // Check that default values defined for collection limits
+        const limitsOpt = await api.rpc.unique.effectiveCollectionLimits(collectionId);
+        expect(limitsOpt.isNone).to.be.false;
+        const limits = limitsOpt.unwrap();
+  
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.eq('100,000');
+        expect(limits.sponsoredDataSize.toHuman()).to.be.eq('2,048');
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.eq('SponsoringDisabled');
+        expect(limits.tokenLimit.toHuman()).to.be.eq('4,294,967,295');
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.eq('5');
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.eq('5');
+        expect(limits.ownerCanTransfer.toHuman()).to.be.true;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.true;
+        expect(limits.transfersEnabled.toHuman()).to.be.true;
+      }
+
+      { //Check the values for collection limits
+        await setCollectionLimitsExpectSuccess(alice, collectionId, {
+          accountTokenOwnershipLimit: 99_999,
+          sponsoredDataSize: 1024,
+          tokenLimit: 123,
+          transfersEnabled: false,
+        });
+
+        const limitsOpt = await api.rpc.unique.effectiveCollectionLimits(collectionId);
+        expect(limitsOpt.isNone).to.be.false;
+        const limits = limitsOpt.unwrap();
+  
+        expect(limits.accountTokenOwnershipLimit.toHuman()).to.be.eq('99,999');
+        expect(limits.sponsoredDataSize.toHuman()).to.be.eq('1,024');
+        expect(limits.sponsoredDataRateLimit.toHuman()).to.be.eq('SponsoringDisabled');
+        expect(limits.tokenLimit.toHuman()).to.be.eq('123');
+        expect(limits.sponsorTransferTimeout.toHuman()).to.be.eq('5');
+        expect(limits.sponsorApproveTimeout.toHuman()).to.be.eq('5');
+        expect(limits.ownerCanTransfer.toHuman()).to.be.true;
+        expect(limits.ownerCanDestroy.toHuman()).to.be.true;
+        expect(limits.transfersEnabled.toHuman()).to.be.false;
+      }
+    });
+  });
 });
+
+
modifiedtests/src/util/helpers.tsdiffbeforeafterboth
--- a/tests/src/util/helpers.ts
+++ b/tests/src/util/helpers.ts
@@ -344,15 +344,12 @@
     // Run the CreateCollection transaction
     const alicePrivateKey = privateKey('//Alice');
     const tx = api.tx.unique.createCollectionEx({name: strToUTF16(name), description: strToUTF16(description), tokenPrefix: strToUTF16(tokenPrefix), mode: modeprm as any});
-    const events = await expect(submitTransactionExpectFailAsync(alicePrivateKey, tx)).to.be.rejected;
-    const result = getCreateCollectionResult(events);
+    await expect(submitTransactionExpectFailAsync(alicePrivateKey, tx)).to.be.rejected;
 
     // Get number of collections after the transaction
     const collectionCountAfter = await getCreatedCollectionCount(api);
 
     // What to expect
-    // tslint:disable-next-line:no-unused-expression
-    expect(result.success).to.be.false;
     expect(collectionCountAfter).to.be.equal(collectionCountBefore, 'Error: Collection with incorrect data created.');
   });
 }
@@ -839,6 +836,13 @@
   return balance;
 }
 
+export async function transferBalanceTo(api: ApiPromise, source: IKeyringPair, target: string, amount = 1000n * UNIQUE) {
+  const tx = api.tx.balances.transfer(target, amount);
+  const events = await submitTransactionAsync(source, tx);
+  const result = getGenericResult(events);
+  expect(result.success).to.be.true;
+}
+
 export async function
 scheduleTransferExpectSuccess(
   collectionId: number,