Files
openpanel/packages/core/src/interfaces/mutationMode.ts
Stefan Pejcic 8595a9f4e5 back
2024-05-08 19:58:53 +02:00

33 lines
822 B
TypeScript

import {
BaseRecord,
GetListResponse,
GetOneResponse,
IQueryKeys,
} from "../interfaces";
import { QueryKey } from "@tanstack/react-query";
export type MutationMode = "pessimistic" | "optimistic" | "undoable";
export type QueryResponse<T = BaseRecord> =
| GetListResponse<T>
| GetOneResponse<T>;
export type PreviousQuery<TData> = [QueryKey, TData | unknown];
export type PrevContext<TData> = {
previousQueries: PreviousQuery<TData>[];
/**
* @deprecated `QueryKeys` is deprecated in favor of `keys`. Please use `keys` instead to construct query keys for queries and mutations.
*/
queryKey: IQueryKeys;
};
export type Context = {
previousQueries: ContextQuery[];
};
export type ContextQuery<T = BaseRecord> = {
query: QueryResponse<T>;
queryKey: QueryKey;
};