feat(typescript): Improve adapter typings #2605
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a follow-up to #2600 and closes #2564.
It updates the adapter types with the proper overloads, most importantly returning an array when passing
{ paginate: false }
. It also adds anAdapterBase
service from which other adapters can now extend implementing only the hook-less service methods and no service interface. The reason is that generated services will now extend from those and then implement the official service methods which will by default in turn call their internal counterpart. This allows to implement the service methods you want with different parameter types and return values without being restricted by any incompatible interfaces.