@pixotope/query 0.5.0 → 0.7.0

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/dist/index.d.cts CHANGED
@@ -4,8 +4,8 @@ import { ZMQClient, TSocketServerCallOptions, ZMQProxyWSClient } from '@pixotope
4
4
  interface QueryOptions<TData = unknown, TError = unknown, TParams = void, TSelectData = TData, Stateless extends true | undefined = undefined> {
5
5
  queryFn: (params: TParams | undefined | void) => Promise<TData>;
6
6
  onSuccess?: (data: TData) => Promise<void> | void;
7
- onError?: (error: TError) => Promise<void> | void;
8
- onSettled?: (data: TData | undefined, error: TError | undefined) => Promise<void> | void;
7
+ onError?: (error: TQueryError<TError>) => Promise<void> | void;
8
+ onSettled?: (data: TData | undefined, error: TQueryError<TError> | undefined) => Promise<void> | void;
9
9
  timeout?: number;
10
10
  enabled?: boolean;
11
11
  initialData?: TData | Functionize<TData>;
@@ -22,90 +22,46 @@ type WithData$1<TData> = {
22
22
  data: TData | undefined;
23
23
  };
24
24
  type TQueryKey = readonly any[];
25
+ type TQueryError<TError> = TError | Error | null;
25
26
  type UseQueryResult<TData = unknown, TError = unknown, TParams = void, TSelectData = TData, Stateless extends true | undefined = undefined> = {
26
- error: TError | null;
27
+ error: TQueryError<TError>;
27
28
  status: QueryStatus;
28
29
  refetch: (params: TParams | void | undefined) => Promise<void>;
29
30
  reset: () => void;
30
31
  } & (Stateless extends true ? {} : WithData$1<TSelectData>);
31
32
  declare const useQuery: <TData = unknown, TError = unknown, TParams = void, TSelected = TData, Stateless extends true | undefined = undefined>({ queryFn, ...options }: QueryOptions<TData, TError, TParams, TSelected, Stateless>) => UseQueryResult<TSelected, TError, TParams, TSelected, Stateless>;
32
33
 
33
- type MutationFunction<TData = unknown, TParams = unknown> = (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
34
- interface MutationOptions<TData = unknown, TError = unknown, TParams = void> {
35
- mutationFn: MutationFunction<TData, TParams>;
34
+ type MutationFunction<TData = unknown, TParams = unknown, TMetadata = unknown> = (params: TParams, meta?: TMetadata) => Promise<TData>;
35
+ interface MutationOptions<TData = unknown, TError = unknown, TParams = void, TMetadata = unknown> {
36
+ mutationFn: MutationFunction<TData, TParams, TMetadata>;
36
37
  params?: TParams;
37
- onSuccess?: (data: TData, variables: TParams) => Promise<unknown> | unknown;
38
- onError?: (error: TError, variables: TParams) => Promise<unknown> | unknown;
39
- onSettled?: (data: TData | undefined, error: TError | null, variables: TParams) => Promise<unknown> | unknown;
38
+ onSuccess?: (data: TData, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
39
+ onError?: (error: TMutationError<TError>, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
40
+ onSettled?: (data: TData | undefined, error: TMutationError<TError> | null, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
40
41
  compareOrThrow?: (result: TData | TError) => boolean;
41
42
  timeout?: number;
42
- prepareParams?: (variables: TParams, defaults?: TParams) => TParams;
43
+ prepareParams?: (variables: TParams, defaults?: TParams, meta?: TMetadata) => TParams;
43
44
  }
44
- interface MutateOptions<TData = unknown, TError = unknown, TParams = void> {
45
- onSuccess?: (data: TData, variables: TParams) => void;
46
- onError?: (error: TError, variables: TParams) => void;
47
- onSettled?: (data: TData | undefined, error: TError | null, variables: TParams) => void;
45
+ type TMutationError<TError> = TError | Error | null;
46
+ interface MutateOptions<TData = unknown, TError = unknown, TParams = void, TMetadata = unknown> {
47
+ onSuccess?: (data: TData, variables: TParams, meta?: TMetadata) => void;
48
+ onError?: (error: TMutationError<TError>, variables: TParams, meta?: TMetadata) => void;
49
+ onSettled?: (data: TData | undefined, error: TMutationError<TError> | null, variables: TParams, meta?: TMetadata) => void;
48
50
  }
49
51
  type MutationStatus = "idle" | "loading" | "success" | "error";
50
52
  declare class ComparisonFailError<TPayload = unknown> extends Error {
51
53
  readonly payload: TPayload;
52
54
  constructor(message: string, payload: TPayload);
53
55
  }
54
- /**
55
- * `useMutation` is a hook that allows you to perform a mutation/push updates to the services while
56
- * providing extensive API to tap into the status and results of the mutation.
57
- * @param mutationFn The mutation function to be called when the `mutate` function is called.
58
- * `useMutation` does not care about what the function does, all it needs it a function that returns
59
- * a promise.
60
- * @param options Options to configure the mutation.
61
- * @returns An object with the following properties:
62
- * - `mutateAsync`: A function that takes in the variables and returns a promise that resolves to the
63
- * result of the mutation. This function can be awaited to get the result of the mutation. Callbacks can
64
- * be passed to this function to be called when the mutation is successful or when it fails. It's good idea
65
- * to wrap this function in a try/catch block.
66
- * - `mutate`: A function that takes in the variables and returns nothing. This function does not
67
- * return a promise. Callbacks can be passed to this function to be called when the mutation is
68
- * successful or when it fails.
69
- * - `status`: The status of the mutation. Can be one of `idle`, `loading`, `success` or `error`.
70
- * - `result`: The result of the mutation. This is undefined until the mutation is successful.
71
- * - `reset`: A function that resets the mutation to the initial state.
72
- * - `error`: The error object if the mutation has failed.
73
- * @example
74
- * ```typescript
75
- * const mutationRes = useMutation({
76
- * mutationFn: (variables) => {
77
- * return ZMQHelper.callSomethingAsync(variables)
78
- * },
79
- * onSuccess: (data) => {
80
- * // do something with the result
81
- * },
82
- * onError: (error) => {
83
- * // do something with the error
84
- * },
85
- * onSettled: (data, error) => {
86
- * // do something when the mutation is done
87
- * }});
88
- *
89
- * // call the mutation
90
- * const res = await mutationRes.mutateAsync({ foo: "bar" });
91
- * // OR
92
- * mutationRes.mutate({ foo: "bar" }, {
93
- * onSuccess: (data) => {
94
- * // do something with the result
95
- * // for example show a toast message
96
- * // stop local loading state
97
- * });
98
- * ```
99
- */
100
- declare const useMutation: <TData = unknown, TError = unknown, TParams = void>(options: MutationOptions<TData, TError, TParams>) => {
101
- mutateAsync: (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
56
+ declare const useMutation: <TData = unknown, TError = unknown, TParams = void, TMetadata = unknown>(options: MutationOptions<TData, TError, TParams, TMetadata>) => {
57
+ mutateAsync: (params: TParams, meta?: TMetadata) => Promise<TData>;
102
58
  status: MutationStatus;
103
59
  result: TData | undefined;
104
- mutate: (variables: TParams, options?: MutateOptions<TData, TError, TParams> & {
105
- overrideTargetMachine?: string;
60
+ mutate: (variables: TParams, options?: MutateOptions<TData, TError, TParams, TMetadata> & {
61
+ meta?: TMetadata;
106
62
  }) => void;
107
63
  reset: () => void;
108
- error: TError | null;
64
+ error: TMutationError<TError>;
109
65
  };
110
66
 
111
67
  type MutationInfo<TData, TError, TParams> = {
@@ -114,42 +70,38 @@ type MutationInfo<TData, TError, TParams> = {
114
70
  params: TParams;
115
71
  };
116
72
  type FnToParamsBase = Record<string, MutationInfo<unknown, unknown, unknown>>;
117
- type TPromiseFunction<TResponse, TParams> = (args: Omit<ZMQClient.Call<TResponse, {
73
+ type TPromiseFunction<TResponse, TParams, TExtraParams> = (args: Omit<ZMQClient.Call<TResponse, {
118
74
  functionName: string;
119
75
  parameters: TParams;
120
76
  options?: Omit<TSocketServerCallOptions, "toCallIfNoResponse">;
121
- }>, "id">) => Promise<TResponse>;
122
- declare const useCallMutationBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown>(promiseFunc: TPromiseFunction<TData, TParams>, functionName: keyof TFnToParams, service: string, options?: Omit<MutationOptions<TData, TError, TParams>, "mutationFn"> & {
123
- avoidTimeout?: boolean;
124
- customTimeout?: number;
125
- }) => {
126
- mutateAsync: (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
77
+ }>, "id"> & {
78
+ meta?: TExtraParams;
79
+ }) => Promise<TResponse>;
80
+ declare const useCallMutationBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TMetadata = unknown>(promiseFunc: TPromiseFunction<TData, TParams, TMetadata>, functionName: keyof TFnToParams, service: (meta?: TMetadata) => string, options?: Omit<MutationOptions<TData, TError, TParams, TMetadata>, "mutationFn">) => {
81
+ mutateAsync: (params: TParams, meta?: TMetadata | undefined) => Promise<TData>;
127
82
  status: "idle" | "loading" | "success" | "error";
128
83
  result: TData | undefined;
129
- mutate: (variables: TParams, options?: (MutateOptions<TData, TError, TParams> & {
130
- overrideTargetMachine?: string;
84
+ mutate: (variables: TParams, options?: (MutateOptions<TData, TError, TParams, TMetadata> & {
85
+ meta?: TMetadata | undefined;
131
86
  }) | undefined) => void;
132
87
  reset: () => void;
133
- error: TError | null;
88
+ error: Error | TError | null;
134
89
  };
135
- declare function buildMutationHook<TFnToParams extends FnToParamsBase>(promiseFunc: TPromiseFunction<unknown, unknown>, genTargetService: (machine: string | undefined) => string): <TFn extends keyof TFnToParams>(func: TFn, options?: Parameters<typeof useCallMutationBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"]>>[3] & {
136
- machine?: string;
137
- }) => {
138
- mutateAsync: (params: TFnToParams[TFn]["params"], overrideTargetMachine?: string) => Promise<TFnToParams[TFn]["data"]>;
90
+ declare function buildMutationHook<TFnToParams extends FnToParamsBase, TMetadata = unknown>(promiseFunc: TPromiseFunction<unknown, unknown, unknown>, genTargetService: (meta?: TMetadata) => string): <TFn extends keyof TFnToParams>(func: TFn, options?: Parameters<typeof useCallMutationBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TMetadata>>[3]) => {
91
+ mutateAsync: (params: TFnToParams[TFn]["params"], meta?: TMetadata | undefined) => Promise<TFnToParams[TFn]["data"]>;
139
92
  status: "idle" | "loading" | "success" | "error";
140
93
  result: TFnToParams[TFn]["data"] | undefined;
141
- mutate: (variables: TFnToParams[TFn]["params"], options?: (MutateOptions<TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"]> & {
142
- overrideTargetMachine?: string;
94
+ mutate: (variables: TFnToParams[TFn]["params"], options?: (MutateOptions<TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TMetadata> & {
95
+ meta?: TMetadata | undefined;
143
96
  }) | undefined) => void;
144
97
  reset: () => void;
145
- error: TFnToParams[TFn]["error"] | null;
98
+ error: Error | TFnToParams[TFn]["error"] | null;
146
99
  };
147
- declare const useCallQueryBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TSelect = TData>(promiseFunction: TPromiseFunction<TData, TParams>, functionName: keyof TFnToParams, params: TParams, service: string, options?: Omit<QueryOptions<TData, TError, TParams, TSelect>, "queryFn"> & {
148
- avoidTimeout?: boolean;
149
- customTimeout?: number;
100
+ declare const useCallQueryBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TSelect = TData, TMetadata = unknown>(promiseFunction: TPromiseFunction<TData, TParams, TMetadata>, functionName: keyof TFnToParams, params: TParams, service: (meta?: TMetadata) => string, options?: Omit<QueryOptions<TData, TError, TParams, TSelect>, "queryFn"> & {
101
+ meta?: TMetadata;
150
102
  }) => UseQueryResult<TSelect, TError, TParams, TSelect, undefined>;
151
- declare function buildQueryHook<TFnToParams extends FnToParamsBase>(promiseFunction: TPromiseFunction<unknown, unknown>, getTargetService: (machine: string | undefined) => string): <TFn extends keyof TFnToParams, TSelect = TFnToParams[TFn]["data"]>(func: TFn, params: TFnToParams[TFn]["params"], options?: Parameters<typeof useCallQueryBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect>>[4] & {
152
- machine?: string;
103
+ declare function buildQueryHook<TFnToParams extends FnToParamsBase, TMetadata = unknown>(promiseFunction: TPromiseFunction<unknown, unknown, unknown>, getTargetService: (meta?: TMetadata) => string): <TFn extends keyof TFnToParams, TSelect = TFnToParams[TFn]["data"]>(func: TFn, params: TFnToParams[TFn]["params"], options?: Parameters<typeof useCallQueryBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect, TMetadata>>[4] & {
104
+ meta?: TMetadata;
153
105
  }) => UseQueryResult<TSelect, TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect, undefined>;
154
106
 
155
107
  /**
@@ -260,6 +212,8 @@ declare function bindPromiseFunction(clientSocketProxy: ZMQProxyWSClient): (args
260
212
  functionName: string;
261
213
  parameters: unknown;
262
214
  options?: Omit<_pixotope_zmq_client.TSocketServerCallOptions, "toCallIfNoResponse">;
263
- }>, "id">) => Promise<unknown>;
215
+ }>, "id"> & {
216
+ meta?: unknown;
217
+ }) => Promise<unknown>;
264
218
 
265
219
  export { ComparisonFailError, type Connection, type MessageHandler, type MutateOptions, type MutationFunction, type MutationInfo, type MutationOptions, type QueryOptions, type SubscriptionCoreOptions, type SubscriptionCoreReturnType, type SubscriptionOptions, type TPromiseFunction, type TSubscriptionHandlerFunction, type UseQueryResult, bindClientSocketProxy, bindPromiseFunction, buildMutationHook, buildQueryHook, buildServiceSubscriptionHook, useMutation, useQuery, useSubscription, useSubscriptionCore };
package/dist/index.d.ts CHANGED
@@ -4,8 +4,8 @@ import { ZMQClient, TSocketServerCallOptions, ZMQProxyWSClient } from '@pixotope
4
4
  interface QueryOptions<TData = unknown, TError = unknown, TParams = void, TSelectData = TData, Stateless extends true | undefined = undefined> {
5
5
  queryFn: (params: TParams | undefined | void) => Promise<TData>;
6
6
  onSuccess?: (data: TData) => Promise<void> | void;
7
- onError?: (error: TError) => Promise<void> | void;
8
- onSettled?: (data: TData | undefined, error: TError | undefined) => Promise<void> | void;
7
+ onError?: (error: TQueryError<TError>) => Promise<void> | void;
8
+ onSettled?: (data: TData | undefined, error: TQueryError<TError> | undefined) => Promise<void> | void;
9
9
  timeout?: number;
10
10
  enabled?: boolean;
11
11
  initialData?: TData | Functionize<TData>;
@@ -22,90 +22,46 @@ type WithData$1<TData> = {
22
22
  data: TData | undefined;
23
23
  };
24
24
  type TQueryKey = readonly any[];
25
+ type TQueryError<TError> = TError | Error | null;
25
26
  type UseQueryResult<TData = unknown, TError = unknown, TParams = void, TSelectData = TData, Stateless extends true | undefined = undefined> = {
26
- error: TError | null;
27
+ error: TQueryError<TError>;
27
28
  status: QueryStatus;
28
29
  refetch: (params: TParams | void | undefined) => Promise<void>;
29
30
  reset: () => void;
30
31
  } & (Stateless extends true ? {} : WithData$1<TSelectData>);
31
32
  declare const useQuery: <TData = unknown, TError = unknown, TParams = void, TSelected = TData, Stateless extends true | undefined = undefined>({ queryFn, ...options }: QueryOptions<TData, TError, TParams, TSelected, Stateless>) => UseQueryResult<TSelected, TError, TParams, TSelected, Stateless>;
32
33
 
33
- type MutationFunction<TData = unknown, TParams = unknown> = (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
34
- interface MutationOptions<TData = unknown, TError = unknown, TParams = void> {
35
- mutationFn: MutationFunction<TData, TParams>;
34
+ type MutationFunction<TData = unknown, TParams = unknown, TMetadata = unknown> = (params: TParams, meta?: TMetadata) => Promise<TData>;
35
+ interface MutationOptions<TData = unknown, TError = unknown, TParams = void, TMetadata = unknown> {
36
+ mutationFn: MutationFunction<TData, TParams, TMetadata>;
36
37
  params?: TParams;
37
- onSuccess?: (data: TData, variables: TParams) => Promise<unknown> | unknown;
38
- onError?: (error: TError, variables: TParams) => Promise<unknown> | unknown;
39
- onSettled?: (data: TData | undefined, error: TError | null, variables: TParams) => Promise<unknown> | unknown;
38
+ onSuccess?: (data: TData, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
39
+ onError?: (error: TMutationError<TError>, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
40
+ onSettled?: (data: TData | undefined, error: TMutationError<TError> | null, variables: TParams, meta?: TMetadata) => Promise<unknown> | unknown;
40
41
  compareOrThrow?: (result: TData | TError) => boolean;
41
42
  timeout?: number;
42
- prepareParams?: (variables: TParams, defaults?: TParams) => TParams;
43
+ prepareParams?: (variables: TParams, defaults?: TParams, meta?: TMetadata) => TParams;
43
44
  }
44
- interface MutateOptions<TData = unknown, TError = unknown, TParams = void> {
45
- onSuccess?: (data: TData, variables: TParams) => void;
46
- onError?: (error: TError, variables: TParams) => void;
47
- onSettled?: (data: TData | undefined, error: TError | null, variables: TParams) => void;
45
+ type TMutationError<TError> = TError | Error | null;
46
+ interface MutateOptions<TData = unknown, TError = unknown, TParams = void, TMetadata = unknown> {
47
+ onSuccess?: (data: TData, variables: TParams, meta?: TMetadata) => void;
48
+ onError?: (error: TMutationError<TError>, variables: TParams, meta?: TMetadata) => void;
49
+ onSettled?: (data: TData | undefined, error: TMutationError<TError> | null, variables: TParams, meta?: TMetadata) => void;
48
50
  }
49
51
  type MutationStatus = "idle" | "loading" | "success" | "error";
50
52
  declare class ComparisonFailError<TPayload = unknown> extends Error {
51
53
  readonly payload: TPayload;
52
54
  constructor(message: string, payload: TPayload);
53
55
  }
54
- /**
55
- * `useMutation` is a hook that allows you to perform a mutation/push updates to the services while
56
- * providing extensive API to tap into the status and results of the mutation.
57
- * @param mutationFn The mutation function to be called when the `mutate` function is called.
58
- * `useMutation` does not care about what the function does, all it needs it a function that returns
59
- * a promise.
60
- * @param options Options to configure the mutation.
61
- * @returns An object with the following properties:
62
- * - `mutateAsync`: A function that takes in the variables and returns a promise that resolves to the
63
- * result of the mutation. This function can be awaited to get the result of the mutation. Callbacks can
64
- * be passed to this function to be called when the mutation is successful or when it fails. It's good idea
65
- * to wrap this function in a try/catch block.
66
- * - `mutate`: A function that takes in the variables and returns nothing. This function does not
67
- * return a promise. Callbacks can be passed to this function to be called when the mutation is
68
- * successful or when it fails.
69
- * - `status`: The status of the mutation. Can be one of `idle`, `loading`, `success` or `error`.
70
- * - `result`: The result of the mutation. This is undefined until the mutation is successful.
71
- * - `reset`: A function that resets the mutation to the initial state.
72
- * - `error`: The error object if the mutation has failed.
73
- * @example
74
- * ```typescript
75
- * const mutationRes = useMutation({
76
- * mutationFn: (variables) => {
77
- * return ZMQHelper.callSomethingAsync(variables)
78
- * },
79
- * onSuccess: (data) => {
80
- * // do something with the result
81
- * },
82
- * onError: (error) => {
83
- * // do something with the error
84
- * },
85
- * onSettled: (data, error) => {
86
- * // do something when the mutation is done
87
- * }});
88
- *
89
- * // call the mutation
90
- * const res = await mutationRes.mutateAsync({ foo: "bar" });
91
- * // OR
92
- * mutationRes.mutate({ foo: "bar" }, {
93
- * onSuccess: (data) => {
94
- * // do something with the result
95
- * // for example show a toast message
96
- * // stop local loading state
97
- * });
98
- * ```
99
- */
100
- declare const useMutation: <TData = unknown, TError = unknown, TParams = void>(options: MutationOptions<TData, TError, TParams>) => {
101
- mutateAsync: (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
56
+ declare const useMutation: <TData = unknown, TError = unknown, TParams = void, TMetadata = unknown>(options: MutationOptions<TData, TError, TParams, TMetadata>) => {
57
+ mutateAsync: (params: TParams, meta?: TMetadata) => Promise<TData>;
102
58
  status: MutationStatus;
103
59
  result: TData | undefined;
104
- mutate: (variables: TParams, options?: MutateOptions<TData, TError, TParams> & {
105
- overrideTargetMachine?: string;
60
+ mutate: (variables: TParams, options?: MutateOptions<TData, TError, TParams, TMetadata> & {
61
+ meta?: TMetadata;
106
62
  }) => void;
107
63
  reset: () => void;
108
- error: TError | null;
64
+ error: TMutationError<TError>;
109
65
  };
110
66
 
111
67
  type MutationInfo<TData, TError, TParams> = {
@@ -114,42 +70,38 @@ type MutationInfo<TData, TError, TParams> = {
114
70
  params: TParams;
115
71
  };
116
72
  type FnToParamsBase = Record<string, MutationInfo<unknown, unknown, unknown>>;
117
- type TPromiseFunction<TResponse, TParams> = (args: Omit<ZMQClient.Call<TResponse, {
73
+ type TPromiseFunction<TResponse, TParams, TExtraParams> = (args: Omit<ZMQClient.Call<TResponse, {
118
74
  functionName: string;
119
75
  parameters: TParams;
120
76
  options?: Omit<TSocketServerCallOptions, "toCallIfNoResponse">;
121
- }>, "id">) => Promise<TResponse>;
122
- declare const useCallMutationBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown>(promiseFunc: TPromiseFunction<TData, TParams>, functionName: keyof TFnToParams, service: string, options?: Omit<MutationOptions<TData, TError, TParams>, "mutationFn"> & {
123
- avoidTimeout?: boolean;
124
- customTimeout?: number;
125
- }) => {
126
- mutateAsync: (params: TParams, overrideTargetMachine?: string) => Promise<TData>;
77
+ }>, "id"> & {
78
+ meta?: TExtraParams;
79
+ }) => Promise<TResponse>;
80
+ declare const useCallMutationBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TMetadata = unknown>(promiseFunc: TPromiseFunction<TData, TParams, TMetadata>, functionName: keyof TFnToParams, service: (meta?: TMetadata) => string, options?: Omit<MutationOptions<TData, TError, TParams, TMetadata>, "mutationFn">) => {
81
+ mutateAsync: (params: TParams, meta?: TMetadata | undefined) => Promise<TData>;
127
82
  status: "idle" | "loading" | "success" | "error";
128
83
  result: TData | undefined;
129
- mutate: (variables: TParams, options?: (MutateOptions<TData, TError, TParams> & {
130
- overrideTargetMachine?: string;
84
+ mutate: (variables: TParams, options?: (MutateOptions<TData, TError, TParams, TMetadata> & {
85
+ meta?: TMetadata | undefined;
131
86
  }) | undefined) => void;
132
87
  reset: () => void;
133
- error: TError | null;
88
+ error: Error | TError | null;
134
89
  };
135
- declare function buildMutationHook<TFnToParams extends FnToParamsBase>(promiseFunc: TPromiseFunction<unknown, unknown>, genTargetService: (machine: string | undefined) => string): <TFn extends keyof TFnToParams>(func: TFn, options?: Parameters<typeof useCallMutationBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"]>>[3] & {
136
- machine?: string;
137
- }) => {
138
- mutateAsync: (params: TFnToParams[TFn]["params"], overrideTargetMachine?: string) => Promise<TFnToParams[TFn]["data"]>;
90
+ declare function buildMutationHook<TFnToParams extends FnToParamsBase, TMetadata = unknown>(promiseFunc: TPromiseFunction<unknown, unknown, unknown>, genTargetService: (meta?: TMetadata) => string): <TFn extends keyof TFnToParams>(func: TFn, options?: Parameters<typeof useCallMutationBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TMetadata>>[3]) => {
91
+ mutateAsync: (params: TFnToParams[TFn]["params"], meta?: TMetadata | undefined) => Promise<TFnToParams[TFn]["data"]>;
139
92
  status: "idle" | "loading" | "success" | "error";
140
93
  result: TFnToParams[TFn]["data"] | undefined;
141
- mutate: (variables: TFnToParams[TFn]["params"], options?: (MutateOptions<TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"]> & {
142
- overrideTargetMachine?: string;
94
+ mutate: (variables: TFnToParams[TFn]["params"], options?: (MutateOptions<TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TMetadata> & {
95
+ meta?: TMetadata | undefined;
143
96
  }) | undefined) => void;
144
97
  reset: () => void;
145
- error: TFnToParams[TFn]["error"] | null;
98
+ error: Error | TFnToParams[TFn]["error"] | null;
146
99
  };
147
- declare const useCallQueryBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TSelect = TData>(promiseFunction: TPromiseFunction<TData, TParams>, functionName: keyof TFnToParams, params: TParams, service: string, options?: Omit<QueryOptions<TData, TError, TParams, TSelect>, "queryFn"> & {
148
- avoidTimeout?: boolean;
149
- customTimeout?: number;
100
+ declare const useCallQueryBase: <TFnToParams extends FnToParamsBase, TData = unknown, TError = unknown, TParams = unknown, TSelect = TData, TMetadata = unknown>(promiseFunction: TPromiseFunction<TData, TParams, TMetadata>, functionName: keyof TFnToParams, params: TParams, service: (meta?: TMetadata) => string, options?: Omit<QueryOptions<TData, TError, TParams, TSelect>, "queryFn"> & {
101
+ meta?: TMetadata;
150
102
  }) => UseQueryResult<TSelect, TError, TParams, TSelect, undefined>;
151
- declare function buildQueryHook<TFnToParams extends FnToParamsBase>(promiseFunction: TPromiseFunction<unknown, unknown>, getTargetService: (machine: string | undefined) => string): <TFn extends keyof TFnToParams, TSelect = TFnToParams[TFn]["data"]>(func: TFn, params: TFnToParams[TFn]["params"], options?: Parameters<typeof useCallQueryBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect>>[4] & {
152
- machine?: string;
103
+ declare function buildQueryHook<TFnToParams extends FnToParamsBase, TMetadata = unknown>(promiseFunction: TPromiseFunction<unknown, unknown, unknown>, getTargetService: (meta?: TMetadata) => string): <TFn extends keyof TFnToParams, TSelect = TFnToParams[TFn]["data"]>(func: TFn, params: TFnToParams[TFn]["params"], options?: Parameters<typeof useCallQueryBase<TFnToParams, TFnToParams[TFn]["data"], TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect, TMetadata>>[4] & {
104
+ meta?: TMetadata;
153
105
  }) => UseQueryResult<TSelect, TFnToParams[TFn]["error"], TFnToParams[TFn]["params"], TSelect, undefined>;
154
106
 
155
107
  /**
@@ -260,6 +212,8 @@ declare function bindPromiseFunction(clientSocketProxy: ZMQProxyWSClient): (args
260
212
  functionName: string;
261
213
  parameters: unknown;
262
214
  options?: Omit<_pixotope_zmq_client.TSocketServerCallOptions, "toCallIfNoResponse">;
263
- }>, "id">) => Promise<unknown>;
215
+ }>, "id"> & {
216
+ meta?: unknown;
217
+ }) => Promise<unknown>;
264
218
 
265
219
  export { ComparisonFailError, type Connection, type MessageHandler, type MutateOptions, type MutationFunction, type MutationInfo, type MutationOptions, type QueryOptions, type SubscriptionCoreOptions, type SubscriptionCoreReturnType, type SubscriptionOptions, type TPromiseFunction, type TSubscriptionHandlerFunction, type UseQueryResult, bindClientSocketProxy, bindPromiseFunction, buildMutationHook, buildQueryHook, buildServiceSubscriptionHook, useMutation, useQuery, useSubscription, useSubscriptionCore };