@outseta/react 0.2.0 → 0.2.2

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.
@@ -0,0 +1,772 @@
1
+ // @ts-nocheck
2
+ import {
3
+ useMutation,
4
+ useQuery
5
+ } from '@tanstack/react-query';
6
+ import type {
7
+ MutationFunction,
8
+ QueryFunction,
9
+ QueryKey,
10
+ UseMutationOptions,
11
+ UseMutationResult,
12
+ UseQueryOptions,
13
+ UseQueryResult
14
+ } from '@tanstack/react-query';
15
+
16
+ import type {
17
+ BroadcastCampaign,
18
+ CampaignAddBroadcastEmailBody,
19
+ CampaignSendTestCampaignEmailBody,
20
+ CampaignUpdateBroadcastEmailBody,
21
+ EmailListAddSubscriptionBody,
22
+ EmailListGetAllSubscriptionsParams,
23
+ EmailListPerson
24
+ } from '../outsetaAPI.schemas';
25
+
26
+ import { customFetch } from '../../mutator';
27
+
28
+
29
+ type SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];
30
+
31
+
32
+
33
+ /**
34
+ * @summary Retrieves all non-archived broadcast campaigns.
35
+ */
36
+ export const campaignGetAllBroadcastEmails = (
37
+
38
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
39
+ ) => {
40
+
41
+
42
+ return customFetch<BroadcastCampaign[]>(
43
+ {url: `/api/v1/email/campaigns/broadcasts`, method: 'GET', signal
44
+ },
45
+ options);
46
+ }
47
+
48
+
49
+
50
+
51
+ export const getCampaignGetAllBroadcastEmailsQueryKey = () => {
52
+ return [
53
+ `/api/v1/email/campaigns/broadcasts`
54
+ ] as const;
55
+ }
56
+
57
+
58
+ export const getCampaignGetAllBroadcastEmailsQueryOptions = <TData = Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>, TError = void>( options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
59
+ ) => {
60
+
61
+ const {query: queryOptions, request: requestOptions} = options ?? {};
62
+
63
+ const queryKey = queryOptions?.queryKey ?? getCampaignGetAllBroadcastEmailsQueryKey();
64
+
65
+
66
+
67
+ const queryFn: QueryFunction<Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>> = ({ signal }) => campaignGetAllBroadcastEmails(requestOptions, signal);
68
+
69
+
70
+
71
+
72
+
73
+ return { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>, TError, TData> & { queryKey: QueryKey }
74
+ }
75
+
76
+ export type CampaignGetAllBroadcastEmailsQueryResult = NonNullable<Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>>
77
+ export type CampaignGetAllBroadcastEmailsQueryError = void
78
+
79
+
80
+ /**
81
+ * @summary Retrieves all non-archived broadcast campaigns.
82
+ */
83
+
84
+ export function useCampaignGetAllBroadcastEmails<TData = Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>, TError = void>(
85
+ options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof campaignGetAllBroadcastEmails>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
86
+
87
+ ): UseQueryResult<TData, TError> & { queryKey: QueryKey } {
88
+
89
+ const queryOptions = getCampaignGetAllBroadcastEmailsQueryOptions(options)
90
+
91
+ const query = useQuery(queryOptions) as UseQueryResult<TData, TError> & { queryKey: QueryKey };
92
+
93
+ query.queryKey = queryOptions.queryKey ;
94
+
95
+ return query;
96
+ }
97
+
98
+
99
+
100
+
101
+ /**
102
+ * @summary Creates a new broadcast campaign. To copy an existing broadcast, retrieve it and pass its
103
+ data as the request body — the Uid, SendDateTime, and message counts are automatically reset.
104
+ Recipients can be specified using EmailListUids and SegmentUids instead of populating
105
+ RecipientData directly. If both are provided, they are merged.
106
+ */
107
+ export const campaignAddBroadcastEmail = (
108
+ campaignAddBroadcastEmailBody: CampaignAddBroadcastEmailBody,
109
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
110
+ ) => {
111
+
112
+
113
+ return customFetch<BroadcastCampaign>(
114
+ {url: `/api/v1/email/campaigns/broadcasts`, method: 'POST',
115
+ headers: {'Content-Type': 'application/json', },
116
+ data: campaignAddBroadcastEmailBody, signal
117
+ },
118
+ options);
119
+ }
120
+
121
+
122
+
123
+ export const getCampaignAddBroadcastEmailMutationOptions = <TError = void,
124
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignAddBroadcastEmail>>, TError,{data: CampaignAddBroadcastEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
125
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignAddBroadcastEmail>>, TError,{data: CampaignAddBroadcastEmailBody}, TContext> => {
126
+
127
+ const mutationKey = ['campaignAddBroadcastEmail'];
128
+ const {mutation: mutationOptions, request: requestOptions} = options ?
129
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
130
+ options
131
+ : {...options, mutation: {...options.mutation, mutationKey}}
132
+ : {mutation: { mutationKey, }, request: undefined};
133
+
134
+
135
+
136
+
137
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignAddBroadcastEmail>>, {data: CampaignAddBroadcastEmailBody}> = (props) => {
138
+ const {data} = props ?? {};
139
+
140
+ return campaignAddBroadcastEmail(data,requestOptions)
141
+ }
142
+
143
+
144
+
145
+
146
+ return { mutationFn, ...mutationOptions }}
147
+
148
+ export type CampaignAddBroadcastEmailMutationResult = NonNullable<Awaited<ReturnType<typeof campaignAddBroadcastEmail>>>
149
+ export type CampaignAddBroadcastEmailMutationBody = CampaignAddBroadcastEmailBody
150
+ export type CampaignAddBroadcastEmailMutationError = void
151
+
152
+ /**
153
+ * @summary Creates a new broadcast campaign. To copy an existing broadcast, retrieve it and pass its
154
+ data as the request body — the Uid, SendDateTime, and message counts are automatically reset.
155
+ Recipients can be specified using EmailListUids and SegmentUids instead of populating
156
+ RecipientData directly. If both are provided, they are merged.
157
+ */
158
+ export const useCampaignAddBroadcastEmail = <TError = void,
159
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignAddBroadcastEmail>>, TError,{data: CampaignAddBroadcastEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
160
+ ): UseMutationResult<
161
+ Awaited<ReturnType<typeof campaignAddBroadcastEmail>>,
162
+ TError,
163
+ {data: CampaignAddBroadcastEmailBody},
164
+ TContext
165
+ > => {
166
+
167
+ const mutationOptions = getCampaignAddBroadcastEmailMutationOptions(options);
168
+
169
+ return useMutation(mutationOptions);
170
+ }
171
+ /**
172
+ * @summary Retrieves a single broadcast campaign by its Uid.
173
+ */
174
+ export const campaignGetBroadcastEmail = (
175
+ broadcastCampaignUid: string | null,
176
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
177
+ ) => {
178
+
179
+
180
+ return customFetch<BroadcastCampaign>(
181
+ {url: `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}`, method: 'GET', signal
182
+ },
183
+ options);
184
+ }
185
+
186
+
187
+
188
+
189
+ export const getCampaignGetBroadcastEmailQueryKey = (broadcastCampaignUid?: string | null,) => {
190
+ return [
191
+ `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}`
192
+ ] as const;
193
+ }
194
+
195
+
196
+ export const getCampaignGetBroadcastEmailQueryOptions = <TData = Awaited<ReturnType<typeof campaignGetBroadcastEmail>>, TError = void>(broadcastCampaignUid: string | null, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof campaignGetBroadcastEmail>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
197
+ ) => {
198
+
199
+ const {query: queryOptions, request: requestOptions} = options ?? {};
200
+
201
+ const queryKey = queryOptions?.queryKey ?? getCampaignGetBroadcastEmailQueryKey(broadcastCampaignUid);
202
+
203
+
204
+
205
+ const queryFn: QueryFunction<Awaited<ReturnType<typeof campaignGetBroadcastEmail>>> = ({ signal }) => campaignGetBroadcastEmail(broadcastCampaignUid, requestOptions, signal);
206
+
207
+
208
+
209
+
210
+
211
+ return { queryKey, queryFn, enabled: !!(broadcastCampaignUid), ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof campaignGetBroadcastEmail>>, TError, TData> & { queryKey: QueryKey }
212
+ }
213
+
214
+ export type CampaignGetBroadcastEmailQueryResult = NonNullable<Awaited<ReturnType<typeof campaignGetBroadcastEmail>>>
215
+ export type CampaignGetBroadcastEmailQueryError = void
216
+
217
+
218
+ /**
219
+ * @summary Retrieves a single broadcast campaign by its Uid.
220
+ */
221
+
222
+ export function useCampaignGetBroadcastEmail<TData = Awaited<ReturnType<typeof campaignGetBroadcastEmail>>, TError = void>(
223
+ broadcastCampaignUid: string | null, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof campaignGetBroadcastEmail>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
224
+
225
+ ): UseQueryResult<TData, TError> & { queryKey: QueryKey } {
226
+
227
+ const queryOptions = getCampaignGetBroadcastEmailQueryOptions(broadcastCampaignUid,options)
228
+
229
+ const query = useQuery(queryOptions) as UseQueryResult<TData, TError> & { queryKey: QueryKey };
230
+
231
+ query.queryKey = queryOptions.queryKey ;
232
+
233
+ return query;
234
+ }
235
+
236
+
237
+
238
+
239
+ /**
240
+ * @summary Updates a broadcast campaign. Setting SendDateTime to a future date schedules the broadcast
241
+ for sending and its status changes to Pending. Clearing SendDateTime unschedules the broadcast.
242
+ Recipients can be specified using EmailListUids and SegmentUids instead of populating
243
+ RecipientData directly. If both are provided, they are merged.
244
+ */
245
+ export const campaignUpdateBroadcastEmail = (
246
+ broadcastCampaignUid: string | null,
247
+ campaignUpdateBroadcastEmailBody: CampaignUpdateBroadcastEmailBody,
248
+ options?: SecondParameter<typeof customFetch>,) => {
249
+
250
+
251
+ return customFetch<BroadcastCampaign>(
252
+ {url: `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}`, method: 'PUT',
253
+ headers: {'Content-Type': 'application/json', },
254
+ data: campaignUpdateBroadcastEmailBody
255
+ },
256
+ options);
257
+ }
258
+
259
+
260
+
261
+ export const getCampaignUpdateBroadcastEmailMutationOptions = <TError = void,
262
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>, TError,{broadcastCampaignUid: string | null;data: CampaignUpdateBroadcastEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
263
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>, TError,{broadcastCampaignUid: string | null;data: CampaignUpdateBroadcastEmailBody}, TContext> => {
264
+
265
+ const mutationKey = ['campaignUpdateBroadcastEmail'];
266
+ const {mutation: mutationOptions, request: requestOptions} = options ?
267
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
268
+ options
269
+ : {...options, mutation: {...options.mutation, mutationKey}}
270
+ : {mutation: { mutationKey, }, request: undefined};
271
+
272
+
273
+
274
+
275
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>, {broadcastCampaignUid: string | null;data: CampaignUpdateBroadcastEmailBody}> = (props) => {
276
+ const {broadcastCampaignUid,data} = props ?? {};
277
+
278
+ return campaignUpdateBroadcastEmail(broadcastCampaignUid,data,requestOptions)
279
+ }
280
+
281
+
282
+
283
+
284
+ return { mutationFn, ...mutationOptions }}
285
+
286
+ export type CampaignUpdateBroadcastEmailMutationResult = NonNullable<Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>>
287
+ export type CampaignUpdateBroadcastEmailMutationBody = CampaignUpdateBroadcastEmailBody
288
+ export type CampaignUpdateBroadcastEmailMutationError = void
289
+
290
+ /**
291
+ * @summary Updates a broadcast campaign. Setting SendDateTime to a future date schedules the broadcast
292
+ for sending and its status changes to Pending. Clearing SendDateTime unschedules the broadcast.
293
+ Recipients can be specified using EmailListUids and SegmentUids instead of populating
294
+ RecipientData directly. If both are provided, they are merged.
295
+ */
296
+ export const useCampaignUpdateBroadcastEmail = <TError = void,
297
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>, TError,{broadcastCampaignUid: string | null;data: CampaignUpdateBroadcastEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
298
+ ): UseMutationResult<
299
+ Awaited<ReturnType<typeof campaignUpdateBroadcastEmail>>,
300
+ TError,
301
+ {broadcastCampaignUid: string | null;data: CampaignUpdateBroadcastEmailBody},
302
+ TContext
303
+ > => {
304
+
305
+ const mutationOptions = getCampaignUpdateBroadcastEmailMutationOptions(options);
306
+
307
+ return useMutation(mutationOptions);
308
+ }
309
+ /**
310
+ * @summary Deletes a broadcast campaign. Only campaigns in Draft or Pending status can be deleted.
311
+ Campaigns that have been processed should be archived instead.
312
+ */
313
+ export const campaignDeleteBroadcastCampaign = (
314
+ broadcastCampaignUid: string | null,
315
+ options?: SecondParameter<typeof customFetch>,) => {
316
+
317
+
318
+ return customFetch<Blob>(
319
+ {url: `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}`, method: 'DELETE',
320
+ responseType: 'blob'
321
+ },
322
+ options);
323
+ }
324
+
325
+
326
+
327
+ export const getCampaignDeleteBroadcastCampaignMutationOptions = <TError = void,
328
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
329
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext> => {
330
+
331
+ const mutationKey = ['campaignDeleteBroadcastCampaign'];
332
+ const {mutation: mutationOptions, request: requestOptions} = options ?
333
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
334
+ options
335
+ : {...options, mutation: {...options.mutation, mutationKey}}
336
+ : {mutation: { mutationKey, }, request: undefined};
337
+
338
+
339
+
340
+
341
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>, {broadcastCampaignUid: string | null}> = (props) => {
342
+ const {broadcastCampaignUid} = props ?? {};
343
+
344
+ return campaignDeleteBroadcastCampaign(broadcastCampaignUid,requestOptions)
345
+ }
346
+
347
+
348
+
349
+
350
+ return { mutationFn, ...mutationOptions }}
351
+
352
+ export type CampaignDeleteBroadcastCampaignMutationResult = NonNullable<Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>>
353
+
354
+ export type CampaignDeleteBroadcastCampaignMutationError = void
355
+
356
+ /**
357
+ * @summary Deletes a broadcast campaign. Only campaigns in Draft or Pending status can be deleted.
358
+ Campaigns that have been processed should be archived instead.
359
+ */
360
+ export const useCampaignDeleteBroadcastCampaign = <TError = void,
361
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
362
+ ): UseMutationResult<
363
+ Awaited<ReturnType<typeof campaignDeleteBroadcastCampaign>>,
364
+ TError,
365
+ {broadcastCampaignUid: string | null},
366
+ TContext
367
+ > => {
368
+
369
+ const mutationOptions = getCampaignDeleteBroadcastCampaignMutationOptions(options);
370
+
371
+ return useMutation(mutationOptions);
372
+ }
373
+ /**
374
+ * @summary Unschedules a pending broadcast campaign, reverting its status to Draft.
375
+ */
376
+ export const campaignUnscheduleBroadcastEmail = (
377
+ broadcastCampaignUid: string | null,
378
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
379
+ ) => {
380
+
381
+
382
+ return customFetch<BroadcastCampaign>(
383
+ {url: `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}/unschedule`, method: 'POST', signal
384
+ },
385
+ options);
386
+ }
387
+
388
+
389
+
390
+ export const getCampaignUnscheduleBroadcastEmailMutationOptions = <TError = void,
391
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
392
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>, TError,{broadcastCampaignUid: string | null}, TContext> => {
393
+
394
+ const mutationKey = ['campaignUnscheduleBroadcastEmail'];
395
+ const {mutation: mutationOptions, request: requestOptions} = options ?
396
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
397
+ options
398
+ : {...options, mutation: {...options.mutation, mutationKey}}
399
+ : {mutation: { mutationKey, }, request: undefined};
400
+
401
+
402
+
403
+
404
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>, {broadcastCampaignUid: string | null}> = (props) => {
405
+ const {broadcastCampaignUid} = props ?? {};
406
+
407
+ return campaignUnscheduleBroadcastEmail(broadcastCampaignUid,requestOptions)
408
+ }
409
+
410
+
411
+
412
+
413
+ return { mutationFn, ...mutationOptions }}
414
+
415
+ export type CampaignUnscheduleBroadcastEmailMutationResult = NonNullable<Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>>
416
+
417
+ export type CampaignUnscheduleBroadcastEmailMutationError = void
418
+
419
+ /**
420
+ * @summary Unschedules a pending broadcast campaign, reverting its status to Draft.
421
+ */
422
+ export const useCampaignUnscheduleBroadcastEmail = <TError = void,
423
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
424
+ ): UseMutationResult<
425
+ Awaited<ReturnType<typeof campaignUnscheduleBroadcastEmail>>,
426
+ TError,
427
+ {broadcastCampaignUid: string | null},
428
+ TContext
429
+ > => {
430
+
431
+ const mutationOptions = getCampaignUnscheduleBroadcastEmailMutationOptions(options);
432
+
433
+ return useMutation(mutationOptions);
434
+ }
435
+ /**
436
+ * @summary Archives a broadcast campaign. Archived campaigns are excluded from the default list results.
437
+ */
438
+ export const campaignArchiveBroadcastCampaign = (
439
+ broadcastCampaignUid: string | null,
440
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
441
+ ) => {
442
+
443
+
444
+ return customFetch<Blob>(
445
+ {url: `/api/v1/email/campaigns/broadcasts/${broadcastCampaignUid}/archive`, method: 'POST',
446
+ responseType: 'blob', signal
447
+ },
448
+ options);
449
+ }
450
+
451
+
452
+
453
+ export const getCampaignArchiveBroadcastCampaignMutationOptions = <TError = void,
454
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
455
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext> => {
456
+
457
+ const mutationKey = ['campaignArchiveBroadcastCampaign'];
458
+ const {mutation: mutationOptions, request: requestOptions} = options ?
459
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
460
+ options
461
+ : {...options, mutation: {...options.mutation, mutationKey}}
462
+ : {mutation: { mutationKey, }, request: undefined};
463
+
464
+
465
+
466
+
467
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>, {broadcastCampaignUid: string | null}> = (props) => {
468
+ const {broadcastCampaignUid} = props ?? {};
469
+
470
+ return campaignArchiveBroadcastCampaign(broadcastCampaignUid,requestOptions)
471
+ }
472
+
473
+
474
+
475
+
476
+ return { mutationFn, ...mutationOptions }}
477
+
478
+ export type CampaignArchiveBroadcastCampaignMutationResult = NonNullable<Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>>
479
+
480
+ export type CampaignArchiveBroadcastCampaignMutationError = void
481
+
482
+ /**
483
+ * @summary Archives a broadcast campaign. Archived campaigns are excluded from the default list results.
484
+ */
485
+ export const useCampaignArchiveBroadcastCampaign = <TError = void,
486
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>, TError,{broadcastCampaignUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
487
+ ): UseMutationResult<
488
+ Awaited<ReturnType<typeof campaignArchiveBroadcastCampaign>>,
489
+ TError,
490
+ {broadcastCampaignUid: string | null},
491
+ TContext
492
+ > => {
493
+
494
+ const mutationOptions = getCampaignArchiveBroadcastCampaignMutationOptions(options);
495
+
496
+ return useMutation(mutationOptions);
497
+ }
498
+ /**
499
+ * @summary Sends a test email for a broadcast campaign to the logged-in user and optionally to additional
500
+ recipients. Additional recipients are specified as a list of person Uids and must belong to the
501
+ same account as the logged-in user.
502
+ */
503
+ export const campaignSendTestCampaignEmail = (
504
+ campaignSendTestCampaignEmailBody: CampaignSendTestCampaignEmailBody,
505
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
506
+ ) => {
507
+
508
+
509
+ return customFetch<Blob>(
510
+ {url: `/api/v1/email/campaigns/broadcasts/sendtestemail`, method: 'POST',
511
+ headers: {'Content-Type': 'application/json', },
512
+ data: campaignSendTestCampaignEmailBody,
513
+ responseType: 'blob', signal
514
+ },
515
+ options);
516
+ }
517
+
518
+
519
+
520
+ export const getCampaignSendTestCampaignEmailMutationOptions = <TError = void,
521
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>, TError,{data: CampaignSendTestCampaignEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
522
+ ): UseMutationOptions<Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>, TError,{data: CampaignSendTestCampaignEmailBody}, TContext> => {
523
+
524
+ const mutationKey = ['campaignSendTestCampaignEmail'];
525
+ const {mutation: mutationOptions, request: requestOptions} = options ?
526
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
527
+ options
528
+ : {...options, mutation: {...options.mutation, mutationKey}}
529
+ : {mutation: { mutationKey, }, request: undefined};
530
+
531
+
532
+
533
+
534
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>, {data: CampaignSendTestCampaignEmailBody}> = (props) => {
535
+ const {data} = props ?? {};
536
+
537
+ return campaignSendTestCampaignEmail(data,requestOptions)
538
+ }
539
+
540
+
541
+
542
+
543
+ return { mutationFn, ...mutationOptions }}
544
+
545
+ export type CampaignSendTestCampaignEmailMutationResult = NonNullable<Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>>
546
+ export type CampaignSendTestCampaignEmailMutationBody = CampaignSendTestCampaignEmailBody
547
+ export type CampaignSendTestCampaignEmailMutationError = void
548
+
549
+ /**
550
+ * @summary Sends a test email for a broadcast campaign to the logged-in user and optionally to additional
551
+ recipients. Additional recipients are specified as a list of person Uids and must belong to the
552
+ same account as the logged-in user.
553
+ */
554
+ export const useCampaignSendTestCampaignEmail = <TError = void,
555
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>, TError,{data: CampaignSendTestCampaignEmailBody}, TContext>, request?: SecondParameter<typeof customFetch>}
556
+ ): UseMutationResult<
557
+ Awaited<ReturnType<typeof campaignSendTestCampaignEmail>>,
558
+ TError,
559
+ {data: CampaignSendTestCampaignEmailBody},
560
+ TContext
561
+ > => {
562
+
563
+ const mutationOptions = getCampaignSendTestCampaignEmailMutationOptions(options);
564
+
565
+ return useMutation(mutationOptions);
566
+ }
567
+ /**
568
+ * @summary Retrieves all the people subscribing to an email list.
569
+ */
570
+ export const emailListGetAllSubscriptions = (
571
+ emailListUid: string | null,
572
+ params?: EmailListGetAllSubscriptionsParams,
573
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
574
+ ) => {
575
+
576
+
577
+ return customFetch<EmailListPerson[]>(
578
+ {url: `/api/v1/email/lists/${emailListUid}/subscriptions`, method: 'GET',
579
+ params, signal
580
+ },
581
+ options);
582
+ }
583
+
584
+
585
+
586
+
587
+ export const getEmailListGetAllSubscriptionsQueryKey = (emailListUid?: string | null,
588
+ params?: EmailListGetAllSubscriptionsParams,) => {
589
+ return [
590
+ `/api/v1/email/lists/${emailListUid}/subscriptions`, ...(params ? [params]: [])
591
+ ] as const;
592
+ }
593
+
594
+
595
+ export const getEmailListGetAllSubscriptionsQueryOptions = <TData = Awaited<ReturnType<typeof emailListGetAllSubscriptions>>, TError = void>(emailListUid: string | null,
596
+ params?: EmailListGetAllSubscriptionsParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof emailListGetAllSubscriptions>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
597
+ ) => {
598
+
599
+ const {query: queryOptions, request: requestOptions} = options ?? {};
600
+
601
+ const queryKey = queryOptions?.queryKey ?? getEmailListGetAllSubscriptionsQueryKey(emailListUid,params);
602
+
603
+
604
+
605
+ const queryFn: QueryFunction<Awaited<ReturnType<typeof emailListGetAllSubscriptions>>> = ({ signal }) => emailListGetAllSubscriptions(emailListUid,params, requestOptions, signal);
606
+
607
+
608
+
609
+
610
+
611
+ return { queryKey, queryFn, enabled: !!(emailListUid), ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof emailListGetAllSubscriptions>>, TError, TData> & { queryKey: QueryKey }
612
+ }
613
+
614
+ export type EmailListGetAllSubscriptionsQueryResult = NonNullable<Awaited<ReturnType<typeof emailListGetAllSubscriptions>>>
615
+ export type EmailListGetAllSubscriptionsQueryError = void
616
+
617
+
618
+ /**
619
+ * @summary Retrieves all the people subscribing to an email list.
620
+ */
621
+
622
+ export function useEmailListGetAllSubscriptions<TData = Awaited<ReturnType<typeof emailListGetAllSubscriptions>>, TError = void>(
623
+ emailListUid: string | null,
624
+ params?: EmailListGetAllSubscriptionsParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof emailListGetAllSubscriptions>>, TError, TData>, request?: SecondParameter<typeof customFetch>}
625
+
626
+ ): UseQueryResult<TData, TError> & { queryKey: QueryKey } {
627
+
628
+ const queryOptions = getEmailListGetAllSubscriptionsQueryOptions(emailListUid,params,options)
629
+
630
+ const query = useQuery(queryOptions) as UseQueryResult<TData, TError> & { queryKey: QueryKey };
631
+
632
+ query.queryKey = queryOptions.queryKey ;
633
+
634
+ return query;
635
+ }
636
+
637
+
638
+
639
+
640
+ /**
641
+ * @summary Subscribe a person to an email list. To subscribe a new person, pass a Person object with an
642
+ Email address. To subscribe an existing person, pass a Person object with a Uid. The
643
+ SendWelcomeEmail property determines if the person is sent a welcome email and defaults to false.
644
+ */
645
+ export const emailListAddSubscription = (
646
+ emailListUid: string | null,
647
+ emailListAddSubscriptionBody: EmailListAddSubscriptionBody,
648
+ options?: SecondParameter<typeof customFetch>,signal?: AbortSignal
649
+ ) => {
650
+
651
+
652
+ return customFetch<EmailListPerson>(
653
+ {url: `/api/v1/email/lists/${emailListUid}/subscriptions`, method: 'POST',
654
+ headers: {'Content-Type': 'application/json', },
655
+ data: emailListAddSubscriptionBody, signal
656
+ },
657
+ options);
658
+ }
659
+
660
+
661
+
662
+ export const getEmailListAddSubscriptionMutationOptions = <TError = void,
663
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof emailListAddSubscription>>, TError,{emailListUid: string | null;data: EmailListAddSubscriptionBody}, TContext>, request?: SecondParameter<typeof customFetch>}
664
+ ): UseMutationOptions<Awaited<ReturnType<typeof emailListAddSubscription>>, TError,{emailListUid: string | null;data: EmailListAddSubscriptionBody}, TContext> => {
665
+
666
+ const mutationKey = ['emailListAddSubscription'];
667
+ const {mutation: mutationOptions, request: requestOptions} = options ?
668
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
669
+ options
670
+ : {...options, mutation: {...options.mutation, mutationKey}}
671
+ : {mutation: { mutationKey, }, request: undefined};
672
+
673
+
674
+
675
+
676
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof emailListAddSubscription>>, {emailListUid: string | null;data: EmailListAddSubscriptionBody}> = (props) => {
677
+ const {emailListUid,data} = props ?? {};
678
+
679
+ return emailListAddSubscription(emailListUid,data,requestOptions)
680
+ }
681
+
682
+
683
+
684
+
685
+ return { mutationFn, ...mutationOptions }}
686
+
687
+ export type EmailListAddSubscriptionMutationResult = NonNullable<Awaited<ReturnType<typeof emailListAddSubscription>>>
688
+ export type EmailListAddSubscriptionMutationBody = EmailListAddSubscriptionBody
689
+ export type EmailListAddSubscriptionMutationError = void
690
+
691
+ /**
692
+ * @summary Subscribe a person to an email list. To subscribe a new person, pass a Person object with an
693
+ Email address. To subscribe an existing person, pass a Person object with a Uid. The
694
+ SendWelcomeEmail property determines if the person is sent a welcome email and defaults to false.
695
+ */
696
+ export const useEmailListAddSubscription = <TError = void,
697
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof emailListAddSubscription>>, TError,{emailListUid: string | null;data: EmailListAddSubscriptionBody}, TContext>, request?: SecondParameter<typeof customFetch>}
698
+ ): UseMutationResult<
699
+ Awaited<ReturnType<typeof emailListAddSubscription>>,
700
+ TError,
701
+ {emailListUid: string | null;data: EmailListAddSubscriptionBody},
702
+ TContext
703
+ > => {
704
+
705
+ const mutationOptions = getEmailListAddSubscriptionMutationOptions(options);
706
+
707
+ return useMutation(mutationOptions);
708
+ }
709
+ /**
710
+ * @summary Remove a subscriber from an email list.
711
+ */
712
+ export const emailListDeleteSubscription = (
713
+ emailListUid: string | null,
714
+ subscriptionUid: string | null,
715
+ options?: SecondParameter<typeof customFetch>,) => {
716
+
717
+
718
+ return customFetch<Blob>(
719
+ {url: `/api/v1/email/lists/${emailListUid}/subscriptions/${subscriptionUid}`, method: 'DELETE',
720
+ responseType: 'blob'
721
+ },
722
+ options);
723
+ }
724
+
725
+
726
+
727
+ export const getEmailListDeleteSubscriptionMutationOptions = <TError = void,
728
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof emailListDeleteSubscription>>, TError,{emailListUid: string | null;subscriptionUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
729
+ ): UseMutationOptions<Awaited<ReturnType<typeof emailListDeleteSubscription>>, TError,{emailListUid: string | null;subscriptionUid: string | null}, TContext> => {
730
+
731
+ const mutationKey = ['emailListDeleteSubscription'];
732
+ const {mutation: mutationOptions, request: requestOptions} = options ?
733
+ options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?
734
+ options
735
+ : {...options, mutation: {...options.mutation, mutationKey}}
736
+ : {mutation: { mutationKey, }, request: undefined};
737
+
738
+
739
+
740
+
741
+ const mutationFn: MutationFunction<Awaited<ReturnType<typeof emailListDeleteSubscription>>, {emailListUid: string | null;subscriptionUid: string | null}> = (props) => {
742
+ const {emailListUid,subscriptionUid} = props ?? {};
743
+
744
+ return emailListDeleteSubscription(emailListUid,subscriptionUid,requestOptions)
745
+ }
746
+
747
+
748
+
749
+
750
+ return { mutationFn, ...mutationOptions }}
751
+
752
+ export type EmailListDeleteSubscriptionMutationResult = NonNullable<Awaited<ReturnType<typeof emailListDeleteSubscription>>>
753
+
754
+ export type EmailListDeleteSubscriptionMutationError = void
755
+
756
+ /**
757
+ * @summary Remove a subscriber from an email list.
758
+ */
759
+ export const useEmailListDeleteSubscription = <TError = void,
760
+ TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof emailListDeleteSubscription>>, TError,{emailListUid: string | null;subscriptionUid: string | null}, TContext>, request?: SecondParameter<typeof customFetch>}
761
+ ): UseMutationResult<
762
+ Awaited<ReturnType<typeof emailListDeleteSubscription>>,
763
+ TError,
764
+ {emailListUid: string | null;subscriptionUid: string | null},
765
+ TContext
766
+ > => {
767
+
768
+ const mutationOptions = getEmailListDeleteSubscriptionMutationOptions(options);
769
+
770
+ return useMutation(mutationOptions);
771
+ }
772
+