namespace Spectre.Console.Cli; /// /// Represents a user friendly frontend for a . /// public interface ITypeRegistrarFrontend { /// /// Registers the type with the type registrar as a singleton. /// /// The exposed service type. /// The implementing type. void Register() where TImplementation : TService; /// /// Registers the specified instance with the type registrar as a singleton. /// /// The type of the instance. /// The instance to register. void RegisterInstance(TImplementation instance); /// /// Registers the specified instance with the type registrar as a singleton. /// /// The exposed service type. /// implementing type. /// The instance to register. void RegisterInstance(TImplementation instance) where TImplementation : TService; }