<PackageReference Include="Castle.Windsor" Version="5.0.1" />

IReference<T>

public interface IReference<T>
Represents obtained just in time object.
void Attach(ComponentModel component)

If the reference introduces dependency on a component, should return DependencyModel for that dependency, otherwise null.

void Detach(ComponentModel component)

T Resolve(IKernel kernel, CreationContext context)

Resolves object referenced by this reference, optionally using provided kernel. If object is resolved from the kernel, the context should be used to guard against against cyclic dependencies.