1 | import type { ThunkDispatch } from '@reduxjs/toolkit';
|
2 | import type { MaybePromise, UnwrapPromise } from './tsHelpers';
|
3 | export interface BaseQueryApi {
|
4 | signal: AbortSignal;
|
5 | dispatch: ThunkDispatch<any, any, any>;
|
6 | getState: () => unknown;
|
7 | extra: unknown;
|
8 | endpoint: string;
|
9 | type: 'query' | 'mutation';
|
10 | |
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 | forced?: boolean;
|
19 | }
|
20 | export declare type QueryReturnValue<T = unknown, E = unknown, M = unknown> = {
|
21 | error: E;
|
22 | data?: undefined;
|
23 | meta?: M;
|
24 | } | {
|
25 | error?: undefined;
|
26 | data: T;
|
27 | meta?: M;
|
28 | };
|
29 | export declare type BaseQueryFn<Args = any, Result = unknown, Error = unknown, DefinitionExtraOptions = {}, Meta = {}> = (args: Args, api: BaseQueryApi, extraOptions: DefinitionExtraOptions) => MaybePromise<QueryReturnValue<Result, Error, Meta>>;
|
30 | export declare type BaseQueryEnhancer<AdditionalArgs = unknown, AdditionalDefinitionExtraOptions = unknown, Config = void> = <BaseQuery extends BaseQueryFn>(baseQuery: BaseQuery, config: Config) => BaseQueryFn<BaseQueryArg<BaseQuery> & AdditionalArgs, BaseQueryResult<BaseQuery>, BaseQueryError<BaseQuery>, BaseQueryExtraOptions<BaseQuery> & AdditionalDefinitionExtraOptions>;
|
31 | export declare type BaseQueryResult<BaseQuery extends BaseQueryFn> = UnwrapPromise<ReturnType<BaseQuery>> extends infer Unwrapped ? Unwrapped extends {
|
32 | data: any;
|
33 | } ? Unwrapped['data'] : never : never;
|
34 | export declare type BaseQueryMeta<BaseQuery extends BaseQueryFn> = UnwrapPromise<ReturnType<BaseQuery>>['meta'];
|
35 | export declare type BaseQueryError<BaseQuery extends BaseQueryFn> = Exclude<UnwrapPromise<ReturnType<BaseQuery>>, {
|
36 | error?: undefined;
|
37 | }>['error'];
|
38 | export declare type BaseQueryArg<T extends (arg: any, ...args: any[]) => any> = T extends (arg: infer A, ...args: any[]) => any ? A : any;
|
39 | export declare type BaseQueryExtraOptions<BaseQuery extends BaseQueryFn> = Parameters<BaseQuery>[2];
|