using System;
namespace ZeroLevel.DependencyInjection
{
///
/// Methods for register contact implementations
/// (singletone)
///
public interface IContainerInstanceRegister
{
#region Register instance
///
/// Register instance for contract . (singletone)
///
/// Contract
/// Instance
void Register(TContract implementation);
///
/// Register instance for contract . (singletone)
///
/// Contract
/// Instance
/// Dependency name
void Register(TContract implementation, string resolveName);
///
/// Register instance for contract (singletone)
///
/// Contract
/// Instance
void Register(Type contractType, object implementation);
///
/// Register instance for contract (singletone)
///
/// Contract
/// Dependency name
/// Instance
void Register(Type contractType, string resolveName, object implementation);
#endregion Register instance
}
}