Stashbox by Peter Csajtai

<PackageReference Include="Stashbox" Version="3.5.0-preview-610" />

 DecoratorConfigurator<TService, TImplementation>

public class DecoratorConfigurator<TService, TImplementation> : BaseDecoratorConfigurator<DecoratorConfigurator<TService, TImplementation>>, IFluentCompositor<TImplementation, DecoratorConfigurator<TService, TImplementation>>
Represents the fluent service decorator registration api.
public DecoratorConfigurator<TService, TImplementation> InjectMember<TResult>(Expression<Func<TImplementation, TResult>> expression, object dependencyName = null)

public DecoratorConfigurator<TService, TImplementation> WithFactory(Func<TImplementation> singleFactory, bool isCompiledLambda = false)

public DecoratorConfigurator<TService, TImplementation> WithFactory(Func<IDependencyResolver, TImplementation> containerFactory, bool isCompiledLambda = false)

public DecoratorConfigurator<TService, TImplementation> WithFinalizer(Action<TImplementation> finalizer)

public DecoratorConfigurator<TService, TImplementation> WithInitializer(Action<TImplementation, IDependencyResolver> initializer)