IFluentCompositor<TImplementation, TConfigurator>
using System;
using System.Linq.Expressions;
using System.Runtime.CompilerServices;
using System.Threading;
using System.Threading.Tasks;
namespace Stashbox.Registration.Fluent
{
[System.Runtime.CompilerServices.NullableContext(1)]
internal interface IFluentCompositor<[System.Runtime.CompilerServices.Nullable(2)] TImplementation, [System.Runtime.CompilerServices.Nullable(2)] out TConfigurator>
{
TConfigurator WithDependencyBinding<[System.Runtime.CompilerServices.Nullable(2)] TResult>(Expression<Func<TImplementation, TResult>> expression, [System.Runtime.CompilerServices.Nullable(2)] object dependencyName = null);
TConfigurator WithFinalizer(Action<TImplementation> finalizer);
TConfigurator WithInitializer(Action<TImplementation, IDependencyResolver> initializer);
TConfigurator WithAsyncInitializer(Func<TImplementation, IDependencyResolver, CancellationToken, Task> initializer);
TConfigurator WithFactory(Func<TImplementation> factory, bool isCompiledLambda = false);
TConfigurator WithFactory(Func<IDependencyResolver, TImplementation> factory, bool isCompiledLambda = false);
TConfigurator WithFactory<[System.Runtime.CompilerServices.Nullable(2)] T1>(Func<T1, TImplementation> factory, bool isCompiledLambda = false);
TConfigurator WithFactory<[System.Runtime.CompilerServices.Nullable(2)] T1, [System.Runtime.CompilerServices.Nullable(2)] T2>(Func<T1, T2, TImplementation> factory, bool isCompiledLambda = false);
[System.Runtime.CompilerServices.NullableContext(2)]
[return: System.Runtime.CompilerServices.Nullable(1)]
TConfigurator WithFactory<T1, T2, T3>([System.Runtime.CompilerServices.Nullable(1)] Func<T1, T2, T3, TImplementation> factory, bool isCompiledLambda = false);
[System.Runtime.CompilerServices.NullableContext(2)]
[return: System.Runtime.CompilerServices.Nullable(1)]
TConfigurator WithFactory<T1, T2, T3, T4>([System.Runtime.CompilerServices.Nullable(1)] Func<T1, T2, T3, T4, TImplementation> factory, bool isCompiledLambda = false);
[System.Runtime.CompilerServices.NullableContext(2)]
[return: System.Runtime.CompilerServices.Nullable(1)]
TConfigurator WithFactory<T1, T2, T3, T4, T5>([System.Runtime.CompilerServices.Nullable(1)] Func<T1, T2, T3, T4, T5, TImplementation> factory, bool isCompiledLambda = false);
}
}