@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,468 @@
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
+ * Get Email Subscription
363
+ * @internal
364
+ * @documentationMaturity preview
365
+ * @requiredField _id
366
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
367
+ * @permissionScope Manage Email Subscriptions
368
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
369
+ * @applicableIdentity APP
370
+ * @returns Returned email subscription
371
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.GetEmailSubscription
372
+ */
373
+ export declare function getEmailSubscription(_id: string): Promise<EmailSubscription & EmailSubscriptionNonNullableFields>;
374
+ /**
375
+ * Retrieves email subscriptions,
376
+ * given the provided paging, filtering, and sorting.
377
+ *
378
+ * Currently, querying is supported on the `email` field
379
+ * with the `$in` array filter.
380
+ * For example, to query for emails "me@my.com" and "you@your.org",
381
+ * the filter should be formed like this:
382
+ *
383
+ * ```json
384
+ * { "filter": {
385
+ * "email": {
386
+ * "$in": ["me@my.com", "you@your.org"]
387
+ * }
388
+ * }
389
+ * }
390
+ * ```
391
+ *
392
+ * To learn how to query email subscriptions, see
393
+ * [API Query Language](https://dev.wix.com/api/rest/getting-started/api-query-language).
394
+ * @param filter - Filter options.
395
+ * Currently, querying is supported on the `email` field
396
+ * with the `$in` array filter.
397
+ * @public
398
+ * @documentationMaturity preview
399
+ * @requiredField filter
400
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
401
+ * @permissionScope Manage Email Subscriptions
402
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
403
+ * @applicableIdentity APP
404
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.QueryEmailSubscriptions
405
+ */
406
+ export declare function queryEmailSubscriptions(filter: Record<string, any> | null, options?: QueryEmailSubscriptionsOptions): Promise<QueryEmailSubscriptionsResponse & QueryEmailSubscriptionsResponseNonNullableFields>;
407
+ export interface QueryEmailSubscriptionsOptions {
408
+ /**
409
+ * Pagination options. For more information, see
410
+ * [Pagination](https://dev.wix.com/api/rest/getting-started/pagination).
411
+ */
412
+ paging?: Paging;
413
+ }
414
+ /**
415
+ * Updates or creates an email subscription for the requested email.
416
+ *
417
+ * An email subscription is always returned in the response,
418
+ * regardless of whether it was updated or created.
419
+ * @public
420
+ * @documentationMaturity preview
421
+ * @requiredField options.subscription.email
422
+ * @permissionId EMAIL_SUBSCRIPTIONS.MODIFY
423
+ * @permissionScope Manage Email Subscriptions
424
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
425
+ * @applicableIdentity APP
426
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.UpsertEmailSubscription
427
+ */
428
+ export declare function upsertEmailSubscription(options?: UpsertEmailSubscriptionOptions): Promise<UpsertEmailSubscriptionResponse & UpsertEmailSubscriptionResponseNonNullableFields>;
429
+ export interface UpsertEmailSubscriptionOptions {
430
+ /** Email subscription to update or create. */
431
+ subscription?: EmailSubscription;
432
+ }
433
+ /**
434
+ * Updates or creates multiple email subscriptions.
435
+ * @param subscriptions - List of email subscriptions to update or create.
436
+ * @public
437
+ * @documentationMaturity preview
438
+ * @requiredField subscriptions
439
+ * @permissionId EMAIL_SUBSCRIPTIONS.MODIFY
440
+ * @permissionScope Manage Email Subscriptions
441
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
442
+ * @applicableIdentity APP
443
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.BulkUpsertEmailSubscription
444
+ */
445
+ export declare function bulkUpsertEmailSubscription(subscriptions: EmailSubscription[]): Promise<BulkUpsertEmailSubscriptionResponse & BulkUpsertEmailSubscriptionResponseNonNullableFields>;
446
+ /**
447
+ * Creates an unsubscribe link to be shared with the relevant recipient.
448
+ *
449
+ * If someone clicks the **Unsubscribe** button on the confirmation page,
450
+ * the recipient's `subscriptionStatus` is changed to `UNSUBSCRIBED`.
451
+ * @param emailAddress - Email address the unsubscribe link is for.
452
+ * @public
453
+ * @documentationMaturity preview
454
+ * @requiredField emailAddress
455
+ * @permissionId EMAIL_SUBSCRIPTIONS.VIEW
456
+ * @permissionScope Manage Email Subscriptions
457
+ * @permissionScopeId SCOPE.DC-MANAGE.EMAIL-SUBSCRIPTIONS
458
+ * @applicableIdentity APP
459
+ * @fqn com.wixpress.emailsubscriptions.v1.EmailSubscriptionsService.GenerateUnsubscribeLink
460
+ */
461
+ export declare function generateUnsubscribeLink(emailAddress: string, options?: GenerateUnsubscribeLinkOptions): Promise<GenerateUnsubscribeLinkResponse & GenerateUnsubscribeLinkResponseNonNullableFields>;
462
+ export interface GenerateUnsubscribeLinkOptions {
463
+ /** Arbitrary parameters for closing-the-loop. */
464
+ metadata?: Record<string, string>;
465
+ /** Language for displaying unsubscribe confirmation page (optional - default EN). */
466
+ language?: string | null;
467
+ }
468
+ export {};