Type Alias PropertyBag<Titem, Tprops, Tinput>

PropertyBag<Titem, Tprops, Tinput>: Exclude<
    | Exclude<Record<Tprops, Titem>, Single>
    | InstanceType<(new () => Exclude<Tinput, Single>)>
    | Function
    | IArguments, Single>

PropBag helper type - all Pojsos, instances, functions & IArguments that dont have plain props, instead "special" keys/indexes (like array have indexes, maps have keys, sets have values as keys, etc.)

@todo: incomplete, untested and problematic, not excluding Singles etc - can't always be matched properly, need to add more types?

Type Parameters