T

SelfOf

The this a patch receives: the method's declared this, else the object M holding it.

type SelfOf<M, F> = unknown extends ThisParameterType<F> ? M : ThisParameterType<F>