1234567891011121314151617use frame_support::parameter_types;18use sp_runtime::traits::AccountIdConversion;19use crate::{20 runtime_common::{21 constants::*,22 dispatch::CollectionDispatchT,23 config::{substrate::TreasuryModuleId, ethereum::EvmCollectionHelpersAddress},24 weights::CommonWeights,25 RelayChainBlockNumberProvider,26 },27 Runtime, Event, Call, Balances,28};29use common_types::{AccountId, Balance, BlockNumber};30use up_data_structs::{31 mapping::{EvmTokenAddressMapping, CrossTokenAddressMapping},32};3334#[cfg(feature = "rmrk")]35pub mod rmrk;3637#[cfg(feature = "scheduler")]38pub mod scheduler;3940parameter_types! {41 pub TreasuryAccountId: AccountId = TreasuryModuleId::get().into_account_truncating();42 pub const CollectionCreationPrice: Balance = 2 * UNIQUE;43}4445impl pallet_common::Config for Runtime {46 type WeightInfo = pallet_common::weights::SubstrateWeight<Self>;47 type Event = Event;48 type Currency = Balances;49 type CollectionCreationPrice = CollectionCreationPrice;50 type TreasuryAccountId = TreasuryAccountId;51 type CollectionDispatch = CollectionDispatchT<Self>;5253 type EvmTokenAddressMapping = EvmTokenAddressMapping;54 type CrossTokenAddressMapping = CrossTokenAddressMapping<Self::AccountId>;55 type ContractAddress = EvmCollectionHelpersAddress;56}5758impl pallet_structure::Config for Runtime {59 type Event = Event;60 type Call = Call;61 type WeightInfo = pallet_structure::weights::SubstrateWeight<Self>;62}6364impl pallet_fungible::Config for Runtime {65 type WeightInfo = pallet_fungible::weights::SubstrateWeight<Self>;66}67impl pallet_refungible::Config for Runtime {68 type WeightInfo = pallet_refungible::weights::SubstrateWeight<Self>;69}70impl pallet_nonfungible::Config for Runtime {71 type WeightInfo = pallet_nonfungible::weights::SubstrateWeight<Self>;72}7374parameter_types! {75 pub const InflationBlockInterval: BlockNumber = 100; 76}777879impl pallet_inflation::Config for Runtime {80 type Currency = Balances;81 type TreasuryAccountId = TreasuryAccountId;82 type InflationBlockInterval = InflationBlockInterval;83 type BlockNumberProvider = RelayChainBlockNumberProvider<Runtime>;84}8586impl pallet_unique::Config for Runtime {87 type Event = Event;88 type WeightInfo = pallet_unique::weights::SubstrateWeight<Self>;89 type CommonWeightInfo = CommonWeights<Self>;90 type RefungibleExtensionsWeightInfo = CommonWeights<Self>;91}