@wix/auto_sdk_email-subscriptions_email-subscriptions 1.0.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.
Files changed (111) hide show
  1. package/build/cjs/index.d.ts +1 -0
  2. package/build/cjs/index.js +18 -0
  3. package/build/cjs/index.js.map +1 -0
  4. package/build/cjs/index.typings.d.ts +1 -0
  5. package/build/cjs/index.typings.js +18 -0
  6. package/build/cjs/index.typings.js.map +1 -0
  7. package/build/cjs/meta.d.ts +1 -0
  8. package/build/cjs/meta.js +18 -0
  9. package/build/cjs/meta.js.map +1 -0
  10. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.d.ts +12 -0
  11. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js +20 -0
  12. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js.map +1 -0
  13. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.d.ts +41 -0
  14. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js +239 -0
  15. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js.map +1 -0
  16. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.d.ts +19 -0
  17. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js +123 -0
  18. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js.map +1 -0
  19. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.d.ts +64 -0
  20. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js +54 -0
  21. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js.map +1 -0
  22. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.d.ts +341 -0
  23. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js +38 -0
  24. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js.map +1 -0
  25. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.d.ts +455 -0
  26. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js +275 -0
  27. package/build/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js.map +1 -0
  28. package/build/es/index.d.ts +1 -0
  29. package/build/es/index.js +2 -0
  30. package/build/es/index.js.map +1 -0
  31. package/build/es/index.typings.d.ts +1 -0
  32. package/build/es/index.typings.js +2 -0
  33. package/build/es/index.typings.js.map +1 -0
  34. package/build/es/meta.d.ts +1 -0
  35. package/build/es/meta.js +2 -0
  36. package/build/es/meta.js.map +1 -0
  37. package/build/es/package.json +3 -0
  38. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.d.ts +12 -0
  39. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js +14 -0
  40. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js.map +1 -0
  41. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.d.ts +41 -0
  42. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js +231 -0
  43. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js.map +1 -0
  44. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.d.ts +19 -0
  45. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js +92 -0
  46. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js.map +1 -0
  47. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.d.ts +64 -0
  48. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js +43 -0
  49. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js.map +1 -0
  50. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.d.ts +341 -0
  51. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js +35 -0
  52. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js.map +1 -0
  53. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.d.ts +455 -0
  54. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js +244 -0
  55. package/build/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js.map +1 -0
  56. package/build/internal/cjs/index.d.ts +1 -0
  57. package/build/internal/cjs/index.js +18 -0
  58. package/build/internal/cjs/index.js.map +1 -0
  59. package/build/internal/cjs/index.typings.d.ts +1 -0
  60. package/build/internal/cjs/index.typings.js +18 -0
  61. package/build/internal/cjs/index.typings.js.map +1 -0
  62. package/build/internal/cjs/meta.d.ts +1 -0
  63. package/build/internal/cjs/meta.js +18 -0
  64. package/build/internal/cjs/meta.js.map +1 -0
  65. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.d.ts +14 -0
  66. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js +20 -0
  67. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js.map +1 -0
  68. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.d.ts +41 -0
  69. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js +239 -0
  70. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js.map +1 -0
  71. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.d.ts +19 -0
  72. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js +123 -0
  73. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js.map +1 -0
  74. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.d.ts +73 -0
  75. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js +54 -0
  76. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js.map +1 -0
  77. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.d.ts +341 -0
  78. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js +38 -0
  79. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js.map +1 -0
  80. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.d.ts +468 -0
  81. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js +275 -0
  82. package/build/internal/cjs/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js.map +1 -0
  83. package/build/internal/es/index.d.ts +1 -0
  84. package/build/internal/es/index.js +2 -0
  85. package/build/internal/es/index.js.map +1 -0
  86. package/build/internal/es/index.typings.d.ts +1 -0
  87. package/build/internal/es/index.typings.js +2 -0
  88. package/build/internal/es/index.typings.js.map +1 -0
  89. package/build/internal/es/meta.d.ts +1 -0
  90. package/build/internal/es/meta.js +2 -0
  91. package/build/internal/es/meta.js.map +1 -0
  92. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.d.ts +14 -0
  93. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js +14 -0
  94. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.context.js.map +1 -0
  95. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.d.ts +41 -0
  96. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js +231 -0
  97. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.http.js.map +1 -0
  98. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.d.ts +19 -0
  99. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js +92 -0
  100. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.meta.js.map +1 -0
  101. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.d.ts +73 -0
  102. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js +43 -0
  103. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.public.js.map +1 -0
  104. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.d.ts +341 -0
  105. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js +35 -0
  106. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.types.js.map +1 -0
  107. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.d.ts +468 -0
  108. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js +244 -0
  109. package/build/internal/es/src/emailsubscriptions-v1-emailsubscription-email-subscriptions.universal.js.map +1 -0
  110. package/meta/package.json +3 -0
  111. package/package.json +52 -0
@@ -0,0 +1,455 @@
1
+ export interface EmailSubscription {
2
+ /**
3
+ * Email subscription ID.
4
+ * @readonly
5
+ */
6
+ _id?: string | null;
7
+ /** Email address. */
8
+ email?: string;
9
+ /**
10
+ * Indicates the recipient's opt-in or opt-out status
11
+ * for marketing emails.
12
+ *
13
+ * Default: `NOT_SET`.
14
+ */
15
+ subscriptionStatus?: SubscriptionEnumStatus;
16
+ /**
17
+ * Indicates last reported status of sent emails.
18
+ *
19
+ * Default: `NOT_SET`.
20
+ */
21
+ deliverabilityStatus?: Status;
22
+ /**
23
+ * Date and time the email subscription was created.
24
+ * @readonly
25
+ */
26
+ _createdDate?: Date | null;
27
+ /**
28
+ * Date and time the email subscription was last updated.
29
+ * @readonly
30
+ */
31
+ _updatedDate?: Date | null;
32
+ }
33
+ export declare enum SubscriptionEnumStatus {
34
+ /** Undefined status. */
35
+ UNKNOWN = "UNKNOWN",
36
+ /** No status specified. This is the default, initial value before any info about the email address is known. */
37
+ NOT_SET = "NOT_SET",
38
+ /** Subscription confirmation was requested, but recipient hasn't confirmed yet. */
39
+ PENDING = "PENDING",
40
+ /** Recipient has opted in to marketing emails. */
41
+ SUBSCRIBED = "SUBSCRIBED",
42
+ /** Recipient has opted out of marketing emails. */
43
+ UNSUBSCRIBED = "UNSUBSCRIBED"
44
+ }
45
+ export declare enum Status {
46
+ /** No status specified. This is the initial default value before any info about the email address is known. */
47
+ NOT_SET = "NOT_SET",
48
+ /** Emails to this email address are being delivered successfully. */
49
+ VALID = "VALID",
50
+ /** The last email to the recipient bounced or was rejected. */
51
+ BOUNCED = "BOUNCED",
52
+ /** The recipient registered a spam complaint with their email provider. */
53
+ SPAM_COMPLAINT = "SPAM_COMPLAINT",
54
+ /** Multiple campaigns have been delivered to this address without any engagement from the recipient. (No emails were opened and no content was clicked.) This status might impact subsequent emails sent to this address. */
55
+ INACTIVE = "INACTIVE"
56
+ }
57
+ export interface V1RenderUnsubscribePageRequest {
58
+ /** Payload */
59
+ payload?: string;
60
+ /** Language */
61
+ language?: string | null;
62
+ }
63
+ export interface RawHttpResponse {
64
+ body?: Uint8Array;
65
+ statusCode?: number | null;
66
+ headers?: HeadersEntry[];
67
+ }
68
+ export interface HeadersEntry {
69
+ key?: string;
70
+ value?: string;
71
+ }
72
+ export interface V1ConfirmUnsubscribeActionRequest {
73
+ /** Payload */
74
+ payload?: string;
75
+ }
76
+ export interface Empty {
77
+ }
78
+ export interface EmailSubscriptionChanged {
79
+ /** subscription */
80
+ subscription?: EmailSubscription;
81
+ }
82
+ export interface GetEmailSubscriptionRequest {
83
+ _id: string;
84
+ }
85
+ export interface GetEmailSubscriptionResponse {
86
+ /** Returned email subscription */
87
+ emailSubscription?: EmailSubscription;
88
+ }
89
+ export interface UpdateEmailSubscriptionRequest {
90
+ /** Email subscription to update */
91
+ subscription?: EmailSubscription;
92
+ }
93
+ export interface UpdateEmailSubscriptionResponse {
94
+ /** Updated email subscription */
95
+ subscription?: EmailSubscription;
96
+ }
97
+ export interface QueryEmailSubscriptionsRequest {
98
+ /**
99
+ * Filter options.
100
+ * Currently, querying is supported on the `email` field
101
+ * with the `$in` array filter.
102
+ */
103
+ filter: Record<string, any> | null;
104
+ /**
105
+ * Pagination options. For more information, see
106
+ * [Pagination](https://dev.wix.com/api/rest/getting-started/pagination).
107
+ */
108
+ paging?: Paging;
109
+ }
110
+ export interface Paging {
111
+ /** Number of items to load. */
112
+ limit?: number | null;
113
+ /** Number of items to skip in the current sort order. */
114
+ offset?: number | null;
115
+ }
116
+ export interface QueryEmailSubscriptionsResponse {
117
+ /** List of subscribed emails that matched the query options. */
118
+ subscriptions?: EmailSubscription[];
119
+ /** Metadata for the paginated results. */
120
+ metadata?: PagingMetadata;
121
+ }
122
+ export interface PagingMetadata {
123
+ /** Number of items returned in the response. */
124
+ count?: number | null;
125
+ /** Offset that was requested. */
126
+ offset?: number | null;
127
+ /** Total number of items that match the query. */
128
+ total?: number | null;
129
+ /** Flag that indicates the server failed to calculate the `total` field. */
130
+ tooManyToCount?: boolean | null;
131
+ }
132
+ export interface UpsertEmailSubscriptionRequest {
133
+ /** Email subscription to update or create. */
134
+ subscription?: EmailSubscription;
135
+ }
136
+ export interface UpsertEmailSubscriptionResponse {
137
+ /** Updated or created email subscription. */
138
+ subscription?: EmailSubscription;
139
+ }
140
+ export interface BulkUpsertEmailSubscriptionRequest {
141
+ /** List of email subscriptions to update or create. */
142
+ subscriptions: EmailSubscription[];
143
+ }
144
+ export interface BulkUpsertEmailSubscriptionResponse {
145
+ /** List of updated or created email subscriptions. */
146
+ results?: BulkUpsertEmailSubscriptionResult[];
147
+ /** Numbers of successful and failed actions. */
148
+ metadata?: Metadata;
149
+ }
150
+ export interface BulkUpsertEmailSubscriptionResult {
151
+ /** Position of the requested email subscription in the bulk array. */
152
+ originalIndex?: number;
153
+ /** New or updated email subscription. */
154
+ emailSubscription?: EmailSubscription;
155
+ /**
156
+ * Error information if the action failed.
157
+ * Omitted from successful actions.
158
+ */
159
+ error?: Error;
160
+ }
161
+ export interface Error {
162
+ /** Error code. */
163
+ errorCode?: string;
164
+ /** Message that contains details about the error. */
165
+ message?: string;
166
+ }
167
+ export interface Metadata {
168
+ /** Number of successful actions. */
169
+ totalSuccess?: number;
170
+ /** Number of failed actions. */
171
+ totalFailure?: number;
172
+ }
173
+ export interface GenerateUnsubscribeLinkRequest {
174
+ /** Email address the unsubscribe link is for. */
175
+ emailAddress: string;
176
+ /** Arbitrary parameters for closing-the-loop. */
177
+ metadata?: Record<string, string>;
178
+ /** Language for displaying unsubscribe confirmation page (optional - default EN). */
179
+ language?: string | null;
180
+ }
181
+ export interface GenerateUnsubscribeLinkResponse {
182
+ /** The unsubscribe link. */
183
+ link?: string;
184
+ }
185
+ export interface RenderUnsubscribePageRequest {
186
+ /** Payload */
187
+ payload?: string;
188
+ /** Language */
189
+ language?: string | null;
190
+ }
191
+ export interface ConfirmUnsubscribeActionRequest {
192
+ /** Payload */
193
+ payload?: string;
194
+ }
195
+ export interface DomainEvent extends DomainEventBodyOneOf {
196
+ createdEvent?: EntityCreatedEvent;
197
+ updatedEvent?: EntityUpdatedEvent;
198
+ deletedEvent?: EntityDeletedEvent;
199
+ actionEvent?: ActionEvent;
200
+ /**
201
+ * Unique event ID.
202
+ * Allows clients to ignore duplicate webhooks.
203
+ */
204
+ _id?: string;
205
+ /**
206
+ * Assumes actions are also always typed to an entity_type
207
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
208
+ */
209
+ entityFqdn?: string;
210
+ /**
211
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
212
+ * This is although the created/updated/deleted notion is duplication of the oneof types
213
+ * Example: created/updated/deleted/started/completed/email_opened
214
+ */
215
+ slug?: string;
216
+ /** ID of the entity associated with the event. */
217
+ entityId?: string;
218
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */
219
+ eventTime?: Date | null;
220
+ /**
221
+ * Whether the event was triggered as a result of a privacy regulation application
222
+ * (for example, GDPR).
223
+ */
224
+ triggeredByAnonymizeRequest?: boolean | null;
225
+ /** If present, indicates the action that triggered the event. */
226
+ originatedFrom?: string | null;
227
+ /**
228
+ * A sequence number defining the order of updates to the underlying entity.
229
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
230
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
231
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
232
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
233
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
234
+ */
235
+ entityEventSequence?: string | null;
236
+ }
237
+ /** @oneof */
238
+ export interface DomainEventBodyOneOf {
239
+ createdEvent?: EntityCreatedEvent;
240
+ updatedEvent?: EntityUpdatedEvent;
241
+ deletedEvent?: EntityDeletedEvent;
242
+ actionEvent?: ActionEvent;
243
+ }
244
+ export interface EntityCreatedEvent {
245
+ entity?: string;
246
+ }
247
+ export interface RestoreInfo {
248
+ deletedDate?: Date | null;
249
+ }
250
+ export interface EntityUpdatedEvent {
251
+ /**
252
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
253
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
254
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
255
+ */
256
+ currentEntity?: string;
257
+ }
258
+ export interface EntityDeletedEvent {
259
+ /** Entity that was deleted */
260
+ deletedEntity?: string | null;
261
+ }
262
+ export interface ActionEvent {
263
+ body?: string;
264
+ }
265
+ export interface MessageEnvelope {
266
+ /** App instance ID. */
267
+ instanceId?: string | null;
268
+ /** Event type. */
269
+ eventType?: string;
270
+ /** The identification type and identity data. */
271
+ identity?: IdentificationData;
272
+ /** Stringify payload. */
273
+ data?: string;
274
+ }
275
+ export interface IdentificationData extends IdentificationDataIdOneOf {
276
+ /** ID of a site visitor that has not logged in to the site. */
277
+ anonymousVisitorId?: string;
278
+ /** ID of a site visitor that has logged in to the site. */
279
+ memberId?: string;
280
+ /** ID of a Wix user (site owner, contributor, etc.). */
281
+ wixUserId?: string;
282
+ /** ID of an app. */
283
+ appId?: string;
284
+ /** @readonly */
285
+ identityType?: WebhookIdentityType;
286
+ }
287
+ /** @oneof */
288
+ export interface IdentificationDataIdOneOf {
289
+ /** ID of a site visitor that has not logged in to the site. */
290
+ anonymousVisitorId?: string;
291
+ /** ID of a site visitor that has logged in to the site. */
292
+ memberId?: string;
293
+ /** ID of a Wix user (site owner, contributor, etc.). */
294
+ wixUserId?: string;
295
+ /** ID of an app. */
296
+ appId?: string;
297
+ }
298
+ export declare enum WebhookIdentityType {
299
+ UNKNOWN = "UNKNOWN",
300
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
301
+ MEMBER = "MEMBER",
302
+ WIX_USER = "WIX_USER",
303
+ APP = "APP"
304
+ }
305
+ export interface EmailSubscriptionNonNullableFields {
306
+ email: string;
307
+ subscriptionStatus: SubscriptionEnumStatus;
308
+ deliverabilityStatus: Status;
309
+ }
310
+ export interface GetEmailSubscriptionResponseNonNullableFields {
311
+ emailSubscription?: EmailSubscriptionNonNullableFields;
312
+ }
313
+ export interface QueryEmailSubscriptionsResponseNonNullableFields {
314
+ subscriptions: EmailSubscriptionNonNullableFields[];
315
+ }
316
+ export interface UpsertEmailSubscriptionResponseNonNullableFields {
317
+ subscription?: EmailSubscriptionNonNullableFields;
318
+ }
319
+ interface ErrorNonNullableFields {
320
+ errorCode: string;
321
+ message: string;
322
+ }
323
+ interface BulkUpsertEmailSubscriptionResultNonNullableFields {
324
+ originalIndex: number;
325
+ emailSubscription?: EmailSubscriptionNonNullableFields;
326
+ error?: ErrorNonNullableFields;
327
+ }
328
+ interface MetadataNonNullableFields {
329
+ totalSuccess: number;
330
+ totalFailure: number;
331
+ }
332
+ export interface BulkUpsertEmailSubscriptionResponseNonNullableFields {
333
+ results: BulkUpsertEmailSubscriptionResultNonNullableFields[];
334
+ metadata?: MetadataNonNullableFields;
335
+ }
336
+ export interface GenerateUnsubscribeLinkResponseNonNullableFields {
337
+ link: string;
338
+ }
339
+ export interface BaseEventMetadata {
340
+ /** App instance ID. */
341
+ instanceId?: string | null;
342
+ /** Event type. */
343
+ eventType?: string;
344
+ /** The identification type and identity data. */
345
+ identity?: IdentificationData;
346
+ }
347
+ export interface EmailsubscriptionEmailSubscriptionChangedEnvelope {
348
+ data: EmailSubscriptionChanged;
349
+ metadata: BaseEventMetadata;
350
+ }
351
+ /** @permissionScope Manage Email Subscriptions
352
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
353
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
354
+ * @webhook
355
+ * @eventType com.wixpress.emailsubscriptions.v1.EmailSubscriptionChanged
356
+ * @serviceIdentifier com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService
357
+ * @slug email_subscription_changed
358
+ * @documentationMaturity preview
359
+ */
360
+ export declare function onEmailsubscriptionEmailSubscriptionChanged(handler: (event: EmailsubscriptionEmailSubscriptionChangedEnvelope) => void | Promise<void>): void;
361
+ /**
362
+ * Retrieves email subscriptions,
363
+ * given the provided paging, filtering, and sorting.
364
+ *
365
+ * Currently, querying is supported on the `email` field
366
+ * with the `$in` array filter.
367
+ * For example, to query for emails "me@my.com" and "you@your.org",
368
+ * the filter should be formed like this:
369
+ *
370
+ * ```json
371
+ * { "filter": {
372
+ * "email": {
373
+ * "$in": ["me@my.com", "you@your.org"]
374
+ * }
375
+ * }
376
+ * }
377
+ * ```
378
+ *
379
+ * To learn how to query email subscriptions, see
380
+ * [API Query Language](https://dev.wix.com/api/rest/getting-started/api-query-language).
381
+ * @param filter - Filter options.
382
+ * Currently, querying is supported on the `email` field
383
+ * with the `$in` array filter.
384
+ * @public
385
+ * @documentationMaturity preview
386
+ * @requiredField filter
387
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
388
+ * @permissionScope Manage Email Subscriptions
389
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
390
+ * @applicableIdentity APP
391
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.QueryEmailSubscriptions
392
+ */
393
+ export declare function queryEmailSubscriptions(filter: Record<string, any> | null, options?: QueryEmailSubscriptionsOptions): Promise<QueryEmailSubscriptionsResponse & QueryEmailSubscriptionsResponseNonNullableFields>;
394
+ export interface QueryEmailSubscriptionsOptions {
395
+ /**
396
+ * Pagination options. For more information, see
397
+ * [Pagination](https://dev.wix.com/api/rest/getting-started/pagination).
398
+ */
399
+ paging?: Paging;
400
+ }
401
+ /**
402
+ * Updates or creates an email subscription for the requested email.
403
+ *
404
+ * An email subscription is always returned in the response,
405
+ * regardless of whether it was updated or created.
406
+ * @public
407
+ * @documentationMaturity preview
408
+ * @requiredField options.subscription.email
409
+ * @permissionId EMAIL_SUBSCRIPTIONS.MODIFY
410
+ * @permissionScope Manage Email Subscriptions
411
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
412
+ * @applicableIdentity APP
413
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.UpsertEmailSubscription
414
+ */
415
+ export declare function upsertEmailSubscription(options?: UpsertEmailSubscriptionOptions): Promise<UpsertEmailSubscriptionResponse & UpsertEmailSubscriptionResponseNonNullableFields>;
416
+ export interface UpsertEmailSubscriptionOptions {
417
+ /** Email subscription to update or create. */
418
+ subscription?: EmailSubscription;
419
+ }
420
+ /**
421
+ * Updates or creates multiple email subscriptions.
422
+ * @param subscriptions - List of email subscriptions to update or create.
423
+ * @public
424
+ * @documentationMaturity preview
425
+ * @requiredField subscriptions
426
+ * @permissionId EMAIL_SUBSCRIPTIONS.MODIFY
427
+ * @permissionScope Manage Email Subscriptions
428
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
429
+ * @applicableIdentity APP
430
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.BulkUpsertEmailSubscription
431
+ */
432
+ export declare function bulkUpsertEmailSubscription(subscriptions: EmailSubscription[]): Promise<BulkUpsertEmailSubscriptionResponse & BulkUpsertEmailSubscriptionResponseNonNullableFields>;
433
+ /**
434
+ * Creates an unsubscribe link to be shared with the relevant recipient.
435
+ *
436
+ * If someone clicks the **Unsubscribe** button on the confirmation page,
437
+ * the recipient's `subscriptionStatus` is changed to `UNSUBSCRIBED`.
438
+ * @param emailAddress - Email address the unsubscribe link is for.
439
+ * @public
440
+ * @documentationMaturity preview
441
+ * @requiredField emailAddress
442
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
443
+ * @permissionScope Manage Email Subscriptions
444
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
445
+ * @applicableIdentity APP
446
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.GenerateUnsubscribeLink
447
+ */
448
+ export declare function generateUnsubscribeLink(emailAddress: string, options?: GenerateUnsubscribeLinkOptions): Promise<GenerateUnsubscribeLinkResponse & GenerateUnsubscribeLinkResponseNonNullableFields>;
449
+ export interface GenerateUnsubscribeLinkOptions {
450
+ /** Arbitrary parameters for closing-the-loop. */
451
+ metadata?: Record<string, string>;
452
+ /** Language for displaying unsubscribe confirmation page (optional - default EN). */
453
+ language?: string | null;
454
+ }
455
+ export {};