@navios/react-query 0.4.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +80 -0
- package/dist/src/client/__type-tests__/client-instance.spec-d.d.mts +2 -0
- package/dist/src/client/__type-tests__/client-instance.spec-d.d.mts.map +1 -0
- package/dist/src/client/declare-client.d.mts +70 -0
- package/dist/src/client/declare-client.d.mts.map +1 -0
- package/dist/src/client/index.d.mts +3 -0
- package/dist/src/client/index.d.mts.map +1 -0
- package/dist/src/client/types.d.mts +301 -0
- package/dist/src/client/types.d.mts.map +1 -0
- package/dist/src/common/index.d.mts +2 -0
- package/dist/src/common/index.d.mts.map +1 -0
- package/dist/src/common/types.d.mts +21 -0
- package/dist/src/common/types.d.mts.map +1 -0
- package/dist/src/index.d.mts +13 -8
- package/dist/src/index.d.mts.map +1 -1
- package/dist/src/mutation/index.d.mts +4 -0
- package/dist/src/mutation/index.d.mts.map +1 -0
- package/dist/src/mutation/key-creator.d.mts +36 -0
- package/dist/src/mutation/key-creator.d.mts.map +1 -0
- package/dist/src/mutation/make-hook.d.mts +25 -0
- package/dist/src/mutation/make-hook.d.mts.map +1 -0
- package/dist/src/mutation/types.d.mts +50 -0
- package/dist/src/mutation/types.d.mts.map +1 -0
- package/dist/src/query/index.d.mts +5 -0
- package/dist/src/query/index.d.mts.map +1 -0
- package/dist/src/query/key-creator.d.mts +17 -0
- package/dist/src/query/key-creator.d.mts.map +1 -0
- package/dist/src/query/make-infinite-options.d.mts +23 -0
- package/dist/src/query/make-infinite-options.d.mts.map +1 -0
- package/dist/src/query/make-options.d.mts +24 -0
- package/dist/src/query/make-options.d.mts.map +1 -0
- package/dist/src/query/types.d.mts +83 -0
- package/dist/src/query/types.d.mts.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/lib/_tsup-dts-rollup.d.mts +514 -250
- package/lib/_tsup-dts-rollup.d.ts +514 -250
- package/lib/index.d.mts +26 -19
- package/lib/index.d.ts +26 -19
- package/lib/index.js +92 -66
- package/lib/index.js.map +1 -1
- package/lib/index.mjs +92 -68
- package/lib/index.mjs.map +1 -1
- package/package.json +7 -7
- package/project.json +9 -1
- package/src/__tests__/client-type-check.spec.mts +1 -1
- package/src/__tests__/declare-client.spec.mts +1 -1
- package/src/__tests__/make-mutation.spec.mts +1 -1
- package/src/__tests__/makeDataTag.spec.mts +1 -1
- package/src/__tests__/makeInfiniteQueryOptions.spec.mts +1 -2
- package/src/__tests__/makeQueryOptions.spec.mts +1 -1
- package/src/client/__type-tests__/client-instance.spec-d.mts +702 -0
- package/src/{declare-client.mts → client/declare-client.mts} +93 -33
- package/src/client/index.mts +2 -0
- package/src/{types/client-instance.mts → client/types.mts} +423 -149
- package/src/common/index.mts +1 -0
- package/src/common/types.mts +31 -0
- package/src/index.mts +28 -8
- package/src/mutation/index.mts +3 -0
- package/src/mutation/key-creator.mts +64 -0
- package/src/{make-mutation.mts → mutation/make-hook.mts} +19 -8
- package/src/mutation/types.mts +106 -0
- package/src/query/index.mts +4 -0
- package/src/{utils/query-key-creator.mts → query/key-creator.mts} +22 -48
- package/src/{make-infinite-query-options.mts → query/make-infinite-options.mts} +28 -14
- package/src/{make-query-options.mts → query/make-options.mts} +26 -25
- package/src/query/types.mts +163 -0
- package/dist/tsdown.config.d.mts +0 -3
- package/dist/tsdown.config.d.mts.map +0 -1
- package/dist/tsup.config.d.mts +0 -3
- package/dist/tsup.config.d.mts.map +0 -1
- package/dist/vitest.config.d.mts +0 -3
- package/dist/vitest.config.d.mts.map +0 -1
- package/src/types/client-endpoint-helper.mts +0 -29
- package/src/types/index.mts +0 -7
- package/src/types/mutation-args.mts +0 -10
- package/src/types/mutation-helpers.mts +0 -13
- package/src/types/query-args.mts +0 -8
- package/src/types/query-helpers.mts +0 -34
- package/src/types/query-url-params-args.mts +0 -6
- package/src/types.mts +0 -118
- package/src/utils/mutation-key.creator.mts +0 -65
|
@@ -8,8 +8,9 @@ import type { HttpMethod } from '@navios/builder';
|
|
|
8
8
|
import type { InfiniteData } from '@tanstack/react-query';
|
|
9
9
|
import type { NaviosZodRequest } from '@navios/builder';
|
|
10
10
|
import { NoInfer as NoInfer_2 } from '@tanstack/react-query';
|
|
11
|
+
import { ProcessResponseFunction as ProcessResponseFunction_2 } from '../index.mjs';
|
|
11
12
|
import type { QueryClient } from '@tanstack/react-query';
|
|
12
|
-
import { QueryKeyCreatorResult as QueryKeyCreatorResult_2 } from './
|
|
13
|
+
import { QueryKeyCreatorResult as QueryKeyCreatorResult_2 } from './types.mjs';
|
|
13
14
|
import { UrlHasParams } from '@navios/builder';
|
|
14
15
|
import type { UrlParams } from '@navios/builder';
|
|
15
16
|
import type { UseInfiniteQueryOptions } from '@tanstack/react-query';
|
|
@@ -27,29 +28,19 @@ import type { z } from 'zod/v4';
|
|
|
27
28
|
import type { ZodObject } from 'zod/v4';
|
|
28
29
|
import type { ZodType } from 'zod/v4';
|
|
29
30
|
|
|
31
|
+
/** @deprecated Use NaviosZodRequest from @navios/builder instead */
|
|
30
32
|
declare type BaseMutationArgs<Config extends AnyEndpointConfig> = NaviosZodRequest<Config>;
|
|
31
33
|
export { BaseMutationArgs }
|
|
32
34
|
export { BaseMutationArgs as BaseMutationArgs_alias_1 }
|
|
35
|
+
export { BaseMutationArgs as BaseMutationArgs_alias_2 }
|
|
33
36
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* React hooks that will prepare the context for the mutation onSuccess and onError
|
|
38
|
-
* callbacks. This is useful for when you want to use the context in the callbacks
|
|
39
|
-
*/
|
|
40
|
-
useContext?: () => TContext;
|
|
41
|
-
onSuccess?: (queryClient: QueryClient, data: TData, variables: TVariables, context: TContext) => void | Promise<void>;
|
|
42
|
-
onError?: (queryClient: QueryClient, err: unknown, variables: TVariables, context: TContext) => void | Promise<void>;
|
|
43
|
-
/**
|
|
44
|
-
* If true, we will create a mutation key that can be shared across the project.
|
|
45
|
-
*/
|
|
46
|
-
useKey?: UseKey;
|
|
47
|
-
keyPrefix?: UseKey extends true ? UrlHasParams<Config['url']> extends true ? string[] : never : never;
|
|
48
|
-
keySuffix?: UseKey extends true ? UrlHasParams<Config['url']> extends true ? string[] : never : never;
|
|
49
|
-
}
|
|
37
|
+
/** @deprecated Use MutationParams instead */
|
|
38
|
+
declare type BaseMutationParams<Config extends AnyEndpointConfig, TData = unknown, TVariables = NaviosZodRequest<Config>, TResponse = z.output<Config['responseSchema']>, TContext = unknown, UseKey extends boolean = false> = MutationParams<Config, TData, TVariables, TResponse, TContext, UseKey>;
|
|
50
39
|
export { BaseMutationParams }
|
|
51
40
|
export { BaseMutationParams as BaseMutationParams_alias_1 }
|
|
41
|
+
export { BaseMutationParams as BaseMutationParams_alias_2 }
|
|
52
42
|
|
|
43
|
+
/** @deprecated Use QueryArgs instead */
|
|
53
44
|
declare type BaseQueryArgs<Config extends AnyEndpointConfig> = (UrlHasParams<Config['url']> extends true ? {
|
|
54
45
|
urlParams: UrlParams<Config['url']>;
|
|
55
46
|
} : {}) & (Config['querySchema'] extends ZodObject ? {
|
|
@@ -57,58 +48,53 @@ declare type BaseQueryArgs<Config extends AnyEndpointConfig> = (UrlHasParams<Con
|
|
|
57
48
|
} : {});
|
|
58
49
|
export { BaseQueryArgs }
|
|
59
50
|
export { BaseQueryArgs as BaseQueryArgs_alias_1 }
|
|
51
|
+
export { BaseQueryArgs as BaseQueryArgs_alias_2 }
|
|
60
52
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
keySuffix?: string[];
|
|
64
|
-
onFail?: (err: unknown) => void;
|
|
65
|
-
processResponse: (data: z.output<Config['responseSchema']>) => Res;
|
|
66
|
-
};
|
|
53
|
+
/** @deprecated Use QueryParams instead */
|
|
54
|
+
declare type BaseQueryParams<Config extends AnyEndpointConfig, Res = unknown> = QueryParams<Config, Res>;
|
|
67
55
|
export { BaseQueryParams }
|
|
68
56
|
export { BaseQueryParams as BaseQueryParams_alias_1 }
|
|
57
|
+
export { BaseQueryParams as BaseQueryParams_alias_2 }
|
|
69
58
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
url: Url;
|
|
73
|
-
querySchema?: QuerySchema;
|
|
74
|
-
responseSchema: Response;
|
|
75
|
-
}
|
|
76
|
-
export { ClientEndpointDefinition }
|
|
77
|
-
export { ClientEndpointDefinition as ClientEndpointDefinition_alias_1 }
|
|
78
|
-
|
|
79
|
-
declare type ClientEndpointHelper<Method extends HttpMethod = HttpMethod, Url extends string = string, RequestSchema = unknown, ResponseSchema extends z.ZodType = z.ZodType, QuerySchema = unknown> = {
|
|
80
|
-
endpoint: ((params: Util_FlatObject<EndpointFunctionArgs<Url, QuerySchema, RequestSchema>>) => Promise<z.output<ResponseSchema>>) & {
|
|
81
|
-
config: BaseEndpointConfig<Method, Url, QuerySchema, ResponseSchema, RequestSchema>;
|
|
82
|
-
};
|
|
83
|
-
};
|
|
59
|
+
/** @deprecated Use EndpointHelper instead */
|
|
60
|
+
declare type ClientEndpointHelper<Method extends HttpMethod = HttpMethod, Url extends string = string, RequestSchema = unknown, ResponseSchema extends z.ZodType = z.ZodType, QuerySchema = unknown> = EndpointHelper<Method, Url, RequestSchema, ResponseSchema, QuerySchema>;
|
|
84
61
|
export { ClientEndpointHelper }
|
|
85
62
|
export { ClientEndpointHelper as ClientEndpointHelper_alias_1 }
|
|
86
63
|
export { ClientEndpointHelper as ClientEndpointHelper_alias_2 }
|
|
87
64
|
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
getPreviousPageParam?: (firstPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema>;
|
|
93
|
-
initialPageParam?: z.input<QuerySchema>;
|
|
94
|
-
};
|
|
95
|
-
export { ClientInfiniteQueryConfig }
|
|
96
|
-
export { ClientInfiniteQueryConfig as ClientInfiniteQueryConfig_alias_1 }
|
|
97
|
-
|
|
65
|
+
/**
|
|
66
|
+
* The main client instance interface.
|
|
67
|
+
* Provides methods for creating queries, infinite queries, and mutations.
|
|
68
|
+
*/
|
|
98
69
|
declare interface ClientInstance {
|
|
99
70
|
query<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, Response extends ZodType = ZodType, Result = z.output<Response>>(config: {
|
|
100
71
|
method: Method;
|
|
101
72
|
url: Url;
|
|
102
73
|
responseSchema: Response;
|
|
103
74
|
processResponse?: (data: z.output<Response>) => Result;
|
|
104
|
-
}): ((params: Util_FlatObject<
|
|
75
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, undefined>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, undefined, Result> & EndpointHelper<Method, Url, undefined, Response>;
|
|
105
76
|
query<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, Result = z.output<Response>>(config: {
|
|
106
77
|
method: Method;
|
|
107
78
|
url: Url;
|
|
108
79
|
querySchema: QuerySchema;
|
|
109
80
|
responseSchema: Response;
|
|
110
81
|
processResponse?: (data: z.output<Response>) => Result;
|
|
111
|
-
}): ((params: Util_FlatObject<
|
|
82
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, QuerySchema>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, QuerySchema, Result> & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
83
|
+
query<Method extends 'POST' = 'POST', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, Result = z.output<Response>>(config: {
|
|
84
|
+
method: Method;
|
|
85
|
+
url: Url;
|
|
86
|
+
requestSchema: RequestSchema;
|
|
87
|
+
responseSchema: Response;
|
|
88
|
+
processResponse?: (data: z.output<Response>) => Result;
|
|
89
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, undefined, RequestSchema>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, undefined, Result, false, RequestSchema> & EndpointHelper<Method, Url, RequestSchema, Response>;
|
|
90
|
+
query<Method extends 'POST' = 'POST', Url extends string = string, QuerySchema extends ZodObject = ZodObject, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, Result = z.output<Response>>(config: {
|
|
91
|
+
method: Method;
|
|
92
|
+
url: Url;
|
|
93
|
+
querySchema: QuerySchema;
|
|
94
|
+
requestSchema: RequestSchema;
|
|
95
|
+
responseSchema: Response;
|
|
96
|
+
processResponse?: (data: z.output<Response>) => Result;
|
|
97
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, QuerySchema, RequestSchema>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, QuerySchema, Result, false, RequestSchema> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
112
98
|
infiniteQuery<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, PageResult = z.output<Response>, Result = InfiniteData<PageResult>>(config: {
|
|
113
99
|
method: Method;
|
|
114
100
|
url: Url;
|
|
@@ -117,7 +103,17 @@ declare interface ClientInstance {
|
|
|
117
103
|
processResponse?: (data: z.output<Response>) => PageResult;
|
|
118
104
|
getNextPageParam: (lastPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema> | undefined;
|
|
119
105
|
getPreviousPageParam?: (firstPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema>;
|
|
120
|
-
}): ((params: Util_FlatObject<
|
|
106
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, QuerySchema>>) => UseSuspenseInfiniteQueryOptions<PageResult, Error, Result, DataTag<Split<Url, '/'>, PageResult, Error>, z.output<QuerySchema>>) & QueryHelpers<Url, QuerySchema, PageResult, true> & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
107
|
+
infiniteQuery<Method extends 'POST' = 'POST', Url extends string = string, QuerySchema extends ZodObject = ZodObject, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, PageResult = z.output<Response>, Result = InfiniteData<PageResult>>(config: {
|
|
108
|
+
method: Method;
|
|
109
|
+
url: Url;
|
|
110
|
+
querySchema: QuerySchema;
|
|
111
|
+
requestSchema: RequestSchema;
|
|
112
|
+
responseSchema: Response;
|
|
113
|
+
processResponse?: (data: z.output<Response>) => PageResult;
|
|
114
|
+
getNextPageParam: (lastPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema> | undefined;
|
|
115
|
+
getPreviousPageParam?: (firstPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema>;
|
|
116
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, QuerySchema, RequestSchema>>) => UseSuspenseInfiniteQueryOptions<PageResult, Error, Result, DataTag<Split<Url, '/'>, PageResult, Error>, z.output<QuerySchema>>) & QueryHelpers<Url, QuerySchema, PageResult, true, RequestSchema> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
121
117
|
mutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
122
118
|
method: Method;
|
|
123
119
|
url: Url;
|
|
@@ -127,11 +123,11 @@ declare interface ClientInstance {
|
|
|
127
123
|
responseSchema: Response;
|
|
128
124
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
129
125
|
useContext?: () => Context;
|
|
130
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
131
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
126
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
127
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
132
128
|
}): ((params: UrlHasParams<Url> extends true ? {
|
|
133
129
|
urlParams: UrlParams<Url>;
|
|
134
|
-
} : {}) => UseMutationResult<Result, Error,
|
|
130
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
135
131
|
mutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
136
132
|
method: Method;
|
|
137
133
|
url: Url;
|
|
@@ -140,9 +136,9 @@ declare interface ClientInstance {
|
|
|
140
136
|
responseSchema: Response;
|
|
141
137
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
142
138
|
useContext?: () => Context;
|
|
143
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
144
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
145
|
-
}): (() => UseMutationResult<Result, Error,
|
|
139
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
140
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
141
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
146
142
|
mutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
147
143
|
method: Method;
|
|
148
144
|
url: Url;
|
|
@@ -150,9 +146,9 @@ declare interface ClientInstance {
|
|
|
150
146
|
responseSchema: Response;
|
|
151
147
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
152
148
|
useContext?: () => Context;
|
|
153
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
154
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
155
|
-
}): (() => UseMutationResult<Result, Error,
|
|
149
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
150
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
151
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response>;
|
|
156
152
|
mutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
157
153
|
method: Method;
|
|
158
154
|
url: Url;
|
|
@@ -161,9 +157,11 @@ declare interface ClientInstance {
|
|
|
161
157
|
responseSchema: Response;
|
|
162
158
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
163
159
|
useContext?: () => Context;
|
|
164
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
165
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
166
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
160
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
161
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
162
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
163
|
+
urlParams: UrlParams<Url>;
|
|
164
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response>;
|
|
167
165
|
mutation<Method extends 'DELETE' = 'DELETE', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
168
166
|
method: Method;
|
|
169
167
|
url: Url;
|
|
@@ -172,9 +170,11 @@ declare interface ClientInstance {
|
|
|
172
170
|
responseSchema: Response;
|
|
173
171
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
174
172
|
useContext?: () => Context;
|
|
175
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
176
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
177
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
173
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
174
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
175
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
176
|
+
urlParams: UrlParams<Url>;
|
|
177
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, undefined, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
178
178
|
mutation<Method extends 'DELETE' = 'DELETE', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
179
179
|
method: Method;
|
|
180
180
|
url: Url;
|
|
@@ -182,9 +182,9 @@ declare interface ClientInstance {
|
|
|
182
182
|
responseSchema: Response;
|
|
183
183
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
184
184
|
useContext?: () => Context;
|
|
185
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
186
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
187
|
-
}): (() => UseMutationResult<Result, Error,
|
|
185
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
186
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
187
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, undefined, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
188
188
|
mutation<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
189
189
|
method: Method;
|
|
190
190
|
url: Url;
|
|
@@ -192,137 +192,174 @@ declare interface ClientInstance {
|
|
|
192
192
|
responseSchema: Response;
|
|
193
193
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
194
194
|
useContext?: () => Context;
|
|
195
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
196
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
197
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
195
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
196
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
197
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
198
|
+
urlParams: UrlParams<Url>;
|
|
199
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, undefined, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response>;
|
|
198
200
|
mutation<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
199
201
|
method: Method;
|
|
200
202
|
url: Url;
|
|
201
203
|
responseSchema: Response;
|
|
202
204
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
203
205
|
useContext?: () => Context;
|
|
204
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
205
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
206
|
-
}): (() => UseMutationResult<Result, Error,
|
|
207
|
-
queryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, Result = z.output<Response>>(endpoint:
|
|
206
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
207
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
208
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, undefined, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response>;
|
|
209
|
+
queryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, Result = z.output<Response>>(endpoint: {
|
|
208
210
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response>;
|
|
209
211
|
}, options?: {
|
|
210
212
|
processResponse?: (data: z.output<Response>) => Result;
|
|
211
|
-
}): (params:
|
|
212
|
-
|
|
213
|
-
} : {}) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>> & QueryHelpers<Url, QuerySchema, Result>;
|
|
214
|
-
queryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, Response extends ZodType = ZodType, Result = z.output<Response>>(endpoint: any & {
|
|
213
|
+
}): (params: Util_FlatObject<QueryArgs<Url, QuerySchema>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>> & QueryHelpers<Url, QuerySchema, Result>;
|
|
214
|
+
queryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, Response extends ZodType = ZodType, Result = z.output<Response>>(endpoint: {
|
|
215
215
|
config: BaseEndpointConfig<Method, Url, undefined, Response>;
|
|
216
216
|
}, options?: {
|
|
217
217
|
processResponse?: (data: z.output<Response>) => Result;
|
|
218
|
-
}): ((params:
|
|
219
|
-
|
|
220
|
-
} : {}) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, undefined, Result>;
|
|
221
|
-
infiniteQueryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, PageResult = z.output<Response>, Result = InfiniteData<PageResult>>(endpoint: any & {
|
|
218
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, undefined>>) => UseSuspenseQueryOptions<Result, Error, Result, DataTag<Split<Url, '/'>, Result, Error>>) & QueryHelpers<Url, undefined, Result>;
|
|
219
|
+
infiniteQueryFromEndpoint<Method extends 'GET' | 'HEAD' | 'OPTIONS' = 'GET', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, PageResult = z.output<Response>, Result = InfiniteData<PageResult>>(endpoint: {
|
|
222
220
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response>;
|
|
223
221
|
}, options: {
|
|
224
222
|
processResponse?: (data: z.output<Response>) => PageResult;
|
|
225
223
|
getNextPageParam: (lastPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema> | undefined;
|
|
226
224
|
getPreviousPageParam?: (firstPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema>;
|
|
227
|
-
}): ((params:
|
|
228
|
-
|
|
229
|
-
} : {}) => UseSuspenseInfiniteQueryOptions<PageResult, Error, Result, DataTag<Split<Url, '/'>, PageResult, Error>, z.output<QuerySchema>>) & QueryHelpers<Url, QuerySchema, PageResult, true>;
|
|
230
|
-
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint: any & {
|
|
225
|
+
}): ((params: Util_FlatObject<QueryArgs<Url, QuerySchema>>) => UseSuspenseInfiniteQueryOptions<PageResult, Error, Result, DataTag<Split<Url, '/'>, PageResult, Error>, z.output<QuerySchema>>) & QueryHelpers<Url, QuerySchema, PageResult, true>;
|
|
226
|
+
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint: {
|
|
231
227
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response, RequestSchema>;
|
|
232
228
|
}, mutationOptions: {
|
|
233
229
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
234
230
|
useKey: UseKey;
|
|
235
231
|
useContext?: () => Context;
|
|
236
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
237
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
238
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
239
|
-
|
|
232
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
233
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
234
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
235
|
+
urlParams: UrlParams<Url>;
|
|
236
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
237
|
+
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint: {
|
|
240
238
|
config: BaseEndpointConfig<Method, Url, undefined, Response, RequestSchema>;
|
|
241
239
|
}, mutationOptions: {
|
|
242
240
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
243
241
|
useKey: UseKey;
|
|
244
242
|
useContext?: () => Context;
|
|
245
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
246
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
247
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
248
|
-
|
|
243
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
244
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
245
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
246
|
+
urlParams: UrlParams<Url>;
|
|
247
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, undefined>;
|
|
248
|
+
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint: {
|
|
249
249
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response, RequestSchema>;
|
|
250
250
|
}, mutationOptions: {
|
|
251
251
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
252
252
|
useContext?: () => Context;
|
|
253
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
254
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
255
|
-
}): (() => UseMutationResult<Result, Error,
|
|
256
|
-
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint:
|
|
253
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
254
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
255
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
256
|
+
mutationFromEndpoint<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint: {
|
|
257
257
|
config: BaseEndpointConfig<Method, Url, undefined, Response, RequestSchema>;
|
|
258
258
|
}, mutationOptions: {
|
|
259
259
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
260
260
|
useContext?: () => Context;
|
|
261
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
262
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
263
|
-
}): (() => UseMutationResult<Result, Error,
|
|
264
|
-
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint:
|
|
261
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
262
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
263
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & EndpointHelper<Method, Url, RequestSchema, Response, undefined>;
|
|
264
|
+
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint: {
|
|
265
265
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response>;
|
|
266
266
|
}, mutationOptions: {
|
|
267
267
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
268
268
|
useKey: UseKey;
|
|
269
269
|
useContext?: () => Context;
|
|
270
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
271
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
272
|
-
}): ((
|
|
273
|
-
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint:
|
|
270
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
271
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
272
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, undefined, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
273
|
+
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(endpoint: {
|
|
274
274
|
config: BaseEndpointConfig<Method, Url, undefined, Response>;
|
|
275
275
|
}, mutationOptions: {
|
|
276
276
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
277
277
|
useKey: UseKey;
|
|
278
278
|
useContext?: () => Context;
|
|
279
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
280
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
281
|
-
}): ((params: UrlHasParams<Url> extends true ?
|
|
282
|
-
|
|
279
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
280
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
281
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
282
|
+
urlParams: UrlParams<Url>;
|
|
283
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, undefined, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, undefined, Response, undefined>;
|
|
284
|
+
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint: {
|
|
283
285
|
config: BaseEndpointConfig<Method, Url, QuerySchema, Response>;
|
|
284
286
|
}, mutationOptions: {
|
|
285
287
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
286
288
|
useContext?: () => Context;
|
|
287
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
288
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
289
|
-
}): (() => UseMutationResult<Result, Error,
|
|
290
|
-
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint:
|
|
289
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
290
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
291
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, undefined, QuerySchema>>) & EndpointHelper<Method, Url, undefined, Response, QuerySchema>;
|
|
292
|
+
mutationFromEndpoint<Method extends 'DELETE' = 'DELETE', Url extends string = string, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(endpoint: {
|
|
291
293
|
config: BaseEndpointConfig<Method, Url, undefined, Response>;
|
|
292
294
|
}, mutationOptions: {
|
|
293
295
|
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
294
296
|
useContext?: () => Context;
|
|
295
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<
|
|
296
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<
|
|
297
|
-
}): ((
|
|
297
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
298
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, undefined, undefined>>, context: Context) => void | Promise<void>;
|
|
299
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, undefined, undefined>>) & EndpointHelper<Method, Url, undefined, Response, undefined>;
|
|
300
|
+
multipartMutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
301
|
+
method: Method;
|
|
302
|
+
url: Url;
|
|
303
|
+
useKey: UseKey;
|
|
304
|
+
requestSchema: RequestSchema;
|
|
305
|
+
querySchema: QuerySchema;
|
|
306
|
+
responseSchema: Response;
|
|
307
|
+
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
308
|
+
useContext?: () => Context;
|
|
309
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
310
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
311
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
312
|
+
urlParams: UrlParams<Url>;
|
|
313
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
314
|
+
multipartMutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
315
|
+
method: Method;
|
|
316
|
+
url: Url;
|
|
317
|
+
requestSchema: RequestSchema;
|
|
318
|
+
querySchema: QuerySchema;
|
|
319
|
+
responseSchema: Response;
|
|
320
|
+
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
321
|
+
useContext?: () => Context;
|
|
322
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
323
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
324
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, QuerySchema>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response, QuerySchema>;
|
|
325
|
+
multipartMutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown>(config: {
|
|
326
|
+
method: Method;
|
|
327
|
+
url: Url;
|
|
328
|
+
requestSchema: RequestSchema;
|
|
329
|
+
responseSchema: Response;
|
|
330
|
+
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
331
|
+
useContext?: () => Context;
|
|
332
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
333
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
334
|
+
}): (() => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response>;
|
|
335
|
+
multipartMutation<Method extends 'POST' | 'PUT' | 'PATCH' = 'POST' | 'PUT' | 'PATCH', Url extends string = string, RequestSchema extends ZodType = ZodType, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends true = true>(config: {
|
|
336
|
+
method: Method;
|
|
337
|
+
url: Url;
|
|
338
|
+
useKey: UseKey;
|
|
339
|
+
requestSchema: RequestSchema;
|
|
340
|
+
responseSchema: Response;
|
|
341
|
+
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
342
|
+
useContext?: () => Context;
|
|
343
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
344
|
+
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<MutationArgs<Url, RequestSchema, undefined>>, context: Context) => void | Promise<void>;
|
|
345
|
+
}): ((params: UrlHasParams<Url> extends true ? {
|
|
346
|
+
urlParams: UrlParams<Url>;
|
|
347
|
+
} : {}) => UseMutationResult<Result, Error, MutationArgs<Url, RequestSchema, undefined>>) & MutationHelpers<Url, Result> & EndpointHelper<Method, Url, RequestSchema, Response>;
|
|
298
348
|
}
|
|
299
349
|
export { ClientInstance }
|
|
300
350
|
export { ClientInstance as ClientInstance_alias_1 }
|
|
301
351
|
export { ClientInstance as ClientInstance_alias_2 }
|
|
302
352
|
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
} : {}) & (RequestSchema extends ZodObject ? {
|
|
306
|
-
data: z.input<RequestSchema>;
|
|
307
|
-
} : {}) & (QuerySchema extends ZodObject ? {
|
|
308
|
-
params: z.input<QuerySchema>;
|
|
309
|
-
} : {});
|
|
353
|
+
/** @deprecated Use MutationArgs instead */
|
|
354
|
+
declare type ClientMutationArgs<Url extends string = string, RequestSchema = unknown, QuerySchema = unknown> = MutationArgs<Url, RequestSchema, QuerySchema>;
|
|
310
355
|
export { ClientMutationArgs }
|
|
311
356
|
export { ClientMutationArgs as ClientMutationArgs_alias_1 }
|
|
312
357
|
export { ClientMutationArgs as ClientMutationArgs_alias_2 }
|
|
313
358
|
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: Util_FlatObject<ClientMutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
319
|
-
onError?: (queryClient: QueryClient, error: Error, variables: Util_FlatObject<ClientMutationArgs<Url, RequestSchema, QuerySchema>>, context: Context) => void | Promise<void>;
|
|
320
|
-
useKey?: UseKey;
|
|
321
|
-
}
|
|
322
|
-
export { ClientMutationDataConfig }
|
|
323
|
-
export { ClientMutationDataConfig as ClientMutationDataConfig_alias_1 }
|
|
324
|
-
|
|
325
|
-
declare type ClientOptions<ProcessResponse = unknown> = {
|
|
359
|
+
/**
|
|
360
|
+
* Options for creating a client instance.
|
|
361
|
+
*/
|
|
362
|
+
declare type ClientOptions = {
|
|
326
363
|
api: BuilderInstance;
|
|
327
364
|
defaults?: {
|
|
328
365
|
keyPrefix?: string[];
|
|
@@ -331,79 +368,249 @@ declare type ClientOptions<ProcessResponse = unknown> = {
|
|
|
331
368
|
};
|
|
332
369
|
export { ClientOptions }
|
|
333
370
|
export { ClientOptions as ClientOptions_alias_1 }
|
|
371
|
+
export { ClientOptions as ClientOptions_alias_2 }
|
|
334
372
|
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
} : {}) & (QuerySchema extends ZodObject ? {
|
|
338
|
-
params: z.input<QuerySchema>;
|
|
339
|
-
} : {});
|
|
373
|
+
/** @deprecated Use QueryArgs instead */
|
|
374
|
+
declare type ClientQueryArgs<Url extends string = string, QuerySchema = ZodObject, RequestSchema = undefined> = QueryArgs<Url, QuerySchema, RequestSchema>;
|
|
340
375
|
export { ClientQueryArgs }
|
|
341
376
|
export { ClientQueryArgs as ClientQueryArgs_alias_1 }
|
|
342
377
|
export { ClientQueryArgs as ClientQueryArgs_alias_2 }
|
|
343
378
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
}
|
|
347
|
-
export { ClientQueryConfig }
|
|
348
|
-
export { ClientQueryConfig as ClientQueryConfig_alias_1 }
|
|
349
|
-
|
|
350
|
-
declare type ClientQueryUrlParamsArgs<Url extends string = string> = UrlHasParams<Url> extends true ? {
|
|
351
|
-
urlParams: UrlParams<Url>;
|
|
352
|
-
} : {} | undefined;
|
|
379
|
+
/** @deprecated Use QueryUrlParamsArgs instead */
|
|
380
|
+
declare type ClientQueryUrlParamsArgs<Url extends string = string> = QueryUrlParamsArgs<Url>;
|
|
353
381
|
export { ClientQueryUrlParamsArgs }
|
|
354
382
|
export { ClientQueryUrlParamsArgs as ClientQueryUrlParamsArgs_alias_1 }
|
|
355
383
|
export { ClientQueryUrlParamsArgs as ClientQueryUrlParamsArgs_alias_2 }
|
|
356
384
|
|
|
385
|
+
/**
|
|
386
|
+
* Creates a mutation key generator for a given endpoint configuration.
|
|
387
|
+
*
|
|
388
|
+
* @param config - The endpoint configuration
|
|
389
|
+
* @param options - Optional query parameters with a default `processResponse` function
|
|
390
|
+
* @returns A function that generates mutation keys
|
|
391
|
+
*
|
|
392
|
+
* @example Basic usage:
|
|
393
|
+
* ```typescript
|
|
394
|
+
* const createMutationKey = createMutationKey(endpoint.config);
|
|
395
|
+
* const mutationKey = createMutationKey({ urlParams: { id: 123 } });
|
|
396
|
+
* ```
|
|
397
|
+
*
|
|
398
|
+
* @example Advanced usage with processResponse:
|
|
399
|
+
* ```ts
|
|
400
|
+
* const createMutationKey = createMutationKey(endpoint.config, {
|
|
401
|
+
* processResponse: (data) => {
|
|
402
|
+
* if (!data.success) {
|
|
403
|
+
* throw new Error(data.message);
|
|
404
|
+
* }
|
|
405
|
+
* return data.data;
|
|
406
|
+
* },
|
|
407
|
+
* });
|
|
408
|
+
* // We create a mutation that will be shared across the project for all passed userId
|
|
409
|
+
* const mutationKey = createMutationKey({ urlParams: { projectId: 123, userId: 'wildcard' } });
|
|
410
|
+
* ```
|
|
411
|
+
*/
|
|
412
|
+
declare function createMutationKey<Config extends AnyEndpointConfig, Options extends QueryParams<Config>, Url extends Config['url'] = Config['url'], HasParams extends UrlHasParams<Url> = UrlHasParams<Url>>(config: Config, options?: Options): (params: HasParams extends true ? {
|
|
413
|
+
urlParams: UrlParams<Url>;
|
|
414
|
+
} : {}) => Options['processResponse'] extends (...args: unknown[]) => infer Result ? DataTag<[Config['url']], Result, Error> : never;
|
|
415
|
+
export { createMutationKey }
|
|
416
|
+
export { createMutationKey as createMutationKey_alias_1 }
|
|
417
|
+
export { createMutationKey as createMutationKey_alias_2 }
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* Creates a query key generator for a given endpoint configuration.
|
|
421
|
+
*
|
|
422
|
+
* The returned object provides methods to generate query keys that can be used
|
|
423
|
+
* with TanStack Query for caching, invalidation, and data tagging.
|
|
424
|
+
*
|
|
425
|
+
* @param config - The endpoint configuration
|
|
426
|
+
* @param options - Query parameters including processResponse and key prefix/suffix
|
|
427
|
+
* @param isInfinite - Whether this is for an infinite query
|
|
428
|
+
* @returns An object with methods to generate query keys
|
|
429
|
+
*/
|
|
430
|
+
declare function createQueryKey<Config extends AnyEndpointConfig, Options extends QueryParams<Config>, IsInfinite extends boolean, Url extends Config['url'] = Config['url'], HasParams extends UrlHasParams<Url> = UrlHasParams<Url>>(config: Config, options: Options, _isInfinite: IsInfinite): QueryKeyCreatorResult<Config['querySchema'], Url, Options['processResponse'] extends (...args: any[]) => infer Result ? Result : never, IsInfinite, HasParams>;
|
|
431
|
+
export { createQueryKey }
|
|
432
|
+
export { createQueryKey as createQueryKey_alias_1 }
|
|
433
|
+
export { createQueryKey as createQueryKey_alias_2 }
|
|
434
|
+
|
|
435
|
+
/**
|
|
436
|
+
* Creates a client instance for making type-safe queries and mutations.
|
|
437
|
+
*
|
|
438
|
+
* @param options - Client configuration including the API builder and defaults
|
|
439
|
+
* @returns A client instance with query, infiniteQuery, and mutation methods
|
|
440
|
+
*
|
|
441
|
+
* @example
|
|
442
|
+
* ```typescript
|
|
443
|
+
* const api = createBuilder({ baseUrl: '/api' });
|
|
444
|
+
* const client = declareClient({ api });
|
|
445
|
+
*
|
|
446
|
+
* const getUser = client.query({
|
|
447
|
+
* method: 'GET',
|
|
448
|
+
* url: '/users/$id',
|
|
449
|
+
* responseSchema: UserSchema,
|
|
450
|
+
* });
|
|
451
|
+
*
|
|
452
|
+
* // In a component
|
|
453
|
+
* const { data } = useSuspenseQuery(getUser({ urlParams: { id: '123' } }));
|
|
454
|
+
* ```
|
|
455
|
+
*/
|
|
357
456
|
declare function declareClient<Options extends ClientOptions>({ api, defaults, }: Options): ClientInstance;
|
|
358
457
|
export { declareClient }
|
|
359
458
|
export { declareClient as declareClient_alias_1 }
|
|
459
|
+
export { declareClient as declareClient_alias_2 }
|
|
460
|
+
|
|
461
|
+
/**
|
|
462
|
+
* Helper type that attaches the endpoint to query/mutation results.
|
|
463
|
+
*/
|
|
464
|
+
declare type EndpointHelper<Method extends HttpMethod = HttpMethod, Url extends string = string, RequestSchema = unknown, ResponseSchema extends z.ZodType = z.ZodType, QuerySchema = unknown> = {
|
|
465
|
+
endpoint: ((params: Util_FlatObject<EndpointFunctionArgs<Url, QuerySchema, RequestSchema>>) => Promise<z.output<ResponseSchema>>) & {
|
|
466
|
+
config: BaseEndpointConfig<Method, Url, QuerySchema, ResponseSchema, RequestSchema>;
|
|
467
|
+
};
|
|
468
|
+
};
|
|
469
|
+
export { EndpointHelper }
|
|
470
|
+
export { EndpointHelper as EndpointHelper_alias_1 }
|
|
471
|
+
export { EndpointHelper as EndpointHelper_alias_2 }
|
|
360
472
|
|
|
473
|
+
/**
|
|
474
|
+
* Configuration for declaring an infinite query endpoint.
|
|
475
|
+
*/
|
|
476
|
+
declare type InfiniteQueryConfig<Method = HttpMethod, Url = string, QuerySchema extends ZodObject = ZodObject, Response extends ZodType = ZodType, PageResult = z.output<Response>, Result = InfiniteData<PageResult>, RequestSchema = unknown> = {
|
|
477
|
+
method: Method;
|
|
478
|
+
url: Url;
|
|
479
|
+
querySchema: QuerySchema;
|
|
480
|
+
responseSchema: Response;
|
|
481
|
+
requestSchema?: RequestSchema;
|
|
482
|
+
processResponse?: (data: z.output<Response>) => PageResult;
|
|
483
|
+
select?: (data: InfiniteData<PageResult>) => Result;
|
|
484
|
+
getNextPageParam: (lastPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema> | undefined;
|
|
485
|
+
getPreviousPageParam?: (firstPage: PageResult, allPages: PageResult[], lastPageParam: z.infer<QuerySchema> | undefined, allPageParams: z.infer<QuerySchema>[] | undefined) => z.input<QuerySchema>;
|
|
486
|
+
initialPageParam?: z.input<QuerySchema>;
|
|
487
|
+
};
|
|
488
|
+
export { InfiniteQueryConfig }
|
|
489
|
+
export { InfiniteQueryConfig as InfiniteQueryConfig_alias_1 }
|
|
490
|
+
export { InfiniteQueryConfig as InfiniteQueryConfig_alias_2 }
|
|
491
|
+
|
|
492
|
+
/**
|
|
493
|
+
* Options for infinite query configuration.
|
|
494
|
+
*/
|
|
361
495
|
declare type InfiniteQueryOptions<Config extends BaseEndpointConfig<HttpMethod, string, ZodObject>, Res = any> = {
|
|
362
496
|
keyPrefix?: string[];
|
|
363
497
|
keySuffix?: string[];
|
|
364
498
|
processResponse: (data: z.infer<Config['responseSchema']>) => Res;
|
|
365
499
|
onFail?: (err: unknown) => void;
|
|
366
500
|
getNextPageParam: (lastPage: Res, allPages: Res[], lastPageParam: z.infer<Config['querySchema']> | undefined, allPageParams: z.infer<Config['querySchema']>[] | undefined) => z.input<Config['querySchema']> | z.infer<Config['querySchema']> | undefined;
|
|
501
|
+
getPreviousPageParam?: (firstPage: Res, allPages: Res[], lastPageParam: z.infer<Config['querySchema']> | undefined, allPageParams: z.infer<Config['querySchema']>[] | undefined) => z.input<Config['querySchema']>;
|
|
367
502
|
initialPageParam?: z.input<Config['querySchema']> | z.infer<Config['querySchema']>;
|
|
368
503
|
};
|
|
369
504
|
export { InfiniteQueryOptions }
|
|
370
505
|
export { InfiniteQueryOptions as InfiniteQueryOptions_alias_1 }
|
|
506
|
+
export { InfiniteQueryOptions as InfiniteQueryOptions_alias_2 }
|
|
371
507
|
|
|
508
|
+
/**
|
|
509
|
+
* Creates infinite query options for a given endpoint.
|
|
510
|
+
*
|
|
511
|
+
* Returns a function that generates TanStack Query infinite options when called with params.
|
|
512
|
+
* The returned function also has helper methods attached (use, useSuspense, invalidate, etc.)
|
|
513
|
+
*
|
|
514
|
+
* @param endpoint - The navios endpoint to create infinite query options for
|
|
515
|
+
* @param options - Infinite query configuration including processResponse and pagination params
|
|
516
|
+
* @param baseQuery - Optional base query options to merge
|
|
517
|
+
* @returns A function that generates infinite query options with attached helpers
|
|
518
|
+
*/
|
|
372
519
|
declare function makeInfiniteQueryOptions<Config extends AnyEndpointConfig, Options extends InfiniteQueryOptions<Config>, BaseQuery extends Omit<UseInfiniteQueryOptions<ReturnType<Options['processResponse']>, Error, any>, 'queryKey' | 'queryFn' | 'getNextPageParam' | 'initialPageParam' | 'placeholderData' | 'throwOnError'>>(endpoint: AbstractEndpoint<Config>, options: Options, baseQuery?: BaseQuery): {
|
|
373
|
-
(params:
|
|
520
|
+
(params: QueryArgs<Config["url"], Config["querySchema"]>): Options["processResponse"] extends (...args: any[]) => infer Result ? UseSuspenseInfiniteQueryOptions<Result, Error, BaseQuery["select"] extends (...args: any[]) => infer T ? T : InfiniteData<Result>> : never;
|
|
374
521
|
queryKey: QueryKeyCreatorResult_2<Config["querySchema"], Config["url"], Options["processResponse"] extends (...args: any[]) => infer Result ? Result : never, true, UrlHasParams<Config["url"]>>;
|
|
375
|
-
use(params:
|
|
376
|
-
useSuspense(params:
|
|
377
|
-
invalidate(queryClient: QueryClient, params:
|
|
378
|
-
invalidateAll(queryClient: QueryClient, params:
|
|
522
|
+
use(params: QueryArgs<Config["url"], Config["querySchema"]>): UseInfiniteQueryResult<BaseQuery["select"] extends (...args: any[]) => infer T ? T : InfiniteData<unknown, unknown>, Error>;
|
|
523
|
+
useSuspense(params: QueryArgs<Config["url"], Config["querySchema"]>): UseSuspenseInfiniteQueryResult<BaseQuery["select"] extends (...args: any[]) => infer T ? T : InfiniteData<unknown, unknown>, Error>;
|
|
524
|
+
invalidate(queryClient: QueryClient, params: QueryArgs<Config["url"], Config["querySchema"]>): Promise<void>;
|
|
525
|
+
invalidateAll(queryClient: QueryClient, params: QueryArgs<Config["url"], Config["querySchema"]>): Promise<void>;
|
|
379
526
|
};
|
|
380
527
|
export { makeInfiniteQueryOptions }
|
|
381
528
|
export { makeInfiniteQueryOptions as makeInfiniteQueryOptions_alias_1 }
|
|
529
|
+
export { makeInfiniteQueryOptions as makeInfiniteQueryOptions_alias_2 }
|
|
382
530
|
|
|
383
|
-
|
|
384
|
-
|
|
531
|
+
/**
|
|
532
|
+
* Creates a mutation hook for a given endpoint.
|
|
533
|
+
*
|
|
534
|
+
* Returns a function that when called returns a TanStack Query mutation result.
|
|
535
|
+
* The returned function also has helper methods attached (mutationKey, useIsMutating).
|
|
536
|
+
*
|
|
537
|
+
* @param endpoint - The navios endpoint to create a mutation hook for
|
|
538
|
+
* @param options - Mutation configuration including processResponse and callbacks
|
|
539
|
+
* @returns A hook function that returns mutation result with attached helpers
|
|
540
|
+
*/
|
|
541
|
+
declare function makeMutation<Config extends AnyEndpointConfig, TData = unknown, TVariables extends NaviosZodRequest<Config> = NaviosZodRequest<Config>, TResponse = z.output<Config['responseSchema']>, TContext = unknown, UseKey extends boolean = false>(endpoint: AbstractEndpoint<Config>, options: MutationParams<Config, TData, TVariables, TResponse, TContext, UseKey>): {
|
|
542
|
+
(keyParams: UseKey extends true ? UrlHasParams<Config["url"]> extends true ? UrlParams<Config["url"]> : never : never): UseMutationResult<TData, Error, NaviosZodRequest<Config>>;
|
|
385
543
|
useIsMutating(keyParams: UseKey extends true ? UrlHasParams<Config["url"]> extends true ? UrlParams<Config["url"]> : never : never): boolean;
|
|
386
544
|
mutationKey: (params: UrlHasParams<Config["url"]> extends infer T ? T extends UrlHasParams<Config["url"]> ? T extends true ? {
|
|
387
545
|
urlParams: UrlParams<Config["url"]>;
|
|
388
|
-
} : {} : never : never) => [Config["url"]] & {
|
|
389
|
-
[dataTagSymbol]:
|
|
546
|
+
} : {} : never : never) => ProcessResponseFunction_2<TData, TResponse> extends (...args: unknown[]) => infer Result ? [Config["url"]] & {
|
|
547
|
+
[dataTagSymbol]: Result;
|
|
390
548
|
[dataTagErrorSymbol]: Error;
|
|
391
|
-
};
|
|
549
|
+
} : never;
|
|
392
550
|
};
|
|
393
551
|
export { makeMutation }
|
|
394
552
|
export { makeMutation as makeMutation_alias_1 }
|
|
553
|
+
export { makeMutation as makeMutation_alias_2 }
|
|
395
554
|
|
|
396
|
-
|
|
397
|
-
|
|
555
|
+
/**
|
|
556
|
+
* Creates query options for a given endpoint.
|
|
557
|
+
*
|
|
558
|
+
* Returns a function that generates TanStack Query options when called with params.
|
|
559
|
+
* The returned function also has helper methods attached (use, useSuspense, invalidate, etc.)
|
|
560
|
+
*
|
|
561
|
+
* @param endpoint - The navios endpoint to create query options for
|
|
562
|
+
* @param options - Query configuration including processResponse
|
|
563
|
+
* @param baseQuery - Optional base query options to merge
|
|
564
|
+
* @returns A function that generates query options with attached helpers
|
|
565
|
+
*/
|
|
566
|
+
declare function makeQueryOptions<Config extends AnyEndpointConfig, Options extends QueryParams<Config>, BaseQuery extends Omit<UseQueryOptions<ReturnType<Options['processResponse']>, Error, any>, 'queryKey' | 'queryFn' | 'getNextPageParam' | 'initialPageParam' | 'enabled' | 'throwOnError' | 'placeholderData'>>(endpoint: AbstractEndpoint<Config>, options: Options, baseQuery?: BaseQuery): {
|
|
567
|
+
(params: QueryArgs<Config["url"], Config["querySchema"]>): Options["processResponse"] extends (...args: any[]) => infer Result ? UseSuspenseQueryOptions<Result, Error, BaseQuery["select"] extends (...args: any[]) => infer T ? T : Result, DataTag<Split<Config["url"], "/">, Result, Error>> : never;
|
|
398
568
|
queryKey: QueryKeyCreatorResult_2<Config["querySchema"], Config["url"], Options["processResponse"] extends (...args: any[]) => infer Result ? Result : never, false, UrlHasParams<Config["url"]>>;
|
|
399
|
-
use(params:
|
|
400
|
-
useSuspense(params:
|
|
401
|
-
invalidate(queryClient: QueryClient, params:
|
|
402
|
-
invalidateAll(queryClient: QueryClient, params:
|
|
569
|
+
use(params: QueryArgs<Config["url"], Config["querySchema"]>): UseQueryResult<NoInfer_2<BaseQuery["select"] extends (...args: any[]) => infer T ? T : unknown>, Error>;
|
|
570
|
+
useSuspense(params: QueryArgs<Config["url"], Config["querySchema"]>): UseSuspenseQueryResult<BaseQuery["select"] extends (...args: any[]) => infer T ? T : unknown, Error>;
|
|
571
|
+
invalidate(queryClient: QueryClient, params: QueryArgs<Config["url"], Config["querySchema"]>): Promise<void>;
|
|
572
|
+
invalidateAll(queryClient: QueryClient, params: QueryArgs<Config["url"], Config["querySchema"]>): Promise<void>;
|
|
403
573
|
};
|
|
404
574
|
export { makeQueryOptions }
|
|
405
575
|
export { makeQueryOptions as makeQueryOptions_alias_1 }
|
|
576
|
+
export { makeQueryOptions as makeQueryOptions_alias_2 }
|
|
406
577
|
|
|
578
|
+
/**
|
|
579
|
+
* Arguments for mutation functions based on URL params, request schema, and query schema.
|
|
580
|
+
*/
|
|
581
|
+
declare type MutationArgs<Url extends string = string, RequestSchema = unknown, QuerySchema = unknown> = (UrlHasParams<Url> extends true ? {
|
|
582
|
+
urlParams: UrlParams<Url>;
|
|
583
|
+
} : {}) & (RequestSchema extends ZodObject ? {
|
|
584
|
+
data: z.input<RequestSchema>;
|
|
585
|
+
} : {}) & (QuerySchema extends ZodObject ? {
|
|
586
|
+
params: z.input<QuerySchema>;
|
|
587
|
+
} : {});
|
|
588
|
+
export { MutationArgs }
|
|
589
|
+
export { MutationArgs as MutationArgs_alias_1 }
|
|
590
|
+
export { MutationArgs as MutationArgs_alias_2 }
|
|
591
|
+
|
|
592
|
+
/**
|
|
593
|
+
* Configuration for declaring a mutation endpoint.
|
|
594
|
+
*/
|
|
595
|
+
declare interface MutationConfig<Method extends 'POST' | 'PUT' | 'PATCH' | 'DELETE' = 'POST' | 'PUT' | 'PATCH' | 'DELETE', Url extends string = string, RequestSchema = Method extends 'DELETE' ? never : ZodObject, QuerySchema = unknown, Response extends ZodType = ZodType, ReqResult = z.output<Response>, Result = unknown, Context = unknown, UseKey extends boolean = false> {
|
|
596
|
+
method: Method;
|
|
597
|
+
url: Url;
|
|
598
|
+
querySchema?: QuerySchema;
|
|
599
|
+
responseSchema: Response;
|
|
600
|
+
requestSchema?: RequestSchema;
|
|
601
|
+
processResponse: ProcessResponseFunction<Result, ReqResult>;
|
|
602
|
+
useContext?: () => Context;
|
|
603
|
+
onSuccess?: (queryClient: QueryClient, data: NoInfer<Result>, variables: MutationArgs<Url, RequestSchema, QuerySchema>, context: Context) => void | Promise<void>;
|
|
604
|
+
onError?: (queryClient: QueryClient, error: Error, variables: MutationArgs<Url, RequestSchema, QuerySchema>, context: Context) => void | Promise<void>;
|
|
605
|
+
useKey?: UseKey;
|
|
606
|
+
}
|
|
607
|
+
export { MutationConfig }
|
|
608
|
+
export { MutationConfig as MutationConfig_alias_1 }
|
|
609
|
+
export { MutationConfig as MutationConfig_alias_2 }
|
|
610
|
+
|
|
611
|
+
/**
|
|
612
|
+
* Helper methods attached to mutation hooks.
|
|
613
|
+
*/
|
|
407
614
|
declare type MutationHelpers<Url extends string, Result = unknown> = UrlHasParams<Url> extends true ? {
|
|
408
615
|
mutationKey: (params: UrlParams<Url>) => DataTag<[Url], Result, Error>;
|
|
409
616
|
useIsMutating: (keyParams: UrlParams<Url>) => boolean;
|
|
@@ -415,88 +622,145 @@ export { MutationHelpers }
|
|
|
415
622
|
export { MutationHelpers as MutationHelpers_alias_1 }
|
|
416
623
|
export { MutationHelpers as MutationHelpers_alias_2 }
|
|
417
624
|
|
|
625
|
+
/** @deprecated Use createMutationKey instead */
|
|
626
|
+
declare const mutationKeyCreator: typeof createMutationKey;
|
|
627
|
+
export { mutationKeyCreator }
|
|
628
|
+
export { mutationKeyCreator as mutationKeyCreator_alias_1 }
|
|
629
|
+
export { mutationKeyCreator as mutationKeyCreator_alias_2 }
|
|
630
|
+
|
|
418
631
|
/**
|
|
419
|
-
*
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
*
|
|
425
|
-
*
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
*
|
|
432
|
-
* ```typescript
|
|
433
|
-
* const createMutationKey = mutationKeyCreator(endpoint.config);
|
|
434
|
-
* const mutationKey = createMutationKey({ urlParams: { id: 123 } });
|
|
435
|
-
* ```
|
|
436
|
-
*
|
|
437
|
-
* @example Advanced usage:
|
|
438
|
-
* ```ts
|
|
439
|
-
* const createMutationKey = mutationKeyCreator(endpoint.config, {
|
|
440
|
-
* processResponse: (data) => {
|
|
441
|
-
* if (!data.success) {
|
|
442
|
-
* throw new Error(data.message);
|
|
443
|
-
* }
|
|
444
|
-
* return data.data;
|
|
445
|
-
* },
|
|
446
|
-
* });
|
|
447
|
-
* // We create a mutation that will be shared across the project for all passed userId
|
|
448
|
-
* const mutationKey = createMutationKey({ urlParams: { projectId: 123, userId: 'wildcard' } });
|
|
632
|
+
* Base parameters for mutation configuration.
|
|
633
|
+
*/
|
|
634
|
+
declare interface MutationParams<Config extends AnyEndpointConfig, TData = unknown, TVariables = NaviosZodRequest<Config>, TResponse = z.output<Config['responseSchema']>, TContext = unknown, UseKey extends boolean = false> extends Omit<UseMutationOptions<TData, Error, TVariables>, 'mutationKey' | 'mutationFn' | 'onSuccess' | 'onError' | 'scope'> {
|
|
635
|
+
processResponse: ProcessResponseFunction<TData, TResponse>;
|
|
636
|
+
/**
|
|
637
|
+
* React hooks that will prepare the context for the mutation onSuccess and onError
|
|
638
|
+
* callbacks. This is useful for when you want to use the context in the callbacks
|
|
639
|
+
*/
|
|
640
|
+
useContext?: () => TContext;
|
|
641
|
+
onSuccess?: (queryClient: QueryClient, data: TData, variables: TVariables, context: TContext) => void | Promise<void>;
|
|
642
|
+
onError?: (queryClient: QueryClient, err: unknown, variables: TVariables, context: TContext) => void | Promise<void>;
|
|
643
|
+
/**
|
|
644
|
+
* If true, we will create a mutation key that can be shared across the project.
|
|
449
645
|
*/
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
646
|
+
useKey?: UseKey;
|
|
647
|
+
keyPrefix?: UseKey extends true ? UrlHasParams<Config['url']> extends true ? string[] : never : never;
|
|
648
|
+
keySuffix?: UseKey extends true ? UrlHasParams<Config['url']> extends true ? string[] : never : never;
|
|
649
|
+
}
|
|
650
|
+
export { MutationParams }
|
|
651
|
+
export { MutationParams as MutationParams_alias_1 }
|
|
652
|
+
export { MutationParams as MutationParams_alias_2 }
|
|
653
|
+
|
|
654
|
+
/**
|
|
655
|
+
* Function type for processing API responses before returning to the caller.
|
|
656
|
+
*/
|
|
657
|
+
declare type ProcessResponseFunction<TData = unknown, TVariables = unknown> = (variables: TVariables) => Promise<TData> | TData;
|
|
658
|
+
export { ProcessResponseFunction }
|
|
659
|
+
export { ProcessResponseFunction as ProcessResponseFunction_alias_1 }
|
|
660
|
+
export { ProcessResponseFunction as ProcessResponseFunction_alias_2 }
|
|
661
|
+
|
|
662
|
+
/**
|
|
663
|
+
* Arguments for query functions based on URL params and query schema.
|
|
664
|
+
*/
|
|
665
|
+
declare type QueryArgs<Url extends string = string, QuerySchema = ZodObject, RequestSchema = undefined> = (UrlHasParams<Url> extends true ? {
|
|
666
|
+
urlParams: UrlParams<Url>;
|
|
667
|
+
} : {}) & (QuerySchema extends ZodObject ? {
|
|
668
|
+
params: z.input<QuerySchema>;
|
|
669
|
+
} : {}) & (RequestSchema extends ZodType ? {
|
|
670
|
+
data: z.input<RequestSchema>;
|
|
671
|
+
} : {});
|
|
672
|
+
export { QueryArgs }
|
|
673
|
+
export { QueryArgs as QueryArgs_alias_1 }
|
|
674
|
+
export { QueryArgs as QueryArgs_alias_2 }
|
|
675
|
+
|
|
676
|
+
/**
|
|
677
|
+
* Configuration for declaring a query endpoint.
|
|
678
|
+
*/
|
|
679
|
+
declare interface QueryConfig<Method = HttpMethod, Url = string, QuerySchema = ZodObject, Response extends ZodType = ZodType, Result = z.output<Response>, RequestSchema = unknown> {
|
|
680
|
+
method: Method;
|
|
681
|
+
url: Url;
|
|
682
|
+
querySchema?: QuerySchema;
|
|
683
|
+
responseSchema: Response;
|
|
684
|
+
requestSchema?: RequestSchema;
|
|
685
|
+
processResponse?: (data: z.output<Response>) => Result;
|
|
686
|
+
}
|
|
687
|
+
export { QueryConfig }
|
|
688
|
+
export { QueryConfig as QueryConfig_alias_1 }
|
|
689
|
+
export { QueryConfig as QueryConfig_alias_2 }
|
|
690
|
+
|
|
691
|
+
/**
|
|
692
|
+
* Helper methods attached to query options.
|
|
693
|
+
*/
|
|
694
|
+
declare type QueryHelpers<Url extends string, QuerySchema extends ZodObject | undefined = undefined, Result = undefined, IsInfinite extends boolean = false, RequestSchema extends ZodType | undefined = undefined> = {
|
|
695
|
+
queryKey: QueryKeyCreatorResult<QuerySchema, Url, Result, IsInfinite>;
|
|
696
|
+
use: (params: Util_FlatObject<QueryArgs<Url, QuerySchema, RequestSchema>>) => UseQueryResult<Result, Error>;
|
|
697
|
+
useSuspense: (params: Util_FlatObject<QueryArgs<Url, QuerySchema, RequestSchema>>) => UseSuspenseQueryResult<Result, Error>;
|
|
698
|
+
invalidate: (queryClient: QueryClient, params: Util_FlatObject<QueryArgs<Url, QuerySchema, RequestSchema>>) => () => Promise<void>;
|
|
699
|
+
invalidateAll: (queryClient: QueryClient, params: Util_FlatObject<QueryUrlParamsArgs<Url>>) => () => Promise<void>;
|
|
700
|
+
};
|
|
701
|
+
export { QueryHelpers }
|
|
702
|
+
export { QueryHelpers as QueryHelpers_alias_1 }
|
|
703
|
+
export { QueryHelpers as QueryHelpers_alias_2 }
|
|
704
|
+
|
|
705
|
+
/** @deprecated Use createQueryKey instead */
|
|
706
|
+
declare const queryKeyCreator: typeof createQueryKey;
|
|
707
|
+
export { queryKeyCreator }
|
|
708
|
+
export { queryKeyCreator as queryKeyCreator_alias_1 }
|
|
709
|
+
export { queryKeyCreator as queryKeyCreator_alias_2 }
|
|
710
|
+
|
|
711
|
+
/**
|
|
712
|
+
* Result type from the query key creator function.
|
|
713
|
+
*/
|
|
714
|
+
declare type QueryKeyCreatorResult<QuerySchema = undefined, Url extends string = string, Result = unknown, IsInfinite extends boolean = false, HasParams extends UrlHasParams<Url> = UrlHasParams<Url>> = {
|
|
715
|
+
template: Split<Url, '/'>;
|
|
716
|
+
dataTag: (params: (HasParams extends true ? {
|
|
717
|
+
urlParams: UrlParams<Url>;
|
|
718
|
+
} : {}) & (QuerySchema extends ZodObject ? {
|
|
719
|
+
params: z.input<QuerySchema>;
|
|
720
|
+
} : {})) => DataTag<Split<Url, '/'>, IsInfinite extends true ? InfiniteData<Result> : Result, Error>;
|
|
721
|
+
filterKey: (params: HasParams extends true ? {
|
|
722
|
+
urlParams: UrlParams<Url>;
|
|
723
|
+
} : {}) => DataTag<Split<Url, '/'>, IsInfinite extends true ? InfiniteData<Result> : Result, Error>;
|
|
724
|
+
bindToUrl: (params: (HasParams extends true ? {
|
|
725
|
+
urlParams: UrlParams<Url>;
|
|
726
|
+
} : {}) & (QuerySchema extends ZodObject ? {
|
|
727
|
+
params: z.infer<QuerySchema>;
|
|
728
|
+
} : {})) => string;
|
|
729
|
+
};
|
|
730
|
+
export { QueryKeyCreatorResult }
|
|
731
|
+
export { QueryKeyCreatorResult as QueryKeyCreatorResult_alias_1 }
|
|
732
|
+
export { QueryKeyCreatorResult as QueryKeyCreatorResult_alias_2 }
|
|
733
|
+
|
|
734
|
+
/**
|
|
735
|
+
* Base parameters for query configuration.
|
|
736
|
+
*/
|
|
737
|
+
declare type QueryParams<Config extends AnyEndpointConfig, Res = any> = {
|
|
738
|
+
keyPrefix?: string[];
|
|
739
|
+
keySuffix?: string[];
|
|
740
|
+
onFail?: (err: unknown) => void;
|
|
741
|
+
processResponse: (data: z.output<Config['responseSchema']>) => Res;
|
|
742
|
+
};
|
|
743
|
+
export { QueryParams }
|
|
744
|
+
export { QueryParams as QueryParams_alias_1 }
|
|
745
|
+
export { QueryParams as QueryParams_alias_2 }
|
|
746
|
+
|
|
747
|
+
/**
|
|
748
|
+
* Arguments containing only URL params (for invalidateAll operations).
|
|
749
|
+
*/
|
|
750
|
+
declare type QueryUrlParamsArgs<Url extends string = string> = UrlHasParams<Url> extends true ? {
|
|
751
|
+
urlParams: UrlParams<Url>;
|
|
752
|
+
} : {} | undefined;
|
|
753
|
+
export { QueryUrlParamsArgs }
|
|
754
|
+
export { QueryUrlParamsArgs as QueryUrlParamsArgs_alias_1 }
|
|
755
|
+
export { QueryUrlParamsArgs as QueryUrlParamsArgs_alias_2 }
|
|
756
|
+
|
|
757
|
+
/**
|
|
758
|
+
* Splits a string by a delimiter into a tuple type.
|
|
759
|
+
* Used for parsing URL paths into segments for query keys.
|
|
760
|
+
*/
|
|
761
|
+
declare type Split<S extends string, D extends string> = string extends S ? string[] : S extends '' ? [] : S extends `${infer T}${D}${infer U}` ? [T, ...Split<U, D>] : [S];
|
|
762
|
+
export { Split }
|
|
763
|
+
export { Split as Split_alias_1 }
|
|
764
|
+
export { Split as Split_alias_2 }
|
|
765
|
+
|
|
766
|
+
export { }
|