@djangocfg/ext-newsletter 1.0.0 → 1.0.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/dist/hooks.d.cts DELETED
@@ -1,267 +0,0 @@
1
- import { BulkEmailRequest, API, BulkEmailResponse, NewsletterCampaignRequest as NewsletterCampaignRequest$1, NewsletterCampaign as NewsletterCampaign$1, SendCampaignRequest, SendCampaignResponse as SendCampaignResponse$1, SubscribeRequest as SubscribeRequest$1, SubscribeResponse as SubscribeResponse$1, UnsubscribeRequest as UnsubscribeRequest$1, SuccessResponse as SuccessResponse$1, TestEmailRequest, PatchedNewsletterCampaignRequest as PatchedNewsletterCampaignRequest$1, Unsubscribe, PatchedUnsubscribeRequest, HeroProps } from './index.cjs';
2
- export { APIClient, APIError, APILogger, APIOptions, BulkEmailRequestSchema, BulkEmailResponseSchema, CookieStorageAdapter, DEFAULT_RETRY_CONFIG, EmailLog, EmailLogSchema, Enums, ErrorLog, ErrorResponse, ErrorResponseSchema, ExtNewsletterBulkEmailTypes, ExtNewsletterCampaignsTypes, ExtNewsletterLogsTypes, ExtNewsletterNewsletterTypes, ExtNewsletterNewslettersTypes, ExtNewsletterSubscriptionsTypes, ExtNewsletterTestingTypes, FailedAttemptInfo, FetchAdapter, Fetchers, HeroAction, HttpClientAdapter, HttpRequest, HttpResponse, LocalStorageAdapter, LoggerConfig, MemoryStorageAdapter, NetworkError, Newsletter, NewsletterCampaignRequestSchema, NewsletterCampaignSchema, NewsletterSchema, NewsletterSubscription, NewsletterSubscriptionSchema, PaginatedEmailLogList, PaginatedEmailLogListSchema, PaginatedNewsletterCampaignList, PaginatedNewsletterCampaignListSchema, PaginatedNewsletterList, PaginatedNewsletterListSchema, PaginatedNewsletterSubscriptionList, PaginatedNewsletterSubscriptionListSchema, PatchedNewsletterCampaignRequestSchema, PatchedUnsubscribeRequestSchema, REFRESH_TOKEN_KEY, RequestLog, ResponseLog, RetryConfig, Schemas, SendCampaignRequestSchema, SendCampaignResponseSchema, StorageAdapter, SubscribeRequestSchema, SubscribeResponseSchema, SuccessResponseSchema, TOKEN_KEY, TestEmailRequestSchema, UnsubscribeRequestSchema, UnsubscribeSchema, ValidationErrorDetail, ValidationErrorEvent, apiNewsletter, clearAPITokens, configureAPI, createNewsletterBulkCreate, createNewsletterCampaignsCreate, createNewsletterCampaignsSendCreate, createNewsletterSubscribeCreate, createNewsletterTestCreate, createNewsletterUnsubscribeCreate, deleteNewsletterCampaignsDestroy, dispatchValidationError, formatZodError, getAPIInstance, getNewsletterCampaignsList, getNewsletterCampaignsRetrieve, getNewsletterLogsList, getNewsletterNewslettersList, getNewsletterNewslettersRetrieve, getNewsletterSubscriptionsList, isAPIConfigured, onValidationError, partialUpdateNewsletterCampaignsPartialUpdate, partialUpdateNewsletterUnsubscribePartialUpdate, reconfigureAPI, resetAPI, shouldRetry, updateNewsletterCampaignsUpdate, updateNewsletterUnsubscribeUpdate, withRetry } from './index.cjs';
3
- import useSWR from 'swr';
4
- import * as react_jsx_runtime from 'react/jsx-runtime';
5
- import { ReactNode } from 'react';
6
- import 'consola';
7
- import 'zod';
8
-
9
- /**
10
- * Send Bulk Email
11
- *
12
- * @method POST
13
- * @path /cfg/newsletter/bulk/
14
- */
15
- declare function useCreateNewsletterBulkCreate(): (data: BulkEmailRequest, client?: API) => Promise<BulkEmailResponse>;
16
-
17
- /**
18
- * SWR Hooks for Campaigns
19
- *
20
- * React hooks powered by SWR for data fetching with automatic caching,
21
- * revalidation, and optimistic updates.
22
- *
23
- * Usage:
24
- * ```typescript
25
- * // Query hooks (GET)
26
- * const { data, error, isLoading } = useUsers({ page: 1 })
27
- *
28
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
29
- * const createUser = useCreateUser()
30
- * await createUser({ name: 'John', email: 'john@example.com' })
31
- * ```
32
- */
33
-
34
- /**
35
- * List Newsletter Campaigns
36
- *
37
- * @method GET
38
- * @path /cfg/newsletter/campaigns/
39
- */
40
- declare function useNewsletterCampaignsList(params?: {
41
- page?: number;
42
- page_size?: number;
43
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterCampaignList>>;
44
- /**
45
- * Create Newsletter Campaign
46
- *
47
- * @method POST
48
- * @path /cfg/newsletter/campaigns/
49
- */
50
- declare function useCreateNewsletterCampaignsCreate(): (data: NewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
51
- /**
52
- * Get Campaign Details
53
- *
54
- * @method GET
55
- * @path /cfg/newsletter/campaigns/{id}/
56
- */
57
- declare function useNewsletterCampaignsRetrieve(id: number, client?: API): ReturnType<typeof useSWR<NewsletterCampaign>>;
58
- /**
59
- * Update Campaign
60
- *
61
- * @method PUT
62
- * @path /cfg/newsletter/campaigns/{id}/
63
- */
64
- declare function useUpdateNewsletterCampaignsUpdate(): (id: number, data: NewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
65
- /**
66
- * Delete Campaign
67
- *
68
- * @method DELETE
69
- * @path /cfg/newsletter/campaigns/{id}/
70
- */
71
- declare function useDeleteNewsletterCampaignsDestroy(): (id: number, client?: API) => Promise<void>;
72
- /**
73
- * Send Newsletter Campaign
74
- *
75
- * @method POST
76
- * @path /cfg/newsletter/campaigns/send/
77
- */
78
- declare function useCreateNewsletterCampaignsSendCreate(): (data: SendCampaignRequest, client?: API) => Promise<SendCampaignResponse$1>;
79
-
80
- /**
81
- * SWR Hooks for Logs
82
- *
83
- * React hooks powered by SWR for data fetching with automatic caching,
84
- * revalidation, and optimistic updates.
85
- *
86
- * Usage:
87
- * ```typescript
88
- * // Query hooks (GET)
89
- * const { data, error, isLoading } = useUsers({ page: 1 })
90
- *
91
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
92
- * const createUser = useCreateUser()
93
- * await createUser({ name: 'John', email: 'john@example.com' })
94
- * ```
95
- */
96
-
97
- /**
98
- * List Email Logs
99
- *
100
- * @method GET
101
- * @path /cfg/newsletter/logs/
102
- */
103
- declare function useNewsletterLogsList(params?: {
104
- page?: number;
105
- page_size?: number;
106
- }, client?: API): ReturnType<typeof useSWR<PaginatedEmailLogList>>;
107
-
108
- /**
109
- * SWR Hooks for Newsletters
110
- *
111
- * React hooks powered by SWR for data fetching with automatic caching,
112
- * revalidation, and optimistic updates.
113
- *
114
- * Usage:
115
- * ```typescript
116
- * // Query hooks (GET)
117
- * const { data, error, isLoading } = useUsers({ page: 1 })
118
- *
119
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
120
- * const createUser = useCreateUser()
121
- * await createUser({ name: 'John', email: 'john@example.com' })
122
- * ```
123
- */
124
-
125
- /**
126
- * List Active Newsletters
127
- *
128
- * @method GET
129
- * @path /cfg/newsletter/newsletters/
130
- */
131
- declare function useNewsletterNewslettersList(params?: {
132
- page?: number;
133
- page_size?: number;
134
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterList>>;
135
- /**
136
- * Get Newsletter Details
137
- *
138
- * @method GET
139
- * @path /cfg/newsletter/newsletters/{id}/
140
- */
141
- declare function useNewsletterNewslettersRetrieve(id: number, client?: API): ReturnType<typeof useSWR<Newsletter>>;
142
-
143
- /**
144
- * SWR Hooks for Subscriptions
145
- *
146
- * React hooks powered by SWR for data fetching with automatic caching,
147
- * revalidation, and optimistic updates.
148
- *
149
- * Usage:
150
- * ```typescript
151
- * // Query hooks (GET)
152
- * const { data, error, isLoading } = useUsers({ page: 1 })
153
- *
154
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
155
- * const createUser = useCreateUser()
156
- * await createUser({ name: 'John', email: 'john@example.com' })
157
- * ```
158
- */
159
-
160
- /**
161
- * Subscribe to Newsletter
162
- *
163
- * @method POST
164
- * @path /cfg/newsletter/subscribe/
165
- */
166
- declare function useCreateNewsletterSubscribeCreate(): (data: SubscribeRequest$1, client?: API) => Promise<SubscribeResponse$1>;
167
- /**
168
- * List User Subscriptions
169
- *
170
- * @method GET
171
- * @path /cfg/newsletter/subscriptions/
172
- */
173
- declare function useNewsletterSubscriptionsList(params?: {
174
- page?: number;
175
- page_size?: number;
176
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterSubscriptionList>>;
177
- /**
178
- * Unsubscribe from Newsletter
179
- *
180
- * @method POST
181
- * @path /cfg/newsletter/unsubscribe/
182
- */
183
- declare function useCreateNewsletterUnsubscribeCreate(): (data: UnsubscribeRequest$1, client?: API) => Promise<SuccessResponse$1>;
184
-
185
- /**
186
- * Test Email Sending
187
- *
188
- * @method POST
189
- * @path /cfg/newsletter/test/
190
- */
191
- declare function useCreateNewsletterTestCreate(): (data: TestEmailRequest, client?: API) => Promise<BulkEmailResponse>;
192
-
193
- /**
194
- * API operation
195
- *
196
- * @method PATCH
197
- * @path /cfg/newsletter/campaigns/{id}/
198
- */
199
- declare function usePartialUpdateNewsletterCampaignsPartialUpdate(): (id: number, data?: PatchedNewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
200
- /**
201
- * API operation
202
- *
203
- * @method PUT
204
- * @path /cfg/newsletter/unsubscribe/
205
- */
206
- declare function useUpdateNewsletterUnsubscribeUpdate(): (data: UnsubscribeRequest$1, client?: API) => Promise<Unsubscribe>;
207
- /**
208
- * API operation
209
- *
210
- * @method PATCH
211
- * @path /cfg/newsletter/unsubscribe/
212
- */
213
- declare function usePartialUpdateNewsletterUnsubscribePartialUpdate(): (data?: PatchedUnsubscribeRequest, client?: API) => Promise<Unsubscribe>;
214
-
215
- /**
216
- * Newsletter Types
217
- * Centralized type definitions for newsletter context
218
- */
219
-
220
- type NewsletterCampaign = NonNullable<Awaited<ReturnType<typeof useNewsletterCampaignsRetrieve>>['data']>;
221
- type NewsletterCampaignRequest = Parameters<ReturnType<typeof useUpdateNewsletterCampaignsUpdate>>[1];
222
- type PatchedNewsletterCampaignRequest = Parameters<ReturnType<typeof usePartialUpdateNewsletterCampaignsPartialUpdate>>[1];
223
- type NewsletterSubscription = NonNullable<Awaited<ReturnType<typeof useNewsletterSubscriptionsList>>['data']> extends {
224
- results: infer T;
225
- } ? T extends Array<infer U> ? U : never : never;
226
- type SubscribeRequest = Parameters<ReturnType<typeof useCreateNewsletterSubscribeCreate>>[0];
227
- type SubscribeResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterSubscribeCreate>>>;
228
- type UnsubscribeRequest = Parameters<ReturnType<typeof useCreateNewsletterUnsubscribeCreate>>[0];
229
- type SuccessResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterUnsubscribeCreate>>>;
230
- type SendCampaignResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterCampaignsSendCreate>>>;
231
-
232
- interface NewsletterContextValue {
233
- campaigns: NewsletterCampaign[];
234
- isLoadingCampaigns: boolean;
235
- campaignsError: Error | null;
236
- pagination?: {
237
- count: number;
238
- next: number | null;
239
- previous: number | null;
240
- };
241
- getCampaign: (id: number) => {
242
- data?: NewsletterCampaign;
243
- error?: Error;
244
- isLoading: boolean;
245
- };
246
- createCampaign: (data: NewsletterCampaignRequest) => Promise<NewsletterCampaign>;
247
- updateCampaign: (id: number, data: NewsletterCampaignRequest) => Promise<NewsletterCampaign>;
248
- partialUpdateCampaign: (id: number, data: PatchedNewsletterCampaignRequest) => Promise<NewsletterCampaign>;
249
- deleteCampaign: (id: number) => Promise<void>;
250
- sendCampaign: (campaignId: number) => Promise<SendCampaignResponse>;
251
- subscriptions: NewsletterSubscription[];
252
- isLoadingSubscriptions: boolean;
253
- subscriptionsError: Error | null;
254
- subscribe: (data: SubscribeRequest) => Promise<SubscribeResponse>;
255
- unsubscribe: (data: UnsubscribeRequest) => Promise<SuccessResponse>;
256
- }
257
- interface NewsletterProviderProps {
258
- children: ReactNode;
259
- page?: number;
260
- pageSize?: number;
261
- }
262
- declare function NewsletterProvider({ children, page, pageSize }: NewsletterProviderProps): react_jsx_runtime.JSX.Element;
263
- declare function useNewsletterContext(): NewsletterContextValue;
264
-
265
- declare function Hero({ title, description, primaryAction, secondaryAction, showNewsletter, newsletterPlaceholder, newsletterButtonText, onNewsletterSubmit, className, }: HeroProps): react_jsx_runtime.JSX.Element;
266
-
267
- export { API, BulkEmailRequest, BulkEmailResponse, Hero, HeroProps, NewsletterCampaign$1 as NewsletterCampaign, NewsletterCampaignRequest$1 as NewsletterCampaignRequest, Hero as NewsletterHero, NewsletterProvider, PatchedNewsletterCampaignRequest$1 as PatchedNewsletterCampaignRequest, PatchedUnsubscribeRequest, SendCampaignRequest, SendCampaignResponse$1 as SendCampaignResponse, SubscribeRequest$1 as SubscribeRequest, SubscribeResponse$1 as SubscribeResponse, SuccessResponse$1 as SuccessResponse, TestEmailRequest, Unsubscribe, UnsubscribeRequest$1 as UnsubscribeRequest, useCreateNewsletterBulkCreate, useCreateNewsletterCampaignsCreate, useCreateNewsletterCampaignsSendCreate, useCreateNewsletterSubscribeCreate, useCreateNewsletterTestCreate, useCreateNewsletterUnsubscribeCreate, useDeleteNewsletterCampaignsDestroy, useNewsletterCampaignsList, useNewsletterCampaignsRetrieve, useNewsletterContext, useNewsletterLogsList, useNewsletterNewslettersList, useNewsletterNewslettersRetrieve, useNewsletterSubscriptionsList, usePartialUpdateNewsletterCampaignsPartialUpdate, usePartialUpdateNewsletterUnsubscribePartialUpdate, useUpdateNewsletterCampaignsUpdate, useUpdateNewsletterUnsubscribeUpdate };
package/dist/hooks.d.ts DELETED
@@ -1,267 +0,0 @@
1
- import { BulkEmailRequest, API, BulkEmailResponse, NewsletterCampaignRequest as NewsletterCampaignRequest$1, NewsletterCampaign as NewsletterCampaign$1, SendCampaignRequest, SendCampaignResponse as SendCampaignResponse$1, SubscribeRequest as SubscribeRequest$1, SubscribeResponse as SubscribeResponse$1, UnsubscribeRequest as UnsubscribeRequest$1, SuccessResponse as SuccessResponse$1, TestEmailRequest, PatchedNewsletterCampaignRequest as PatchedNewsletterCampaignRequest$1, Unsubscribe, PatchedUnsubscribeRequest, HeroProps } from './index.js';
2
- export { APIClient, APIError, APILogger, APIOptions, BulkEmailRequestSchema, BulkEmailResponseSchema, CookieStorageAdapter, DEFAULT_RETRY_CONFIG, EmailLog, EmailLogSchema, Enums, ErrorLog, ErrorResponse, ErrorResponseSchema, ExtNewsletterBulkEmailTypes, ExtNewsletterCampaignsTypes, ExtNewsletterLogsTypes, ExtNewsletterNewsletterTypes, ExtNewsletterNewslettersTypes, ExtNewsletterSubscriptionsTypes, ExtNewsletterTestingTypes, FailedAttemptInfo, FetchAdapter, Fetchers, HeroAction, HttpClientAdapter, HttpRequest, HttpResponse, LocalStorageAdapter, LoggerConfig, MemoryStorageAdapter, NetworkError, Newsletter, NewsletterCampaignRequestSchema, NewsletterCampaignSchema, NewsletterSchema, NewsletterSubscription, NewsletterSubscriptionSchema, PaginatedEmailLogList, PaginatedEmailLogListSchema, PaginatedNewsletterCampaignList, PaginatedNewsletterCampaignListSchema, PaginatedNewsletterList, PaginatedNewsletterListSchema, PaginatedNewsletterSubscriptionList, PaginatedNewsletterSubscriptionListSchema, PatchedNewsletterCampaignRequestSchema, PatchedUnsubscribeRequestSchema, REFRESH_TOKEN_KEY, RequestLog, ResponseLog, RetryConfig, Schemas, SendCampaignRequestSchema, SendCampaignResponseSchema, StorageAdapter, SubscribeRequestSchema, SubscribeResponseSchema, SuccessResponseSchema, TOKEN_KEY, TestEmailRequestSchema, UnsubscribeRequestSchema, UnsubscribeSchema, ValidationErrorDetail, ValidationErrorEvent, apiNewsletter, clearAPITokens, configureAPI, createNewsletterBulkCreate, createNewsletterCampaignsCreate, createNewsletterCampaignsSendCreate, createNewsletterSubscribeCreate, createNewsletterTestCreate, createNewsletterUnsubscribeCreate, deleteNewsletterCampaignsDestroy, dispatchValidationError, formatZodError, getAPIInstance, getNewsletterCampaignsList, getNewsletterCampaignsRetrieve, getNewsletterLogsList, getNewsletterNewslettersList, getNewsletterNewslettersRetrieve, getNewsletterSubscriptionsList, isAPIConfigured, onValidationError, partialUpdateNewsletterCampaignsPartialUpdate, partialUpdateNewsletterUnsubscribePartialUpdate, reconfigureAPI, resetAPI, shouldRetry, updateNewsletterCampaignsUpdate, updateNewsletterUnsubscribeUpdate, withRetry } from './index.js';
3
- import useSWR from 'swr';
4
- import * as react_jsx_runtime from 'react/jsx-runtime';
5
- import { ReactNode } from 'react';
6
- import 'consola';
7
- import 'zod';
8
-
9
- /**
10
- * Send Bulk Email
11
- *
12
- * @method POST
13
- * @path /cfg/newsletter/bulk/
14
- */
15
- declare function useCreateNewsletterBulkCreate(): (data: BulkEmailRequest, client?: API) => Promise<BulkEmailResponse>;
16
-
17
- /**
18
- * SWR Hooks for Campaigns
19
- *
20
- * React hooks powered by SWR for data fetching with automatic caching,
21
- * revalidation, and optimistic updates.
22
- *
23
- * Usage:
24
- * ```typescript
25
- * // Query hooks (GET)
26
- * const { data, error, isLoading } = useUsers({ page: 1 })
27
- *
28
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
29
- * const createUser = useCreateUser()
30
- * await createUser({ name: 'John', email: 'john@example.com' })
31
- * ```
32
- */
33
-
34
- /**
35
- * List Newsletter Campaigns
36
- *
37
- * @method GET
38
- * @path /cfg/newsletter/campaigns/
39
- */
40
- declare function useNewsletterCampaignsList(params?: {
41
- page?: number;
42
- page_size?: number;
43
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterCampaignList>>;
44
- /**
45
- * Create Newsletter Campaign
46
- *
47
- * @method POST
48
- * @path /cfg/newsletter/campaigns/
49
- */
50
- declare function useCreateNewsletterCampaignsCreate(): (data: NewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
51
- /**
52
- * Get Campaign Details
53
- *
54
- * @method GET
55
- * @path /cfg/newsletter/campaigns/{id}/
56
- */
57
- declare function useNewsletterCampaignsRetrieve(id: number, client?: API): ReturnType<typeof useSWR<NewsletterCampaign>>;
58
- /**
59
- * Update Campaign
60
- *
61
- * @method PUT
62
- * @path /cfg/newsletter/campaigns/{id}/
63
- */
64
- declare function useUpdateNewsletterCampaignsUpdate(): (id: number, data: NewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
65
- /**
66
- * Delete Campaign
67
- *
68
- * @method DELETE
69
- * @path /cfg/newsletter/campaigns/{id}/
70
- */
71
- declare function useDeleteNewsletterCampaignsDestroy(): (id: number, client?: API) => Promise<void>;
72
- /**
73
- * Send Newsletter Campaign
74
- *
75
- * @method POST
76
- * @path /cfg/newsletter/campaigns/send/
77
- */
78
- declare function useCreateNewsletterCampaignsSendCreate(): (data: SendCampaignRequest, client?: API) => Promise<SendCampaignResponse$1>;
79
-
80
- /**
81
- * SWR Hooks for Logs
82
- *
83
- * React hooks powered by SWR for data fetching with automatic caching,
84
- * revalidation, and optimistic updates.
85
- *
86
- * Usage:
87
- * ```typescript
88
- * // Query hooks (GET)
89
- * const { data, error, isLoading } = useUsers({ page: 1 })
90
- *
91
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
92
- * const createUser = useCreateUser()
93
- * await createUser({ name: 'John', email: 'john@example.com' })
94
- * ```
95
- */
96
-
97
- /**
98
- * List Email Logs
99
- *
100
- * @method GET
101
- * @path /cfg/newsletter/logs/
102
- */
103
- declare function useNewsletterLogsList(params?: {
104
- page?: number;
105
- page_size?: number;
106
- }, client?: API): ReturnType<typeof useSWR<PaginatedEmailLogList>>;
107
-
108
- /**
109
- * SWR Hooks for Newsletters
110
- *
111
- * React hooks powered by SWR for data fetching with automatic caching,
112
- * revalidation, and optimistic updates.
113
- *
114
- * Usage:
115
- * ```typescript
116
- * // Query hooks (GET)
117
- * const { data, error, isLoading } = useUsers({ page: 1 })
118
- *
119
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
120
- * const createUser = useCreateUser()
121
- * await createUser({ name: 'John', email: 'john@example.com' })
122
- * ```
123
- */
124
-
125
- /**
126
- * List Active Newsletters
127
- *
128
- * @method GET
129
- * @path /cfg/newsletter/newsletters/
130
- */
131
- declare function useNewsletterNewslettersList(params?: {
132
- page?: number;
133
- page_size?: number;
134
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterList>>;
135
- /**
136
- * Get Newsletter Details
137
- *
138
- * @method GET
139
- * @path /cfg/newsletter/newsletters/{id}/
140
- */
141
- declare function useNewsletterNewslettersRetrieve(id: number, client?: API): ReturnType<typeof useSWR<Newsletter>>;
142
-
143
- /**
144
- * SWR Hooks for Subscriptions
145
- *
146
- * React hooks powered by SWR for data fetching with automatic caching,
147
- * revalidation, and optimistic updates.
148
- *
149
- * Usage:
150
- * ```typescript
151
- * // Query hooks (GET)
152
- * const { data, error, isLoading } = useUsers({ page: 1 })
153
- *
154
- * // Mutation hooks (POST/PUT/PATCH/DELETE)
155
- * const createUser = useCreateUser()
156
- * await createUser({ name: 'John', email: 'john@example.com' })
157
- * ```
158
- */
159
-
160
- /**
161
- * Subscribe to Newsletter
162
- *
163
- * @method POST
164
- * @path /cfg/newsletter/subscribe/
165
- */
166
- declare function useCreateNewsletterSubscribeCreate(): (data: SubscribeRequest$1, client?: API) => Promise<SubscribeResponse$1>;
167
- /**
168
- * List User Subscriptions
169
- *
170
- * @method GET
171
- * @path /cfg/newsletter/subscriptions/
172
- */
173
- declare function useNewsletterSubscriptionsList(params?: {
174
- page?: number;
175
- page_size?: number;
176
- }, client?: API): ReturnType<typeof useSWR<PaginatedNewsletterSubscriptionList>>;
177
- /**
178
- * Unsubscribe from Newsletter
179
- *
180
- * @method POST
181
- * @path /cfg/newsletter/unsubscribe/
182
- */
183
- declare function useCreateNewsletterUnsubscribeCreate(): (data: UnsubscribeRequest$1, client?: API) => Promise<SuccessResponse$1>;
184
-
185
- /**
186
- * Test Email Sending
187
- *
188
- * @method POST
189
- * @path /cfg/newsletter/test/
190
- */
191
- declare function useCreateNewsletterTestCreate(): (data: TestEmailRequest, client?: API) => Promise<BulkEmailResponse>;
192
-
193
- /**
194
- * API operation
195
- *
196
- * @method PATCH
197
- * @path /cfg/newsletter/campaigns/{id}/
198
- */
199
- declare function usePartialUpdateNewsletterCampaignsPartialUpdate(): (id: number, data?: PatchedNewsletterCampaignRequest$1, client?: API) => Promise<NewsletterCampaign$1>;
200
- /**
201
- * API operation
202
- *
203
- * @method PUT
204
- * @path /cfg/newsletter/unsubscribe/
205
- */
206
- declare function useUpdateNewsletterUnsubscribeUpdate(): (data: UnsubscribeRequest$1, client?: API) => Promise<Unsubscribe>;
207
- /**
208
- * API operation
209
- *
210
- * @method PATCH
211
- * @path /cfg/newsletter/unsubscribe/
212
- */
213
- declare function usePartialUpdateNewsletterUnsubscribePartialUpdate(): (data?: PatchedUnsubscribeRequest, client?: API) => Promise<Unsubscribe>;
214
-
215
- /**
216
- * Newsletter Types
217
- * Centralized type definitions for newsletter context
218
- */
219
-
220
- type NewsletterCampaign = NonNullable<Awaited<ReturnType<typeof useNewsletterCampaignsRetrieve>>['data']>;
221
- type NewsletterCampaignRequest = Parameters<ReturnType<typeof useUpdateNewsletterCampaignsUpdate>>[1];
222
- type PatchedNewsletterCampaignRequest = Parameters<ReturnType<typeof usePartialUpdateNewsletterCampaignsPartialUpdate>>[1];
223
- type NewsletterSubscription = NonNullable<Awaited<ReturnType<typeof useNewsletterSubscriptionsList>>['data']> extends {
224
- results: infer T;
225
- } ? T extends Array<infer U> ? U : never : never;
226
- type SubscribeRequest = Parameters<ReturnType<typeof useCreateNewsletterSubscribeCreate>>[0];
227
- type SubscribeResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterSubscribeCreate>>>;
228
- type UnsubscribeRequest = Parameters<ReturnType<typeof useCreateNewsletterUnsubscribeCreate>>[0];
229
- type SuccessResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterUnsubscribeCreate>>>;
230
- type SendCampaignResponse = Awaited<ReturnType<ReturnType<typeof useCreateNewsletterCampaignsSendCreate>>>;
231
-
232
- interface NewsletterContextValue {
233
- campaigns: NewsletterCampaign[];
234
- isLoadingCampaigns: boolean;
235
- campaignsError: Error | null;
236
- pagination?: {
237
- count: number;
238
- next: number | null;
239
- previous: number | null;
240
- };
241
- getCampaign: (id: number) => {
242
- data?: NewsletterCampaign;
243
- error?: Error;
244
- isLoading: boolean;
245
- };
246
- createCampaign: (data: NewsletterCampaignRequest) => Promise<NewsletterCampaign>;
247
- updateCampaign: (id: number, data: NewsletterCampaignRequest) => Promise<NewsletterCampaign>;
248
- partialUpdateCampaign: (id: number, data: PatchedNewsletterCampaignRequest) => Promise<NewsletterCampaign>;
249
- deleteCampaign: (id: number) => Promise<void>;
250
- sendCampaign: (campaignId: number) => Promise<SendCampaignResponse>;
251
- subscriptions: NewsletterSubscription[];
252
- isLoadingSubscriptions: boolean;
253
- subscriptionsError: Error | null;
254
- subscribe: (data: SubscribeRequest) => Promise<SubscribeResponse>;
255
- unsubscribe: (data: UnsubscribeRequest) => Promise<SuccessResponse>;
256
- }
257
- interface NewsletterProviderProps {
258
- children: ReactNode;
259
- page?: number;
260
- pageSize?: number;
261
- }
262
- declare function NewsletterProvider({ children, page, pageSize }: NewsletterProviderProps): react_jsx_runtime.JSX.Element;
263
- declare function useNewsletterContext(): NewsletterContextValue;
264
-
265
- declare function Hero({ title, description, primaryAction, secondaryAction, showNewsletter, newsletterPlaceholder, newsletterButtonText, onNewsletterSubmit, className, }: HeroProps): react_jsx_runtime.JSX.Element;
266
-
267
- export { API, BulkEmailRequest, BulkEmailResponse, Hero, HeroProps, NewsletterCampaign$1 as NewsletterCampaign, NewsletterCampaignRequest$1 as NewsletterCampaignRequest, Hero as NewsletterHero, NewsletterProvider, PatchedNewsletterCampaignRequest$1 as PatchedNewsletterCampaignRequest, PatchedUnsubscribeRequest, SendCampaignRequest, SendCampaignResponse$1 as SendCampaignResponse, SubscribeRequest$1 as SubscribeRequest, SubscribeResponse$1 as SubscribeResponse, SuccessResponse$1 as SuccessResponse, TestEmailRequest, Unsubscribe, UnsubscribeRequest$1 as UnsubscribeRequest, useCreateNewsletterBulkCreate, useCreateNewsletterCampaignsCreate, useCreateNewsletterCampaignsSendCreate, useCreateNewsletterSubscribeCreate, useCreateNewsletterTestCreate, useCreateNewsletterUnsubscribeCreate, useDeleteNewsletterCampaignsDestroy, useNewsletterCampaignsList, useNewsletterCampaignsRetrieve, useNewsletterContext, useNewsletterLogsList, useNewsletterNewslettersList, useNewsletterNewslettersRetrieve, useNewsletterSubscriptionsList, usePartialUpdateNewsletterCampaignsPartialUpdate, usePartialUpdateNewsletterUnsubscribePartialUpdate, useUpdateNewsletterCampaignsUpdate, useUpdateNewsletterUnsubscribeUpdate };