Trait pallet_nft_fractionalization::pallet::Config
source · pub trait Config: Config {
Show 16 associated items
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
type Currency: InspectFungible<Self::AccountId> + MutateFungible<Self::AccountId> + HoldMutateFungible<Self::AccountId, Reason = Self::RuntimeHoldReason>;
type RuntimeHoldReason: From<HoldReason>;
type Deposit: Get<DepositOf<Self>>;
type NftCollectionId: Member + Parameter + MaxEncodedLen + Copy + Display;
type NftId: Member + Parameter + MaxEncodedLen + Copy + Display;
type AssetBalance: AssetBalance;
type AssetId: AssetId;
type Assets: Inspect<Self::AccountId, AssetId = Self::AssetId, Balance = Self::AssetBalance> + Create<Self::AccountId> + Destroy<Self::AccountId> + Mutate<Self::AccountId> + MutateMetadata<Self::AccountId> + MetadataDeposit<DepositOf<Self>>;
type Nfts: NonFungiblesInspect<Self::AccountId, ItemId = Self::NftId, CollectionId = Self::NftCollectionId> + Transfer<Self::AccountId>;
type PalletId: Get<PalletId>;
type NewAssetSymbol: Get<BoundedVec<u8, Self::StringLimit>>;
type NewAssetName: Get<BoundedVec<u8, Self::StringLimit>>;
type StringLimit: Get<u32>;
type BenchmarkHelper: BenchmarkHelper<Self::AssetId, Self::NftCollectionId, Self::NftId>;
type WeightInfo: WeightInfo;
}
Expand description
Configuration trait of this pallet.
The main purpose of this trait is to act as an interface between this pallet and the runtime in which it is embedded in. A type, function, or constant in this trait is essentially left to be configured by the runtime that includes this pallet.
Consequently, a runtime that wants to include this pallet must implement this trait.
Required Associated Types§
sourcetype RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
The overarching event type.
sourcetype Currency: InspectFungible<Self::AccountId> + MutateFungible<Self::AccountId> + HoldMutateFungible<Self::AccountId, Reason = Self::RuntimeHoldReason>
type Currency: InspectFungible<Self::AccountId> + MutateFungible<Self::AccountId> + HoldMutateFungible<Self::AccountId, Reason = Self::RuntimeHoldReason>
The currency mechanism, used for paying for deposits.
sourcetype RuntimeHoldReason: From<HoldReason>
type RuntimeHoldReason: From<HoldReason>
Overarching hold reason.
sourcetype Deposit: Get<DepositOf<Self>>
type Deposit: Get<DepositOf<Self>>
The deposit paid by the user locking an NFT. The deposit is returned to the original NFT owner when the asset is unified and the NFT is unlocked.
sourcetype NftCollectionId: Member + Parameter + MaxEncodedLen + Copy + Display
type NftCollectionId: Member + Parameter + MaxEncodedLen + Copy + Display
Identifier for the collection of NFT.
sourcetype NftId: Member + Parameter + MaxEncodedLen + Copy + Display
type NftId: Member + Parameter + MaxEncodedLen + Copy + Display
The type used to identify an NFT within a collection.
sourcetype AssetBalance: AssetBalance
type AssetBalance: AssetBalance
The type used to describe the amount of fractions converted into assets.
sourcetype Assets: Inspect<Self::AccountId, AssetId = Self::AssetId, Balance = Self::AssetBalance> + Create<Self::AccountId> + Destroy<Self::AccountId> + Mutate<Self::AccountId> + MutateMetadata<Self::AccountId> + MetadataDeposit<DepositOf<Self>>
type Assets: Inspect<Self::AccountId, AssetId = Self::AssetId, Balance = Self::AssetBalance> + Create<Self::AccountId> + Destroy<Self::AccountId> + Mutate<Self::AccountId> + MutateMetadata<Self::AccountId> + MetadataDeposit<DepositOf<Self>>
Registry for the minted assets.
sourcetype Nfts: NonFungiblesInspect<Self::AccountId, ItemId = Self::NftId, CollectionId = Self::NftCollectionId> + Transfer<Self::AccountId>
type Nfts: NonFungiblesInspect<Self::AccountId, ItemId = Self::NftId, CollectionId = Self::NftCollectionId> + Transfer<Self::AccountId>
Registry for minted NFTs.
sourcetype NewAssetSymbol: Get<BoundedVec<u8, Self::StringLimit>>
type NewAssetSymbol: Get<BoundedVec<u8, Self::StringLimit>>
The newly created asset’s symbol.
sourcetype NewAssetName: Get<BoundedVec<u8, Self::StringLimit>>
type NewAssetName: Get<BoundedVec<u8, Self::StringLimit>>
The newly created asset’s name.
sourcetype StringLimit: Get<u32>
type StringLimit: Get<u32>
The maximum length of a name or symbol stored on-chain.
sourcetype BenchmarkHelper: BenchmarkHelper<Self::AssetId, Self::NftCollectionId, Self::NftId>
type BenchmarkHelper: BenchmarkHelper<Self::AssetId, Self::NftCollectionId, Self::NftId>
A set of helper functions for benchmarking.
sourcetype WeightInfo: WeightInfo
type WeightInfo: WeightInfo
Weight information for extrinsics in this pallet.