@wix/auto_sdk_crm_extended-fields 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/contacts-v4-extended-field-extended-fields.context.d.ts +25 -0
  11. package/build/cjs/src/contacts-v4-extended-field-extended-fields.context.js +32 -0
  12. package/build/cjs/src/contacts-v4-extended-field-extended-fields.context.js.map +1 -0
  13. package/build/cjs/src/contacts-v4-extended-field-extended-fields.http.d.ts +40 -0
  14. package/build/cjs/src/contacts-v4-extended-field-extended-fields.http.js +222 -0
  15. package/build/cjs/src/contacts-v4-extended-field-extended-fields.http.js.map +1 -0
  16. package/build/cjs/src/contacts-v4-extended-field-extended-fields.meta.d.ts +23 -0
  17. package/build/cjs/src/contacts-v4-extended-field-extended-fields.meta.js +123 -0
  18. package/build/cjs/src/contacts-v4-extended-field-extended-fields.meta.js.map +1 -0
  19. package/build/cjs/src/contacts-v4-extended-field-extended-fields.public.d.ts +83 -0
  20. package/build/cjs/src/contacts-v4-extended-field-extended-fields.public.js +75 -0
  21. package/build/cjs/src/contacts-v4-extended-field-extended-fields.public.js.map +1 -0
  22. package/build/cjs/src/contacts-v4-extended-field-extended-fields.types.d.ts +388 -0
  23. package/build/cjs/src/contacts-v4-extended-field-extended-fields.types.js +37 -0
  24. package/build/cjs/src/contacts-v4-extended-field-extended-fields.types.js.map +1 -0
  25. package/build/cjs/src/contacts-v4-extended-field-extended-fields.universal.d.ts +710 -0
  26. package/build/cjs/src/contacts-v4-extended-field-extended-fields.universal.js +319 -0
  27. package/build/cjs/src/contacts-v4-extended-field-extended-fields.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/contacts-v4-extended-field-extended-fields.context.d.ts +25 -0
  39. package/build/es/src/contacts-v4-extended-field-extended-fields.context.js +25 -0
  40. package/build/es/src/contacts-v4-extended-field-extended-fields.context.js.map +1 -0
  41. package/build/es/src/contacts-v4-extended-field-extended-fields.http.d.ts +40 -0
  42. package/build/es/src/contacts-v4-extended-field-extended-fields.http.js +214 -0
  43. package/build/es/src/contacts-v4-extended-field-extended-fields.http.js.map +1 -0
  44. package/build/es/src/contacts-v4-extended-field-extended-fields.meta.d.ts +23 -0
  45. package/build/es/src/contacts-v4-extended-field-extended-fields.meta.js +92 -0
  46. package/build/es/src/contacts-v4-extended-field-extended-fields.meta.js.map +1 -0
  47. package/build/es/src/contacts-v4-extended-field-extended-fields.public.d.ts +83 -0
  48. package/build/es/src/contacts-v4-extended-field-extended-fields.public.js +63 -0
  49. package/build/es/src/contacts-v4-extended-field-extended-fields.public.js.map +1 -0
  50. package/build/es/src/contacts-v4-extended-field-extended-fields.types.d.ts +388 -0
  51. package/build/es/src/contacts-v4-extended-field-extended-fields.types.js +34 -0
  52. package/build/es/src/contacts-v4-extended-field-extended-fields.types.js.map +1 -0
  53. package/build/es/src/contacts-v4-extended-field-extended-fields.universal.d.ts +710 -0
  54. package/build/es/src/contacts-v4-extended-field-extended-fields.universal.js +288 -0
  55. package/build/es/src/contacts-v4-extended-field-extended-fields.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/contacts-v4-extended-field-extended-fields.context.d.ts +25 -0
  66. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.context.js +32 -0
  67. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.context.js.map +1 -0
  68. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.http.d.ts +40 -0
  69. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.http.js +222 -0
  70. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.http.js.map +1 -0
  71. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.meta.d.ts +23 -0
  72. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.meta.js +123 -0
  73. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.meta.js.map +1 -0
  74. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.public.d.ts +83 -0
  75. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.public.js +75 -0
  76. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.public.js.map +1 -0
  77. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.types.d.ts +388 -0
  78. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.types.js +37 -0
  79. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.types.js.map +1 -0
  80. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.universal.d.ts +710 -0
  81. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.universal.js +319 -0
  82. package/build/internal/cjs/src/contacts-v4-extended-field-extended-fields.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/contacts-v4-extended-field-extended-fields.context.d.ts +25 -0
  93. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.context.js +25 -0
  94. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.context.js.map +1 -0
  95. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.http.d.ts +40 -0
  96. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.http.js +214 -0
  97. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.http.js.map +1 -0
  98. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.meta.d.ts +23 -0
  99. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.meta.js +92 -0
  100. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.meta.js.map +1 -0
  101. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.public.d.ts +83 -0
  102. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.public.js +63 -0
  103. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.public.js.map +1 -0
  104. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.types.d.ts +388 -0
  105. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.types.js +34 -0
  106. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.types.js.map +1 -0
  107. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.universal.d.ts +710 -0
  108. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.universal.js +288 -0
  109. package/build/internal/es/src/contacts-v4-extended-field-extended-fields.universal.js.map +1 -0
  110. package/meta/package.json +3 -0
  111. package/package.json +52 -0
@@ -0,0 +1,710 @@
1
+ /** Extended field that was found or created. */
2
+ export interface ExtendedField {
3
+ /**
4
+ * Extended field namespace.
5
+ *
6
+ * Extended fields created through by calling the Find Or Create Extended Field method
7
+ * are automatically assigned to the `custom` namespace.
8
+ * @readonly
9
+ */
10
+ namespace?: string | null;
11
+ /**
12
+ * Extended field key.
13
+ *
14
+ * When accessing contact data,
15
+ * extended field data is available at `extendedFields[key]`.
16
+ * For example, if the key is "custom.notes",
17
+ * the value can be accessed at `extendedFields["custom.notes"]`.
18
+ *
19
+ * `key` is generated when the extended field is created
20
+ * and can't be modified, even if `displayName` changes.
21
+ * @readonly
22
+ */
23
+ key?: string;
24
+ /** Display name shown in the contact list. */
25
+ displayName?: string;
26
+ /**
27
+ * Type of data the field holds.
28
+ * @readonly
29
+ */
30
+ dataType?: FieldDataType;
31
+ /**
32
+ * Indicates whether the extended field is a system field or custom field.
33
+ * @readonly
34
+ */
35
+ fieldType?: FieldType;
36
+ /**
37
+ * Date and time the field was created.
38
+ * @readonly
39
+ */
40
+ _createdDate?: Date | null;
41
+ /**
42
+ * Date and time the field was last updated.
43
+ * @readonly
44
+ */
45
+ _updatedDate?: Date | null;
46
+ /**
47
+ * Field description, if the field is a system field.
48
+ * @readonly
49
+ */
50
+ description?: string | null;
51
+ }
52
+ export declare enum FieldDataType {
53
+ /** Accepts strings. */
54
+ TEXT = "TEXT",
55
+ /** Accepts floats. */
56
+ NUMBER = "NUMBER",
57
+ /** Accepts dates formatted as `YYYY-MM-DD`. */
58
+ DATE = "DATE",
59
+ /** Accepts strings. Prepends `https://` if no protocol is included. */
60
+ URL = "URL"
61
+ }
62
+ export declare enum FieldType {
63
+ /** Field is a system field managed by Wix. System fields can't be modified by calling the Update Extended Field method. */
64
+ SYSTEM = "SYSTEM",
65
+ /** Field is a custom field and can be modified by calling the Update Extended Field method. */
66
+ USER_DEFINED = "USER_DEFINED"
67
+ }
68
+ /** Extended field filter options. */
69
+ export interface ListExtendedFieldsRequest {
70
+ /** Filter for fields of the specified type. */
71
+ fieldType?: FieldType;
72
+ /**
73
+ * Filter for fields in the specified namespace.
74
+ * Fields created by calling the Find Or Create Extended Field method
75
+ * are automatically assigned to the `custom` namespace.
76
+ */
77
+ namespace?: string | null;
78
+ /** Filter for fields where `displayName` starts with the specified case-sensitive string. */
79
+ startsWith?: string | null;
80
+ /** Sorting options. */
81
+ sort?: Sorting;
82
+ /** Paging options. */
83
+ paging?: Paging;
84
+ }
85
+ export interface Sorting {
86
+ /** Name of the field to sort by. */
87
+ fieldName?: string;
88
+ /**
89
+ * Sort order.
90
+ *
91
+ * Default: `ASC`.
92
+ */
93
+ order?: SortOrder;
94
+ }
95
+ export declare enum SortOrder {
96
+ /** Sort by ascending order. */
97
+ ASC = "ASC",
98
+ /** Sort by descending order. */
99
+ DESC = "DESC"
100
+ }
101
+ export interface Paging {
102
+ /**
103
+ * Number of items to return.
104
+ *
105
+ * Defaults to `100`.
106
+ */
107
+ limit?: number | null;
108
+ /**
109
+ * Number of items to skip in the current sort order.
110
+ *
111
+ * Defaults to `0`.
112
+ */
113
+ offset?: number | null;
114
+ }
115
+ /** List of extended fields. */
116
+ export interface ListExtendedFieldsResponse {
117
+ /** List of extended fields. */
118
+ fields?: ExtendedField[];
119
+ /** Metadata for the page of results. */
120
+ metadata?: PagingMetadata;
121
+ }
122
+ export interface PagingMetadata {
123
+ /** Number of items returned. */
124
+ count?: number | null;
125
+ /** Requested offset. */
126
+ offset?: number | null;
127
+ /** Number of items that matched the query. */
128
+ total?: number | null;
129
+ /**
130
+ * Indicates if `total` calculation timed out before the response was sent.
131
+ * Typically this happens if there is a large set of results.
132
+ */
133
+ tooManyToCount?: boolean | null;
134
+ }
135
+ /** Custom field to find or create. */
136
+ export interface FindOrCreateExtendedFieldRequest {
137
+ /**
138
+ * Display name to retrieve or create.
139
+ *
140
+ * If an existing custom field is an exact match
141
+ * for the specified display name,
142
+ * the existing field is returned.
143
+ * If not, a new field is created and returned.
144
+ */
145
+ displayName: string;
146
+ /**
147
+ * Type of data the field holds.
148
+ * Ignored if an existing field is an exact match
149
+ * for the specified display name.
150
+ */
151
+ dataType?: FieldDataType;
152
+ }
153
+ /** Extended field that was found or created. */
154
+ export interface FindOrCreateExtendedFieldResponse {
155
+ /** Extended field that was found or created. */
156
+ field?: ExtendedField;
157
+ /**
158
+ * Indicates whether the extended field was just created or already existed.
159
+ *
160
+ * Returns `true` if the field was just created.
161
+ */
162
+ newField?: boolean;
163
+ }
164
+ export interface GetExtendedFieldRequest {
165
+ /**
166
+ * Extended field key.
167
+ *
168
+ * When accessing contact data,
169
+ * extended field values are available at `info.extendedFields.items[key]`.
170
+ * For example, if the key is "custom.patronus",
171
+ * the value can be accessed at `info.extendedFields.items["custom.patronus"]`.
172
+ *
173
+ * `key` is generated when the extended field is created.
174
+ * It can't be modified, even if `displayName` is updated.
175
+ */
176
+ key: string;
177
+ }
178
+ /** The specified field. */
179
+ export interface GetExtendedFieldResponse {
180
+ /** The specified field. */
181
+ field?: ExtendedField;
182
+ }
183
+ export interface GetExtendedFieldByLegacyIdRequest {
184
+ /** Legacy ID of the extended field. */
185
+ legacyId?: string;
186
+ }
187
+ export interface GetExtendedFieldByLegacyIdResponse {
188
+ /** The requested extended field. */
189
+ field?: ExtendedField;
190
+ }
191
+ export interface UpdateExtendedFieldRequest {
192
+ /** Extended field to rename. */
193
+ field?: ExtendedField;
194
+ }
195
+ /** Updated extended field. */
196
+ export interface UpdateExtendedFieldResponse {
197
+ /** Renamed extended field. */
198
+ field?: ExtendedField;
199
+ }
200
+ export interface DeleteExtendedFieldRequest {
201
+ /** Extended field key. */
202
+ key: string;
203
+ }
204
+ export interface DeleteExtendedFieldResponse {
205
+ }
206
+ export interface PurgeRequest {
207
+ /** Instance ID of the site. */
208
+ instanceId?: string;
209
+ }
210
+ export interface PurgeResponse {
211
+ /** Number of items deleted. */
212
+ deletedItems?: number;
213
+ }
214
+ export interface GdprListRequest {
215
+ /** Instance ID of the site. */
216
+ instanceId?: string;
217
+ }
218
+ export interface GdprListResponse {
219
+ /** List of extended fields. */
220
+ fields?: ExtendedField[];
221
+ }
222
+ export interface QueryExtendedFieldsRequest {
223
+ /** Query options. */
224
+ query?: Query;
225
+ }
226
+ export interface Query {
227
+ /**
228
+ * ilter object.
229
+ *
230
+ * Possible filters: `$eq`, `$gt`, `$gte`, `$in`, `$lt`, `$lte`, `$ne`, `$startsWith`.
231
+ *
232
+ * For a detailed list of supported filters, see [sorting and filtering for extended fields](https://dev.wix.com/api/rest/contacts/extended-fields/sort-and-filter).
233
+ *
234
+ * Example: `{ "filter": {
235
+ * "displayName": {
236
+ * "$startsWith": "Referral"
237
+ * }
238
+ * }
239
+ * }`
240
+ */
241
+ filter?: Record<string, any> | null;
242
+ /**
243
+ * Sorting options. Currently supports sorting on one field only.
244
+ *
245
+ * Example: `{ "sort": [{"fieldName": "displayName", "order": "DESC"}] }`
246
+ */
247
+ sort?: Sorting[];
248
+ /** Pagination options. */
249
+ paging?: Paging;
250
+ }
251
+ export interface QueryExtendedFieldsResponse {
252
+ /** List of extended fields. */
253
+ fields?: ExtendedField[];
254
+ /** Details on the paged set of results returned. */
255
+ pagingMetadata?: PagingMetadata;
256
+ }
257
+ export interface DomainEvent extends DomainEventBodyOneOf {
258
+ createdEvent?: EntityCreatedEvent;
259
+ updatedEvent?: EntityUpdatedEvent;
260
+ deletedEvent?: EntityDeletedEvent;
261
+ actionEvent?: ActionEvent;
262
+ /**
263
+ * Unique event ID.
264
+ * Allows clients to ignore duplicate webhooks.
265
+ */
266
+ _id?: string;
267
+ /**
268
+ * Assumes actions are also always typed to an entity_type
269
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
270
+ */
271
+ entityFqdn?: string;
272
+ /**
273
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
274
+ * This is although the created/updated/deleted notion is duplication of the oneof types
275
+ * Example: created/updated/deleted/started/completed/email_opened
276
+ */
277
+ slug?: string;
278
+ /** ID of the entity associated with the event. */
279
+ entityId?: string;
280
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */
281
+ eventTime?: Date | null;
282
+ /**
283
+ * Whether the event was triggered as a result of a privacy regulation application
284
+ * (for example, GDPR).
285
+ */
286
+ triggeredByAnonymizeRequest?: boolean | null;
287
+ /** If present, indicates the action that triggered the event. */
288
+ originatedFrom?: string | null;
289
+ /**
290
+ * A sequence number defining the order of updates to the underlying entity.
291
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
292
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
293
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
294
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
295
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
296
+ */
297
+ entityEventSequence?: string | null;
298
+ }
299
+ /** @oneof */
300
+ export interface DomainEventBodyOneOf {
301
+ createdEvent?: EntityCreatedEvent;
302
+ updatedEvent?: EntityUpdatedEvent;
303
+ deletedEvent?: EntityDeletedEvent;
304
+ actionEvent?: ActionEvent;
305
+ }
306
+ export interface EntityCreatedEvent {
307
+ entity?: string;
308
+ }
309
+ export interface RestoreInfo {
310
+ deletedDate?: Date | null;
311
+ }
312
+ export interface EntityUpdatedEvent {
313
+ /**
314
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
315
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
316
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
317
+ */
318
+ currentEntity?: string;
319
+ }
320
+ export interface EntityDeletedEvent {
321
+ /** Entity that was deleted */
322
+ deletedEntity?: string | null;
323
+ }
324
+ export interface ActionEvent {
325
+ body?: string;
326
+ }
327
+ export interface MessageEnvelope {
328
+ /** App instance ID. */
329
+ instanceId?: string | null;
330
+ /** Event type. */
331
+ eventType?: string;
332
+ /** The identification type and identity data. */
333
+ identity?: IdentificationData;
334
+ /** Stringify payload. */
335
+ data?: string;
336
+ }
337
+ export interface IdentificationData extends IdentificationDataIdOneOf {
338
+ /** ID of a site visitor that has not logged in to the site. */
339
+ anonymousVisitorId?: string;
340
+ /** ID of a site visitor that has logged in to the site. */
341
+ memberId?: string;
342
+ /** ID of a Wix user (site owner, contributor, etc.). */
343
+ wixUserId?: string;
344
+ /** ID of an app. */
345
+ appId?: string;
346
+ /** @readonly */
347
+ identityType?: WebhookIdentityType;
348
+ }
349
+ /** @oneof */
350
+ export interface IdentificationDataIdOneOf {
351
+ /** ID of a site visitor that has not logged in to the site. */
352
+ anonymousVisitorId?: string;
353
+ /** ID of a site visitor that has logged in to the site. */
354
+ memberId?: string;
355
+ /** ID of a Wix user (site owner, contributor, etc.). */
356
+ wixUserId?: string;
357
+ /** ID of an app. */
358
+ appId?: string;
359
+ }
360
+ export declare enum WebhookIdentityType {
361
+ UNKNOWN = "UNKNOWN",
362
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
363
+ MEMBER = "MEMBER",
364
+ WIX_USER = "WIX_USER",
365
+ APP = "APP"
366
+ }
367
+ export interface ExtendedFieldNonNullableFields {
368
+ key: string;
369
+ displayName: string;
370
+ dataType: FieldDataType;
371
+ fieldType: FieldType;
372
+ }
373
+ export interface FindOrCreateExtendedFieldResponseNonNullableFields {
374
+ field?: ExtendedFieldNonNullableFields;
375
+ newField: boolean;
376
+ }
377
+ export interface GetExtendedFieldResponseNonNullableFields {
378
+ field?: ExtendedFieldNonNullableFields;
379
+ }
380
+ export interface UpdateExtendedFieldResponseNonNullableFields {
381
+ field?: ExtendedFieldNonNullableFields;
382
+ }
383
+ export interface QueryExtendedFieldsResponseNonNullableFields {
384
+ fields: ExtendedFieldNonNullableFields[];
385
+ }
386
+ export interface BaseEventMetadata {
387
+ /** App instance ID. */
388
+ instanceId?: string | null;
389
+ /** Event type. */
390
+ eventType?: string;
391
+ /** The identification type and identity data. */
392
+ identity?: IdentificationData;
393
+ }
394
+ export interface EventMetadata extends BaseEventMetadata {
395
+ /**
396
+ * Unique event ID.
397
+ * Allows clients to ignore duplicate webhooks.
398
+ */
399
+ _id?: string;
400
+ /**
401
+ * Assumes actions are also always typed to an entity_type
402
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
403
+ */
404
+ entityFqdn?: string;
405
+ /**
406
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
407
+ * This is although the created/updated/deleted notion is duplication of the oneof types
408
+ * Example: created/updated/deleted/started/completed/email_opened
409
+ */
410
+ slug?: string;
411
+ /** ID of the entity associated with the event. */
412
+ entityId?: string;
413
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */
414
+ eventTime?: Date | null;
415
+ /**
416
+ * Whether the event was triggered as a result of a privacy regulation application
417
+ * (for example, GDPR).
418
+ */
419
+ triggeredByAnonymizeRequest?: boolean | null;
420
+ /** If present, indicates the action that triggered the event. */
421
+ originatedFrom?: string | null;
422
+ /**
423
+ * A sequence number defining the order of updates to the underlying entity.
424
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
425
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
426
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
427
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
428
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
429
+ */
430
+ entityEventSequence?: string | null;
431
+ }
432
+ export interface ExtendedFieldCreatedEnvelope {
433
+ entity: ExtendedField;
434
+ metadata: EventMetadata;
435
+ }
436
+ /**
437
+ * Triggered when an extended field is created.
438
+ * @permissionScope Manage Bookings Services and Settings
439
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
440
+ * @permissionScope Manage Portfolio
441
+ * @permissionScopeId SCOPE.PORTFOLIO.MANAGE-PORTFOLIO
442
+ * @permissionScope Manage Contact Extended Fields
443
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
444
+ * @permissionScope Manage Restaurants - all permissions
445
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
446
+ * @permissionScope Manage Members and Contacts - all permissions
447
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
448
+ * @permissionId CONTACTS_SCHEMA.VIEW
449
+ * @webhook
450
+ * @eventType wix.contacts.v4.extended-field_created
451
+ */
452
+ export declare function onExtendedFieldCreated(handler: (event: ExtendedFieldCreatedEnvelope) => void | Promise<void>): void;
453
+ export interface ExtendedFieldDeletedEnvelope {
454
+ metadata: EventMetadata;
455
+ }
456
+ /**
457
+ * Triggered when an extended field is deleted.
458
+ * @permissionScope Manage Bookings Services and Settings
459
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
460
+ * @permissionScope Manage Portfolio
461
+ * @permissionScopeId SCOPE.PORTFOLIO.MANAGE-PORTFOLIO
462
+ * @permissionScope Manage Contact Extended Fields
463
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
464
+ * @permissionScope Manage Restaurants - all permissions
465
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
466
+ * @permissionScope Manage Members and Contacts - all permissions
467
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
468
+ * @permissionId CONTACTS_SCHEMA.VIEW
469
+ * @webhook
470
+ * @eventType wix.contacts.v4.extended-field_deleted
471
+ */
472
+ export declare function onExtendedFieldDeleted(handler: (event: ExtendedFieldDeletedEnvelope) => void | Promise<void>): void;
473
+ export interface ExtendedFieldUpdatedEnvelope {
474
+ entity: ExtendedField;
475
+ metadata: EventMetadata;
476
+ }
477
+ /**
478
+ * Triggered when an extended field is updated.
479
+ * @permissionScope Manage Bookings Services and Settings
480
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
481
+ * @permissionScope Manage Portfolio
482
+ * @permissionScopeId SCOPE.PORTFOLIO.MANAGE-PORTFOLIO
483
+ * @permissionScope Manage Contact Extended Fields
484
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
485
+ * @permissionScope Manage Restaurants - all permissions
486
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
487
+ * @permissionScope Manage Members and Contacts - all permissions
488
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
489
+ * @permissionId CONTACTS_SCHEMA.VIEW
490
+ * @webhook
491
+ * @eventType wix.contacts.v4.extended-field_updated
492
+ */
493
+ export declare function onExtendedFieldUpdated(handler: (event: ExtendedFieldUpdatedEnvelope) => void | Promise<void>): void;
494
+ /**
495
+ * Retrieves a custom field with a specified name, or creates one if it doesn't exist.
496
+ * The number of custom fields is limited to 100.
497
+ *
498
+ * Successful calls to this method always return a field,
499
+ * which can be specified in subsequent calls.
500
+ *
501
+ * To find an existing custom field without potentially creating a new one, call Get Extended Field or
502
+ * Query Extended Fields.
503
+ * @param displayName - Display name to retrieve or create.
504
+ *
505
+ * If an existing custom field is an exact match
506
+ * for the specified display name,
507
+ * the existing field is returned.
508
+ * If not, a new field is created and returned.
509
+ * @param dataType - Type of data the field holds.
510
+ * Ignored if an existing field is an exact match
511
+ * for the specified display name.
512
+ * @public
513
+ * @requiredField dataType
514
+ * @requiredField displayName
515
+ * @permissionId CONTACTS_SCHEMA.MODIFY
516
+ * @permissionScope Manage Contact Extended Fields
517
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
518
+ * @permissionScope Manage Restaurants - all permissions
519
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
520
+ * @permissionScope Manage Members and Contacts - all permissions
521
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
522
+ * @applicableIdentity APP
523
+ * @returns Extended field that was found or created.
524
+ * @fqn com.wixpress.contacts.fields.v4.ContactExtendedFieldsServiceV4.FindOrCreateExtendedField
525
+ */
526
+ export declare function findOrCreateExtendedField(displayName: string, dataType: FieldDataType): Promise<FindOrCreateExtendedFieldResponse & FindOrCreateExtendedFieldResponseNonNullableFields>;
527
+ /**
528
+ * Retrieves an extended field by the specified extended field key.
529
+ * @public
530
+ * @requiredField key
531
+ * @param key - null
532
+ * @permissionId CONTACTS_SCHEMA.VIEW
533
+ * @permissionScope Manage Bookings Services and Settings
534
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
535
+ * @permissionScope Manage Portfolio
536
+ * @permissionScopeId SCOPE.PORTFOLIO.MANAGE-PORTFOLIO
537
+ * @permissionScope Manage Contact Extended Fields
538
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
539
+ * @permissionScope Manage Restaurants - all permissions
540
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
541
+ * @permissionScope Manage Members and Contacts - all permissions
542
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
543
+ * @applicableIdentity APP
544
+ * @returns The specified field.
545
+ * @fqn com.wixpress.contacts.fields.v4.ContactExtendedFieldsServiceV4.GetExtendedField
546
+ */
547
+ export declare function getExtendedField(key: string): Promise<ExtendedField & ExtendedFieldNonNullableFields>;
548
+ /**
549
+ * Renames an extended field.
550
+ * @public
551
+ * @requiredField field
552
+ * @requiredField field.displayName
553
+ * @requiredField key
554
+ * @param key - null
555
+ * @param field - null
556
+ * @permissionId CONTACTS_SCHEMA.MODIFY
557
+ * @permissionScope Manage Contact Extended Fields
558
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
559
+ * @permissionScope Manage Restaurants - all permissions
560
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
561
+ * @permissionScope Manage Members and Contacts - all permissions
562
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
563
+ * @applicableIdentity APP
564
+ * @returns Renamed extended field.
565
+ * @fqn com.wixpress.contacts.fields.v4.ContactExtendedFieldsServiceV4.UpdateExtendedField
566
+ */
567
+ export declare function renameExtendedField(key: string, field: RenameExtendedField): Promise<ExtendedField & ExtendedFieldNonNullableFields>;
568
+ export interface RenameExtendedField {
569
+ /**
570
+ * Extended field namespace.
571
+ *
572
+ * Extended fields created through by calling the Find Or Create Extended Field method
573
+ * are automatically assigned to the `custom` namespace.
574
+ * @readonly
575
+ */
576
+ namespace?: string | null;
577
+ /** Display name shown in the contact list. */
578
+ displayName?: string;
579
+ /**
580
+ * Type of data the field holds.
581
+ * @readonly
582
+ */
583
+ dataType?: FieldDataType;
584
+ /**
585
+ * Indicates whether the extended field is a system field or custom field.
586
+ * @readonly
587
+ */
588
+ fieldType?: FieldType;
589
+ /**
590
+ * Date and time the field was created.
591
+ * @readonly
592
+ */
593
+ _createdDate?: Date | null;
594
+ /**
595
+ * Date and time the field was last updated.
596
+ * @readonly
597
+ */
598
+ _updatedDate?: Date | null;
599
+ /**
600
+ * Field description, if the field is a system field.
601
+ * @readonly
602
+ */
603
+ description?: string | null;
604
+ }
605
+ /**
606
+ * Deletes an extended field.
607
+ *
608
+ * When an extended field is deleted,
609
+ * any contact data stored in the field is also permanently deleted.
610
+ * @param key - Extended field key.
611
+ * @public
612
+ * @requiredField key
613
+ * @permissionId CONTACTS_SCHEMA.MODIFY
614
+ * @permissionScope Manage Contact Extended Fields
615
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
616
+ * @permissionScope Manage Restaurants - all permissions
617
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
618
+ * @permissionScope Manage Members and Contacts - all permissions
619
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
620
+ * @applicableIdentity APP
621
+ * @fqn com.wixpress.contacts.fields.v4.ContactExtendedFieldsServiceV4.DeleteExtendedField
622
+ */
623
+ export declare function deleteExtendedField(key: string): Promise<void>;
624
+ /**
625
+ * Creates a query to retrieve a list of extended fields.
626
+ *
627
+ * The `queryExtendedFields()` method builds a query to retrieve a list of extended fields and returns an `FieldsQueryBuilder` object.
628
+ *
629
+ * The returned object contains the query definition, which is used to run the query using the `find()` method.
630
+ *
631
+ * You can refine the query by chaining `FieldsQueryBuilder` methods onto the query. `FieldsQueryBuilder` methods enable you to filter, sort, and control the results that `queryExtendedFields()` returns.
632
+ *
633
+ * `queryExtendedFields()` runs with these `FieldsQueryBuilder` defaults, which you can override:
634
+ * - `skip()`
635
+ * - `limit(50)`
636
+ * - `descending('_createdDate')`
637
+ *
638
+ * The following `FieldsQueryBuilder` methods are supported for `queryExtendedFields()`. For a full description of the `Extended Field` object, see the object returned for the `items` property in `FieldsQueryResult`.
639
+ * @public
640
+ * @permissionScope Manage Bookings Services and Settings
641
+ * @permissionScopeId SCOPE.BOOKINGS.CONFIGURATION
642
+ * @permissionScope Manage Portfolio
643
+ * @permissionScopeId SCOPE.PORTFOLIO.MANAGE-PORTFOLIO
644
+ * @permissionScope Manage Contact Extended Fields
645
+ * @permissionScopeId SCOPE.DC-CONTACTS.MANAGE-EX-FIELDS
646
+ * @permissionScope Manage Restaurants - all permissions
647
+ * @permissionScopeId SCOPE.RESTAURANTS.MEGA-SCOPES
648
+ * @permissionScope Manage Members and Contacts - all permissions
649
+ * @permissionScopeId SCOPE.DC-CONTACTS-MEGA.MANAGE-MEMBERS-CONTACTS
650
+ * @permissionId CONTACTS_SCHEMA.VIEW
651
+ * @applicableIdentity APP
652
+ * @fqn com.wixpress.contacts.fields.v4.ContactExtendedFieldsServiceV4.QueryExtendedFields
653
+ */
654
+ export declare function queryExtendedFields(): FieldsQueryBuilder;
655
+ interface QueryOffsetResult {
656
+ currentPage: number | undefined;
657
+ totalPages: number | undefined;
658
+ totalCount: number | undefined;
659
+ hasNext: () => boolean;
660
+ hasPrev: () => boolean;
661
+ length: number;
662
+ pageSize: number;
663
+ }
664
+ export interface FieldsQueryResult extends QueryOffsetResult {
665
+ items: ExtendedField[];
666
+ query: FieldsQueryBuilder;
667
+ next: () => Promise<FieldsQueryResult>;
668
+ prev: () => Promise<FieldsQueryResult>;
669
+ }
670
+ export interface FieldsQueryBuilder {
671
+ /** @param propertyName - Property whose value is compared with `value`.
672
+ * @param value - Value to compare against.
673
+ */
674
+ eq: (propertyName: 'namespace' | 'key' | 'displayName' | 'dataType' | 'fieldType' | '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
675
+ /** @param propertyName - Property whose value is compared with `value`.
676
+ * @param value - Value to compare against.
677
+ */
678
+ ne: (propertyName: 'namespace' | 'key' | 'displayName' | 'dataType' | '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
679
+ /** @param propertyName - Property whose value is compared with `value`.
680
+ * @param value - Value to compare against.
681
+ */
682
+ ge: (propertyName: '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
683
+ /** @param propertyName - Property whose value is compared with `value`.
684
+ * @param value - Value to compare against.
685
+ */
686
+ gt: (propertyName: '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
687
+ /** @param propertyName - Property whose value is compared with `value`.
688
+ * @param value - Value to compare against.
689
+ */
690
+ le: (propertyName: '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
691
+ /** @param propertyName - Property whose value is compared with `value`.
692
+ * @param value - Value to compare against.
693
+ */
694
+ lt: (propertyName: '_createdDate' | '_updatedDate', value: any) => FieldsQueryBuilder;
695
+ /** @param propertyName - Property whose value is compared with `string`.
696
+ * @param string - String to compare against. Case-insensitive.
697
+ */
698
+ startsWith: (propertyName: 'displayName', value: string) => FieldsQueryBuilder;
699
+ in: (propertyName: 'key' | 'displayName', value: any) => FieldsQueryBuilder;
700
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
701
+ ascending: (...propertyNames: Array<'displayName' | '_createdDate' | '_updatedDate'>) => FieldsQueryBuilder;
702
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
703
+ descending: (...propertyNames: Array<'displayName' | '_createdDate' | '_updatedDate'>) => FieldsQueryBuilder;
704
+ /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */
705
+ limit: (limit: number) => FieldsQueryBuilder;
706
+ /** @param skip - Number of items to skip in the query results before returning the results. */
707
+ skip: (skip: number) => FieldsQueryBuilder;
708
+ find: () => Promise<FieldsQueryResult>;
709
+ }
710
+ export {};