pub trait Config<I: 'static = ()>: Config {
Show 25 associated items type RuntimeEvent: From<Event<Self, I>> + IsType<<Self as Config>::RuntimeEvent>; type CollectionId: Member + Parameter + MaxEncodedLen + Copy + Incrementable; type ItemId: Member + Parameter + MaxEncodedLen + Copy; type Currency: ReservableCurrency<Self::AccountId>; type ForceOrigin: EnsureOrigin<Self::RuntimeOrigin>; type CreateOrigin: EnsureOriginWithArg<Self::RuntimeOrigin, Self::CollectionId, Success = Self::AccountId>; type Locker: Locker<Self::CollectionId, Self::ItemId>; type CollectionDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>; type ItemDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>; type MetadataDepositBase: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>; type AttributeDepositBase: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>; type DepositPerByte: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>; type StringLimit: Get<u32>; type KeyLimit: Get<u32>; type ValueLimit: Get<u32>; type ApprovalsLimit: Get<u32>; type ItemAttributesApprovalsLimit: Get<u32>; type MaxTips: Get<u32>; type MaxDeadlineDuration: Get<BlockNumberFor<Self>>; type MaxAttributesPerCall: Get<u32>; type Features: Get<PalletFeatures>; type OffchainSignature: Verify<Signer = Self::OffchainPublic> + Parameter; type OffchainPublic: IdentifyAccount<AccountId = Self::AccountId>; type Helper: BenchmarkHelper<Self::CollectionId, Self::ItemId>; 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. The module configuration trait.

Required Associated Types§

source

type RuntimeEvent: From<Event<Self, I>> + IsType<<Self as Config>::RuntimeEvent>

The overarching event type.

source

type CollectionId: Member + Parameter + MaxEncodedLen + Copy + Incrementable

Identifier for the collection of item.

SAFETY: The functions in the Incrementable trait are fallible. If the functions of the implementation both return None, the automatic CollectionId generation should not be used. So the create and force_create extrinsics and the create_collection function will return an UnknownCollection Error. Instead use the create_collection_with_id function. However, if the Incrementable trait implementation has an incremental order, the create_collection_with_id function should not be used as it can claim a value in the ID sequence.

source

type ItemId: Member + Parameter + MaxEncodedLen + Copy

The type used to identify a unique item within a collection.

source

type Currency: ReservableCurrency<Self::AccountId>

The currency mechanism, used for paying for reserves.

source

type ForceOrigin: EnsureOrigin<Self::RuntimeOrigin>

The origin which may forcibly create or destroy an item or otherwise alter privileged attributes.

source

type CreateOrigin: EnsureOriginWithArg<Self::RuntimeOrigin, Self::CollectionId, Success = Self::AccountId>

Standard collection creation is only allowed if the origin attempting it and the collection are in this set.

source

type Locker: Locker<Self::CollectionId, Self::ItemId>

Locker trait to enable Locking mechanism downstream.

source

type CollectionDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>

The basic amount of funds that must be reserved for collection.

source

type ItemDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>

The basic amount of funds that must be reserved for an item.

source

type MetadataDepositBase: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>

The basic amount of funds that must be reserved when adding metadata to your item.

source

type AttributeDepositBase: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>

The basic amount of funds that must be reserved when adding an attribute to an item.

source

type DepositPerByte: Get<<<Self as Config<I>>::Currency as Currency<<Self as SystemConfig>::AccountId>>::Balance>

The additional funds that must be reserved for the number of bytes store in metadata, either “normal” metadata or attribute metadata.

source

type StringLimit: Get<u32>

The maximum length of data stored on-chain.

source

type KeyLimit: Get<u32>

The maximum length of an attribute key.

source

type ValueLimit: Get<u32>

The maximum length of an attribute value.

source

type ApprovalsLimit: Get<u32>

The maximum approvals an item could have.

source

type ItemAttributesApprovalsLimit: Get<u32>

The maximum attributes approvals an item could have.

source

type MaxTips: Get<u32>

The max number of tips a user could send.

source

type MaxDeadlineDuration: Get<BlockNumberFor<Self>>

The max duration in blocks for deadlines.

source

type MaxAttributesPerCall: Get<u32>

The max number of attributes a user could set per call.

source

type Features: Get<PalletFeatures>

Disables some of pallet’s features.

source

type OffchainSignature: Verify<Signer = Self::OffchainPublic> + Parameter

Off-Chain signature type.

Can verify whether an Self::OffchainPublic created a signature.

source

type OffchainPublic: IdentifyAccount<AccountId = Self::AccountId>

Off-Chain public key.

Must identify as an on-chain Self::AccountId.

source

type Helper: BenchmarkHelper<Self::CollectionId, Self::ItemId>

A set of helper functions for benchmarking.

source

type WeightInfo: WeightInfo

Weight information for extrinsics in this pallet.

Implementors§