An Extension is a smart contract linked to a single Items Collection. Each Extension is cloned by the Extension Factory, guaranteeing its validity and integrity.
The Items protocol is designed in such a way that the host of an Items Collection can't interact directly with the Core (Main Interface) to perform its host operations (such as create a Collection, mint Items, change Metadata etc..) but he must interact with the Extension hosting the Collection which in turn interacts with the Core.
Every Collection has the MultiOperatorHost Extension as host. It allows for the creation of a granular permission system for the Collection.
Every Collection can have the Native Extension as host. It allows for the creation of a granular permission system for the Collection with a finalization system.
The Extension Factory allows you to create a Collection and also clone the MultiOperatorHost ot the Native Extension in a single transaction.