Type Alias Props<Tinput, Toptions>

Props<Tinput, Toptions>: IsAnyOrUnknown<Toptions> extends true
    ? Props<Tinput, IKeys_DefaultOptions>
    : (IsPropTrue<"own", Toptions, true> extends true
        ? Exclude<PropsOfStringOrSymbol<Tinput, Toptions>, never>
        : never) | Exclude<PropsOfKnownPrototype<Tinput, Toptions>, never>

Get ALL the props of Tinput object, based on the KeysOptions passed

It follows the keys() function closely:

  • but cares ONLY for props (no NestedKeys of Arrays, Maps, Sets, TypedArrays)
  • own works when extending a System class, who's prototype is known at compile time, but fails for instances, where the prototype can't be infered at compile time by TypeScript (@todo(888): add link to issue - keyofOwn missing in TS & Can't infer BaseClass from SubClass https://stackoverflow.com/questions/56377792/typescript-get-type-of-super-class)

Type Parameters