All of the following implementations of the `IRegistrationBase` can be easily created by the [`RegistrationFactory`](RegistrationFactory).
## `IDefaultRegistration<TInterface>`
## `IDefaultRegistration<TInterface>`
This is the default registration that is used to register a `Type` for the interface it implements. `TInterface` is the `Type` of the interface.
This is the default registration that is used to register a `Type` for the interface it implements. `TInterface` is the `Type` of the interface.
@ -59,3 +61,11 @@ Type Scope { get; }
```
```
## `ITypedFactoryRegistration<TFactory>`
## `ITypedFactoryRegistration<TFactory>`
The `ITypedFactoryRegistration` is used to register an [abstract typed factory](abstract-factories) with the `IocContainer`. `TFactory` is the `Type` of the factory.
It consists of the implemented properties from the [`IRegistrationBase`](IRegistrationBase) and adds one property of its own, the class that contains the implemented abstract factory of this `ITypedFactoryRegistration`: