query
query copied to clipboard
createSuccessObserverResult should also take a generic error
Which @ngneat/query-* package(s) are relevant/releated to the feature request?
query
Description
I'm having this abstract method:
abstract getStuff$( ): ObservableQueryResult<Result, Error>;
abstract getStuff$( ): ObservableQueryResult<Result, Error>;
I would like to implement it this way :
getStuff$() {
return of(createSuccessObserverResult({ key: "value" }));
}
But I cannot because createSuccessObserverResult has the following signature:
export declare function createSuccessObserverResult<T>(data: T): QueryObserverResult<T>;
While I would need
export declare function createSuccessObserverResult<T, Error = DefaultError>(data: T): QueryObserverResult<T, Error>;
In order to comply with my abstract method.
Proposed solution
Just expose the Error in the util @ngneat\query\lib\utils.d.ts :
export declare function createSuccessObserverResult<T, Error = DefaultError>(data: T): QueryObserverResult<T, Error>;
export declare function createPendingObserverResult<T = unknown, Error = DefaultError>(): QueryObserverResult<T, Error>;
Alternatives considered
The workaround is to force typing the return :
createSuccessObserverResult<T>(data) as QueryObserverResult<T, Error>;
Do you want to create a pull request?
No
You are welcome to create a PR
Fixed in https://github.com/ngneat/query/pull/175