-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use generic rest parameters for combineLatest
, zip
, merge
, concat
, withLatestFrom
#4410
Comments
There's a lot that can be done to improve the types, once TypeScript version 3 becomes the minimum-supported version, but that won't be until v7. |
Oh I see, didn't find the minimum supported TS version for RxJS 6 anywhere. Thanks for the info, will use own typings then :) |
Using tuples and rest parameters - necessitating a minimum of TS 3.0 - would be a breaking change for many projects, so we'll need to wait for v7 to do this. The good news is that v7 is getting close to an alpha. Also, we now have a large portion of the API surface area covered with |
Okay, thanks for the detailed reasoning and update on the development status. I'll stick around for v7 and see what I can contribute :-) |
Use generic rest parameters for
combineLatest
,zip
,merge
,concat
,withLatestFrom
(more than 6 input Observables)Is your feature request related to a problem? Please describe.
There are currently no type signatures for the mentioned operators/creation functions that allow more than 6 Observables while still keeping the correct types for the subscriber (anything above creates an impractical union type).
Describe the solution you'd like
Add a signature that makes use of generic rest parameters (documented here) and mapped types. Currently, the signatures look like this:
This could for example be replaced with:
These signatures would be more concise and enable more than 6 input Observables to be used with correct typings. The required TypeScript version is 3.0.
The text was updated successfully, but these errors were encountered: