@redux-devtools/rtk-query-monitor
Version:
rtk-query monitor for Redux DevTools
43 lines (42 loc) • 3.02 kB
TypeScript
import { Action } from '@reduxjs/toolkit';
import { QueryInfo, RtkQueryMonitorState, RtkQueryApiState, RTKQuerySubscribers, RtkQueryTag, RTKStatusFlags, RtkQueryState, MutationInfo, ApiStats, RtkQueryProvidedTagsState, RtkQuery262ProvidedState, SelectorsSource, RtkMutationState, RtkResourceInfo } from '../types';
import { Comparator } from './comparators';
/**
* Type guard used to select apis from the user store state.
* @param val
* @returns {boolean}
*/
export declare function isApiSlice(val: unknown): val is RtkQueryApiState;
/**
* Indexes api states by their `reducerPath`.
*
* Returns `null` if there are no api slice or `reduxStoreState`
* is not an object.
*
* @param reduxStoreState
* @returns
*/
export declare function getApiStatesOf(reduxStoreState: unknown): null | Readonly<Record<string, RtkQueryApiState>>;
export declare function extractAllApiQueries(apiStatesByReducerPath: null | Readonly<Record<string, RtkQueryApiState>>): ReadonlyArray<QueryInfo>;
export declare function extractAllApiMutations(apiStatesByReducerPath: null | Readonly<Record<string, RtkQueryApiState>>): ReadonlyArray<MutationInfo>;
export declare function generateApiStatsOfCurrentQuery(api: RtkQueryApiState | null, actionsById: SelectorsSource<unknown>['actionsById'], currentStateIndex: SelectorsSource<unknown>['currentStateIndex']): ApiStats | null;
export declare function flipComparator<T>(comparator: Comparator<T>): Comparator<T>;
export declare function isQuerySelected(selectedQueryKey: RtkQueryMonitorState['selectedQueryKey'], queryInfo: RtkResourceInfo): boolean;
export declare function getApiStateOf(queryInfo: RtkResourceInfo | null, apiStates: ReturnType<typeof getApiStatesOf>): RtkQueryApiState | null;
export declare function getQuerySubscriptionsOf(queryInfo: QueryInfo | null, apiStates: ReturnType<typeof getApiStatesOf>): RTKQuerySubscribers | null;
export declare function getProvidedOf(queryInfo: QueryInfo | null, apiStates: ReturnType<typeof getApiStatesOf>): RtkQueryApiState['provided'] | null;
export declare function getQueryTagsOf(resInfo: RtkResourceInfo | null, provided: RtkQueryProvidedTagsState | RtkQuery262ProvidedState | null): RtkQueryTag[];
/**
* Computes query status flags.
* @param status
* @see https://redux-toolkit.js.org/rtk-query/usage/queries#frequently-used-query-hook-return-values
* @see https://github.com/reduxjs/redux-toolkit/blob/b718e01d323d3ab4b913e5d88c9b90aa790bb975/src/query/core/apiState.ts#L63
*/
export declare function getQueryStatusFlags({ status, data, }: RtkQueryState | RtkMutationState): RTKStatusFlags;
/**
* endpoint matcher
* @param endpointName
* @see https://github.com/reduxjs/redux-toolkit/blob/b718e01d323d3ab4b913e5d88c9b90aa790bb975/src/query/core/buildThunks.ts#L415
*/
export declare function matchesEndpoint(endpointName: unknown): (action: any) => action is Action;
export declare function getActionsOfCurrentQuery(currentQuery: RtkResourceInfo | null, actionById: SelectorsSource<unknown>['actionsById']): Action[];