Redux, Typescript, Angular, Redux Observable, Ngrx.
’cause they are already a part of TS 2.8! We’ve got following new mapped types at our disposal: Exclude<T, U> -- Exclude from T those types that are assignable to U. Extract<T, U> -- Extract from T those types that are assignable to U. NonNullable<T> -- Exclude null and undefined from T.