TypeScript types, interfaces and classes I often use.
Deferred<T>- An abstraction of "work in progress". An invertedPromise<T>ConstructorArgs<T>- Extract the arguments from a class constructorAsyncMethodReturns<T>- Promisify the return values of all methods on a typeExtractPropertyNamesOfType<T, S>- Create a string literal type, representing the names of all properties on a type T whose values are assignable to SRequiredProps<T, S>- Make properties whose names are assignable to S on object T requiredOptionalProps<T, S>- Make properties whose names are assignable to S on object T optionalOptionalPropertyNamesOf<T>- Get the names of optional properties of TRequiredPropertyNamesOf<T>- Get the names of required properties of T
(c) 2018 Mike North