@wix/auto_sdk_calendar_participations 1.0.40 → 1.0.42

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 (41) hide show
  1. package/build/cjs/calendar-v3-participation-participations.universal-CRcW0LBD.d.ts +1599 -0
  2. package/build/cjs/index.d.ts +2 -2
  3. package/build/cjs/index.js +184 -0
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/cjs/index.typings.d.ts +5 -789
  6. package/build/cjs/index.typings.js +176 -0
  7. package/build/cjs/index.typings.js.map +1 -1
  8. package/build/cjs/meta.d.ts +591 -2
  9. package/build/cjs/meta.js +167 -0
  10. package/build/cjs/meta.js.map +1 -1
  11. package/build/es/calendar-v3-participation-participations.universal-CRcW0LBD.d.mts +1599 -0
  12. package/build/es/index.d.mts +2 -2
  13. package/build/es/index.mjs +174 -0
  14. package/build/es/index.mjs.map +1 -1
  15. package/build/es/index.typings.d.mts +5 -789
  16. package/build/es/index.typings.mjs +166 -0
  17. package/build/es/index.typings.mjs.map +1 -1
  18. package/build/es/meta.d.mts +591 -2
  19. package/build/es/meta.mjs +157 -0
  20. package/build/es/meta.mjs.map +1 -1
  21. package/build/internal/cjs/calendar-v3-participation-participations.universal-jvGI_cFu.d.ts +1599 -0
  22. package/build/internal/cjs/index.d.ts +14 -3
  23. package/build/internal/cjs/index.js +184 -0
  24. package/build/internal/cjs/index.js.map +1 -1
  25. package/build/internal/cjs/index.typings.d.ts +14 -786
  26. package/build/internal/cjs/index.typings.js +176 -0
  27. package/build/internal/cjs/index.typings.js.map +1 -1
  28. package/build/internal/cjs/meta.d.ts +591 -2
  29. package/build/internal/cjs/meta.js +167 -0
  30. package/build/internal/cjs/meta.js.map +1 -1
  31. package/build/internal/es/calendar-v3-participation-participations.universal-jvGI_cFu.d.mts +1599 -0
  32. package/build/internal/es/index.d.mts +14 -3
  33. package/build/internal/es/index.mjs +174 -0
  34. package/build/internal/es/index.mjs.map +1 -1
  35. package/build/internal/es/index.typings.d.mts +14 -786
  36. package/build/internal/es/index.typings.mjs +166 -0
  37. package/build/internal/es/index.typings.mjs.map +1 -1
  38. package/build/internal/es/meta.d.mts +591 -2
  39. package/build/internal/es/meta.mjs +157 -0
  40. package/build/internal/es/meta.mjs.map +1 -1
  41. package/package.json +4 -4
@@ -0,0 +1,1599 @@
1
+ import * as _wix_sdk_types from '@wix/sdk-types';
2
+ import { QuerySpec, SearchSpec, Query, Search, NonNullablePaths } from '@wix/sdk-types';
3
+
4
+ /**
5
+ * The `participation` object represents the relationship between a participant and
6
+ * an [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
7
+ * or [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object).
8
+ * It includes details about the participant, whether the participation status is confirmed or
9
+ * pending, which app owns the relevant event or schedule, and allows for custom data extensions.
10
+ */
11
+ interface Participation extends ParticipationParticipatedItemOneOf {
12
+ /**
13
+ * ID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object)
14
+ * associated with the participation.
15
+ * @format GUID
16
+ * @immutable
17
+ */
18
+ scheduleId?: string | null;
19
+ /**
20
+ * ID of the [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
21
+ * associated with the participation.
22
+ * @minLength 36
23
+ * @maxLength 250
24
+ * @immutable
25
+ */
26
+ eventId?: string | null;
27
+ /**
28
+ * Participation ID.
29
+ * @format GUID
30
+ * @readonly
31
+ */
32
+ _id?: string | null;
33
+ /**
34
+ * External ID.
35
+ * @format GUID
36
+ * @immutable
37
+ */
38
+ externalId?: string | null;
39
+ /** Information about the participant. */
40
+ participant?: Participant;
41
+ /**
42
+ * Party size of the group or `1` for individuals.
43
+ *
44
+ * Min: `1`
45
+ * Max: `1000`
46
+ * @min 1
47
+ * @max 1000
48
+ */
49
+ partySize?: number | null;
50
+ /**
51
+ * Status of the party's participation in the event. Depending on your
52
+ * implementation, confirmation may be handled by the business owner or the customer.
53
+ *
54
+ * Supported values:
55
+ * + `CONFIRMED`: The party's participation is confirmed. For example, the business owner has confirmed a [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings).
56
+ * + `PENDING_CONFIRMATION`: The party's participation is awaiting confirmation. For example, the business owner still needs to approve the [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings).
57
+ *
58
+ * Default: `CONFIRMED`
59
+ */
60
+ status?: StatusWithLiterals;
61
+ /**
62
+ * ID of the app that owns the participation `object`. Identical to `appId` of the
63
+ * [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object)
64
+ * that the related
65
+ * [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
66
+ * belongs to.
67
+ * @format GUID
68
+ * @readonly
69
+ */
70
+ appId?: string | null;
71
+ /**
72
+ * Revision number, which increments by 1 each time the participation is updated.
73
+ * To prevent conflicting changes, the current revision must be passed when updating the participation.
74
+ * Ignored when creating a participation.
75
+ * @readonly
76
+ */
77
+ revision?: string | null;
78
+ /**
79
+ * Date the participation was created in `YYYY-MM-DDThh:mm:ss.sssZ` format.
80
+ * @readonly
81
+ */
82
+ _createdDate?: Date | null;
83
+ /**
84
+ * Date the participation was updated in `YYYY-MM-DDThh:mm:ss.sssZ` format.
85
+ * @readonly
86
+ */
87
+ _updatedDate?: Date | null;
88
+ /** Extensions enabling applications or users to save custom data related to the participation. */
89
+ extendedFields?: ExtendedFields;
90
+ }
91
+ /** @oneof */
92
+ interface ParticipationParticipatedItemOneOf {
93
+ /**
94
+ * ID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object)
95
+ * associated with the participation.
96
+ * @format GUID
97
+ * @immutable
98
+ */
99
+ scheduleId?: string | null;
100
+ /**
101
+ * ID of the [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
102
+ * associated with the participation.
103
+ * @minLength 36
104
+ * @maxLength 250
105
+ * @immutable
106
+ */
107
+ eventId?: string | null;
108
+ }
109
+ interface Participant {
110
+ /**
111
+ * Participant name.
112
+ *
113
+ * Min: 1 character
114
+ * Max: 200 characters
115
+ * @minLength 1
116
+ * @maxLength 200
117
+ */
118
+ name?: string | null;
119
+ /**
120
+ * Participant's phone number.
121
+ * @format PHONE
122
+ */
123
+ phone?: string | null;
124
+ /**
125
+ * Participant's email address.
126
+ * @format EMAIL
127
+ */
128
+ email?: string | null;
129
+ /**
130
+ * [Contact](https://dev.wix.com/docs/sdk/backend-modules/crm/contacts/introduction)
131
+ * ID of the participant.
132
+ * @format GUID
133
+ */
134
+ contactId?: string | null;
135
+ }
136
+ declare enum Status {
137
+ /** The party's participation is confirmed. For example, the business owner has confirmed a [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings). */
138
+ CONFIRMED = "CONFIRMED",
139
+ /** The party's participation is awaiting confirmation. For example, the business owner still needs to approve the [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings). */
140
+ PENDING_CONFIRMATION = "PENDING_CONFIRMATION"
141
+ }
142
+ /** @enumType */
143
+ type StatusWithLiterals = Status | 'CONFIRMED' | 'PENDING_CONFIRMATION';
144
+ interface ExtendedFields {
145
+ /**
146
+ * Extended field data. Each key corresponds to the namespace of the app that created the extended fields.
147
+ * The value of each key is structured according to the schema defined when the extended fields were configured.
148
+ *
149
+ * You can only access fields for which you have the appropriate permissions.
150
+ *
151
+ * Learn more about [extended fields](https://dev.wix.com/docs/rest/articles/getting-started/extended-fields).
152
+ */
153
+ namespaces?: Record<string, Record<string, any>>;
154
+ }
155
+ interface GetParticipationRequest {
156
+ /**
157
+ * ID of the `participation` object to retrieve.
158
+ * @format GUID
159
+ */
160
+ participationId: string | null;
161
+ }
162
+ interface GetParticipationResponse {
163
+ /** Retrieved `participation` object. */
164
+ participation?: Participation;
165
+ }
166
+ interface QueryParticipationsRequest {
167
+ /** Query containing filters and paging. */
168
+ query?: CursorQuery;
169
+ }
170
+ interface CursorQuery extends CursorQueryPagingMethodOneOf {
171
+ /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */
172
+ cursorPaging?: CursorPaging;
173
+ /**
174
+ * Filter object in the following format:
175
+ * `"filter" : {
176
+ * "fieldName1": "value1",
177
+ * "fieldName2":{"$operator":"value2"}
178
+ * }`
179
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
180
+ */
181
+ filter?: Record<string, any> | null;
182
+ }
183
+ /** @oneof */
184
+ interface CursorQueryPagingMethodOneOf {
185
+ /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`. */
186
+ cursorPaging?: CursorPaging;
187
+ }
188
+ interface CursorPaging {
189
+ /**
190
+ * Number of participations to load.
191
+ * @min 1
192
+ * @max 100
193
+ */
194
+ limit?: number | null;
195
+ /**
196
+ * Pointer to the next or previous page in the list of results.
197
+ *
198
+ * You can get the relevant cursor token
199
+ * from the `pagingMetadata` object in the previous call's response.
200
+ * Not relevant for the first request.
201
+ */
202
+ cursor?: string | null;
203
+ }
204
+ interface QueryParticipationsResponse {
205
+ /** Retrieved `participation` objects matching the provided query. */
206
+ participations?: Participation[];
207
+ /** Paging metadata. */
208
+ pagingMetadata?: CursorPagingMetadata;
209
+ }
210
+ interface CursorPagingMetadata {
211
+ /** Number of items returned in the response. */
212
+ count?: number | null;
213
+ /** Offset that was requested. */
214
+ cursors?: Cursors;
215
+ /**
216
+ * Indicates if there are more results after the current page.
217
+ * If `true`, another page of results can be retrieved.
218
+ * If `false`, this is the last page.
219
+ */
220
+ hasNext?: boolean | null;
221
+ }
222
+ interface Cursors {
223
+ /** Cursor pointing to next page in the list of results. */
224
+ next?: string | null;
225
+ /** Cursor pointing to previous page in the list of results. */
226
+ prev?: string | null;
227
+ }
228
+ interface SearchParticipationsRequest {
229
+ /** Search criteria including filter, sort, aggregations, and free-text search. */
230
+ search: CursorSearch;
231
+ }
232
+ interface CursorSearch extends CursorSearchPagingMethodOneOf {
233
+ /**
234
+ * Cursor paging options.
235
+ *
236
+ * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
237
+ */
238
+ cursorPaging?: CommonCursorPaging;
239
+ /**
240
+ * Filter object.
241
+ *
242
+ * Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).
243
+ */
244
+ filter?: Record<string, any> | null;
245
+ /**
246
+ * List of sort objects.
247
+ *
248
+ * Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting).
249
+ * @maxSize 10
250
+ */
251
+ sort?: Sorting[];
252
+ /**
253
+ * Logical groupings of data into facets, with summaries for each facet. For example, use aggregations to allow site visitors to narrow down their search results by selecting specific categories.
254
+ * @maxSize 10
255
+ */
256
+ aggregations?: Aggregation[];
257
+ /** Free text to match in searchable fields. */
258
+ search?: SearchDetails;
259
+ /**
260
+ * Time zone to adjust date-time-based filters and aggregations, in ISO 8601 (including offsets) or IANA time zone database (including time zone IDs) format.
261
+ * Applies to all relevant filters and aggregations, unless overridden by providing timestamps including time zone. For example, "2023-12-20T10:52:34.795Z".
262
+ * @maxLength 50
263
+ */
264
+ timeZone?: string | null;
265
+ }
266
+ /** @oneof */
267
+ interface CursorSearchPagingMethodOneOf {
268
+ /**
269
+ * Cursor paging options.
270
+ *
271
+ * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
272
+ */
273
+ cursorPaging?: CommonCursorPaging;
274
+ }
275
+ interface Sorting {
276
+ /**
277
+ * Name of the field to sort by.
278
+ * @maxLength 512
279
+ */
280
+ fieldName?: string;
281
+ /** Sort order. */
282
+ order?: SortOrderWithLiterals;
283
+ }
284
+ declare enum SortOrder {
285
+ ASC = "ASC",
286
+ DESC = "DESC"
287
+ }
288
+ /** @enumType */
289
+ type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';
290
+ interface Aggregation extends AggregationKindOneOf {
291
+ /** A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store. */
292
+ value?: ValueAggregation;
293
+ /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. */
294
+ range?: RangeAggregation;
295
+ /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
296
+ scalar?: ScalarAggregation;
297
+ /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week. */
298
+ dateHistogram?: DateHistogramAggregation;
299
+ /** A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`. */
300
+ nested?: NestedAggregation;
301
+ /**
302
+ * Aggregation name, returned in `aggregations.results.name`.
303
+ * @maxLength 100
304
+ */
305
+ name?: string | null;
306
+ /** Type of aggregation to perform. Must align with the corresponding aggregation field. */
307
+ type?: AggregationTypeWithLiterals;
308
+ /**
309
+ * Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
310
+ * @maxLength 200
311
+ */
312
+ fieldPath?: string;
313
+ /**
314
+ * Deprecated. Use `nested` instead.
315
+ * @deprecated Deprecated. Use `nested` instead.
316
+ * @replacedBy kind.nested
317
+ * @targetRemovalDate 2024-03-30
318
+ */
319
+ groupBy?: GroupByAggregation;
320
+ }
321
+ /** @oneof */
322
+ interface AggregationKindOneOf {
323
+ /** A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store. */
324
+ value?: ValueAggregation;
325
+ /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. */
326
+ range?: RangeAggregation;
327
+ /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
328
+ scalar?: ScalarAggregation;
329
+ /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week. */
330
+ dateHistogram?: DateHistogramAggregation;
331
+ /** A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`. */
332
+ nested?: NestedAggregation;
333
+ }
334
+ interface RangeBucket {
335
+ /** Inclusive lower bound of the range. Required if `to` is not provided. */
336
+ from?: number | null;
337
+ /** Exclusive upper bound of the range. Required if `from` is not provided. */
338
+ to?: number | null;
339
+ }
340
+ declare enum SortType {
341
+ /** Number of matches in the results. */
342
+ COUNT = "COUNT",
343
+ /** Alphabetically by the field value. */
344
+ VALUE = "VALUE"
345
+ }
346
+ /** @enumType */
347
+ type SortTypeWithLiterals = SortType | 'COUNT' | 'VALUE';
348
+ declare enum SortDirection {
349
+ /** Descending order. */
350
+ DESC = "DESC",
351
+ /** Ascending order. */
352
+ ASC = "ASC"
353
+ }
354
+ /** @enumType */
355
+ type SortDirectionWithLiterals = SortDirection | 'DESC' | 'ASC';
356
+ declare enum MissingValues {
357
+ /** Exclude missing values from the aggregation results. */
358
+ EXCLUDE = "EXCLUDE",
359
+ /** Include missing values in the aggregation results. */
360
+ INCLUDE = "INCLUDE"
361
+ }
362
+ /** @enumType */
363
+ type MissingValuesWithLiterals = MissingValues | 'EXCLUDE' | 'INCLUDE';
364
+ interface IncludeMissingValuesOptions {
365
+ /**
366
+ * Specify a custom name for the bucket containing the missing values. Defaults are `"N/A"` for strings, `0` for integers, and `false` for booleans.
367
+ * @maxLength 20
368
+ */
369
+ addToBucket?: string;
370
+ }
371
+ declare enum ScalarType {
372
+ /** Total number of distinct values. */
373
+ COUNT_DISTINCT = "COUNT_DISTINCT",
374
+ /** Minimum value. */
375
+ MIN = "MIN",
376
+ /** Maximum value. */
377
+ MAX = "MAX"
378
+ }
379
+ /** @enumType */
380
+ type ScalarTypeWithLiterals = ScalarType | 'COUNT_DISTINCT' | 'MIN' | 'MAX';
381
+ interface ValueAggregation extends ValueAggregationOptionsOneOf {
382
+ /** Options for including missing values in results. */
383
+ includeOptions?: IncludeMissingValuesOptions;
384
+ /** Sort type. */
385
+ sortType?: SortTypeWithLiterals;
386
+ /** Sort direction. */
387
+ sortDirection?: SortDirectionWithLiterals;
388
+ /**
389
+ * Number of aggregation results to return.
390
+ * Min: `1`
391
+ * Max: `250`
392
+ * Default: `10`
393
+ */
394
+ limit?: number | null;
395
+ /**
396
+ * Whether to include or exclude missing values in the aggregation results.
397
+ * Default: `EXCLUDE`.
398
+ */
399
+ missingValues?: MissingValuesWithLiterals;
400
+ }
401
+ /** @oneof */
402
+ interface ValueAggregationOptionsOneOf {
403
+ /** Options for including missing values in results. */
404
+ includeOptions?: IncludeMissingValuesOptions;
405
+ }
406
+ declare enum NestedAggregationType {
407
+ /** Calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. */
408
+ VALUE = "VALUE",
409
+ /** Calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. */
410
+ RANGE = "RANGE",
411
+ /** Calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
412
+ SCALAR = "SCALAR",
413
+ /** Calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). */
414
+ DATE_HISTOGRAM = "DATE_HISTOGRAM"
415
+ }
416
+ /** @enumType */
417
+ type NestedAggregationTypeWithLiterals = NestedAggregationType | 'VALUE' | 'RANGE' | 'SCALAR' | 'DATE_HISTOGRAM';
418
+ interface RangeAggregation {
419
+ /**
420
+ * List of range buckets. During aggregation each entity is placed in the first bucket its value falls into, based on the provided range bounds.
421
+ * @maxSize 50
422
+ */
423
+ buckets?: RangeBucket[];
424
+ }
425
+ interface ScalarAggregation {
426
+ /** Operator type for the scalar aggregation. */
427
+ type?: ScalarTypeWithLiterals;
428
+ }
429
+ interface DateHistogramAggregation {
430
+ /** Interval for date histogram aggregation. */
431
+ interval?: IntervalWithLiterals;
432
+ }
433
+ declare enum Interval {
434
+ YEAR = "YEAR",
435
+ MONTH = "MONTH",
436
+ WEEK = "WEEK",
437
+ DAY = "DAY",
438
+ HOUR = "HOUR",
439
+ MINUTE = "MINUTE",
440
+ SECOND = "SECOND"
441
+ }
442
+ /** @enumType */
443
+ type IntervalWithLiterals = Interval | 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | 'MINUTE' | 'SECOND';
444
+ interface NestedAggregationItem extends NestedAggregationItemKindOneOf {
445
+ /** A value aggregation calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of orders for each order status. */
446
+ value?: ValueAggregation;
447
+ /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */
448
+ range?: RangeAggregation;
449
+ /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
450
+ scalar?: ScalarAggregation;
451
+ /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). For example, use a date histogram to determine how many reservations have been made at a restaurant each week. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */
452
+ dateHistogram?: DateHistogramAggregation;
453
+ /**
454
+ * Unique, caller-defined aggregation name, returned in `aggregations.results`.
455
+ * @maxLength 100
456
+ */
457
+ name?: string | null;
458
+ /** Type of aggregation to perform. The matching aggregation field must be passed. */
459
+ type?: NestedAggregationTypeWithLiterals;
460
+ /**
461
+ * Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
462
+ * @maxLength 200
463
+ */
464
+ fieldPath?: string;
465
+ }
466
+ /** @oneof */
467
+ interface NestedAggregationItemKindOneOf {
468
+ /** A value aggregation calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of orders for each order status. */
469
+ value?: ValueAggregation;
470
+ /** A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */
471
+ range?: RangeAggregation;
472
+ /** A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
473
+ scalar?: ScalarAggregation;
474
+ /** A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). For example, use a date histogram to determine how many reservations have been made at a restaurant each week. If ranges overlap, a record that fits more than one range will only be counted in the first range that matches the criteria. */
475
+ dateHistogram?: DateHistogramAggregation;
476
+ }
477
+ declare enum AggregationType {
478
+ /** Calculates the distribution of a specific field's values within a dataset, providing insights into the overall distribution and key statistics of those values. */
479
+ VALUE = "VALUE",
480
+ /** Calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. */
481
+ RANGE = "RANGE",
482
+ /** Calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`. */
483
+ SCALAR = "SCALAR",
484
+ /** Calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.). */
485
+ DATE_HISTOGRAM = "DATE_HISTOGRAM",
486
+ /** Flattened list of aggregations, where each aggregation is nested within previous one. */
487
+ NESTED = "NESTED"
488
+ }
489
+ /** @enumType */
490
+ type AggregationTypeWithLiterals = AggregationType | 'VALUE' | 'RANGE' | 'SCALAR' | 'DATE_HISTOGRAM' | 'NESTED';
491
+ /** Nested aggregation expressed through a list of aggregation where each next aggregation is nested within previous one. */
492
+ interface NestedAggregation {
493
+ /**
494
+ * Flattened list of aggregations, where each aggregation is nested within previous one.
495
+ * @minSize 2
496
+ * @maxSize 3
497
+ */
498
+ nestedAggregations?: NestedAggregationItem[];
499
+ }
500
+ interface GroupByAggregation extends GroupByAggregationKindOneOf {
501
+ /** Value aggregation configuration. */
502
+ value?: ValueAggregation;
503
+ /**
504
+ * Unique, caller-defined aggregation name, returned in `aggregations.results`.
505
+ * @maxLength 100
506
+ */
507
+ name?: string | null;
508
+ /**
509
+ * Field to aggregate by.
510
+ * @maxLength 200
511
+ */
512
+ fieldPath?: string;
513
+ }
514
+ /** @oneof */
515
+ interface GroupByAggregationKindOneOf {
516
+ /** Value aggregation configuration. */
517
+ value?: ValueAggregation;
518
+ }
519
+ interface SearchDetails {
520
+ /** Search mode. Defines the search logic for combining multiple terms in the `expression`. */
521
+ mode?: ModeWithLiterals;
522
+ /**
523
+ * Search term or expression.
524
+ * @maxLength 100
525
+ */
526
+ expression?: string | null;
527
+ /**
528
+ * Fields to search in. If the array is empty, all searchable fields are searched. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
529
+ * @maxLength 200
530
+ * @maxSize 20
531
+ */
532
+ fields?: string[];
533
+ /** Whether to enable the search function to use an algorithm to automatically find results that are close to the search expression, such as typos and declensions. */
534
+ fuzzy?: boolean;
535
+ }
536
+ declare enum Mode {
537
+ /** At least one of the search terms must be present. */
538
+ OR = "OR",
539
+ /** All search terms must be present. */
540
+ AND = "AND"
541
+ }
542
+ /** @enumType */
543
+ type ModeWithLiterals = Mode | 'OR' | 'AND';
544
+ interface CommonCursorPaging {
545
+ /**
546
+ * Maximum number of items to return in the results.
547
+ * @max 100
548
+ */
549
+ limit?: number | null;
550
+ /**
551
+ * Pointer to the next or previous page in the list of results.
552
+ *
553
+ * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
554
+ * Not relevant for the first request.
555
+ * @maxLength 16000
556
+ */
557
+ cursor?: string | null;
558
+ }
559
+ interface SearchParticipationsResponse {
560
+ /** Retrieved `participation` objects matching the provided search. */
561
+ participations?: Participation[];
562
+ /** Cursor-based paging metadata. */
563
+ pagingMetadata?: CommonCursorPagingMetadata;
564
+ /** Aggregation results. */
565
+ aggregationData?: AggregationData;
566
+ }
567
+ interface CommonCursorPagingMetadata {
568
+ /** Number of items returned in current page. */
569
+ count?: number | null;
570
+ /** Cursor strings that point to the next page, previous page, or both. */
571
+ cursors?: CommonCursors;
572
+ /**
573
+ * Whether there are more pages to retrieve following the current page.
574
+ *
575
+ * + `true`: Another page of results can be retrieved.
576
+ * + `false`: This is the last page.
577
+ */
578
+ hasNext?: boolean | null;
579
+ }
580
+ interface CommonCursors {
581
+ /**
582
+ * Cursor string pointing to the next page in the list of results.
583
+ * @maxLength 16000
584
+ */
585
+ next?: string | null;
586
+ /**
587
+ * Cursor pointing to the previous page in the list of results.
588
+ * @maxLength 16000
589
+ */
590
+ prev?: string | null;
591
+ }
592
+ interface AggregationData {
593
+ /**
594
+ * List of the aggregated data results.
595
+ * @maxSize 10000
596
+ */
597
+ results?: AggregationResults[];
598
+ }
599
+ interface ValueAggregationResult {
600
+ /**
601
+ * Value of the field.
602
+ * @maxLength 100
603
+ */
604
+ value?: string;
605
+ /** Number of entities with this value. */
606
+ count?: number;
607
+ }
608
+ interface RangeAggregationResult {
609
+ /** Inclusive lower bound of the range. */
610
+ from?: number | null;
611
+ /** Exclusive upper bound of the range. */
612
+ to?: number | null;
613
+ /** Total number of entities in this range. */
614
+ count?: number;
615
+ }
616
+ interface NestedAggregationResults extends NestedAggregationResultsResultOneOf {
617
+ /** Value aggregation results. */
618
+ values?: ValueResults;
619
+ /** Range aggregation results. */
620
+ ranges?: RangeResults;
621
+ /** Scalar aggregation results. */
622
+ scalar?: AggregationResultsScalarResult;
623
+ /**
624
+ * Unique, caller-defined aggregation name, identifiable by the requested aggregation `name`.
625
+ * @maxLength 100
626
+ */
627
+ name?: string;
628
+ /** Aggregation type. */
629
+ type?: AggregationTypeWithLiterals;
630
+ /**
631
+ * Field which the data was aggregated by.
632
+ * @maxLength 200
633
+ */
634
+ fieldPath?: string;
635
+ }
636
+ /** @oneof */
637
+ interface NestedAggregationResultsResultOneOf {
638
+ /** Value aggregation results. */
639
+ values?: ValueResults;
640
+ /** Range aggregation results. */
641
+ ranges?: RangeResults;
642
+ /** Scalar aggregation results. */
643
+ scalar?: AggregationResultsScalarResult;
644
+ }
645
+ interface ValueResults {
646
+ /**
647
+ * List of value aggregations.
648
+ * @maxSize 250
649
+ */
650
+ results?: ValueAggregationResult[];
651
+ }
652
+ interface RangeResults {
653
+ /**
654
+ * List of ranges returned in the same order as requested.
655
+ * @maxSize 50
656
+ */
657
+ results?: RangeAggregationResult[];
658
+ }
659
+ interface AggregationResultsScalarResult {
660
+ /** Type of scalar aggregation. */
661
+ type?: ScalarTypeWithLiterals;
662
+ /** Value of the scalar aggregation. */
663
+ value?: number;
664
+ }
665
+ interface NestedValueAggregationResult {
666
+ /**
667
+ * Value of the field.
668
+ * @maxLength 1000
669
+ */
670
+ value?: string;
671
+ /** Nested aggregations. */
672
+ nestedResults?: NestedAggregationResults;
673
+ }
674
+ interface ValueResult {
675
+ /**
676
+ * Value of the field.
677
+ * @maxLength 1000
678
+ */
679
+ value?: string;
680
+ /** Number of entities with this value. */
681
+ count?: number | null;
682
+ }
683
+ interface RangeResult {
684
+ /** Inclusive lower bound of the range. */
685
+ from?: number | null;
686
+ /** Exclusive upper bound of the range. */
687
+ to?: number | null;
688
+ /** Number of entities in this range. */
689
+ count?: number | null;
690
+ }
691
+ interface ScalarResult {
692
+ /** Value of the scalar aggregation. */
693
+ value?: number;
694
+ }
695
+ interface ScalarDateResult {
696
+ /**
697
+ * Date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
698
+ * @maxLength 100
699
+ */
700
+ value?: string;
701
+ }
702
+ interface NestedResultValue extends NestedResultValueResultOneOf {
703
+ /** Value aggregation result. */
704
+ value?: ValueResult;
705
+ /** Range aggregation result. */
706
+ range?: RangeResult;
707
+ /** Scalar aggregation result. */
708
+ scalar?: ScalarResult;
709
+ /** Date histogram aggregation result. */
710
+ dateHistogram?: ValueResult;
711
+ /** Scalar date aggregation result. */
712
+ scalarDate?: ScalarDateResult;
713
+ }
714
+ /** @oneof */
715
+ interface NestedResultValueResultOneOf {
716
+ /** Value aggregation result. */
717
+ value?: ValueResult;
718
+ /** Range aggregation result. */
719
+ range?: RangeResult;
720
+ /** Scalar aggregation result. */
721
+ scalar?: ScalarResult;
722
+ /** Date histogram aggregation result. */
723
+ dateHistogram?: ValueResult;
724
+ /** Scalar date aggregation result. */
725
+ scalarDate?: ScalarDateResult;
726
+ }
727
+ interface Results {
728
+ /** List of nested aggregations. */
729
+ results?: Record<string, NestedResultValue>;
730
+ }
731
+ interface DateHistogramResult {
732
+ /**
733
+ * Date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
734
+ * @maxLength 100
735
+ */
736
+ value?: string;
737
+ /** Number of entities in the bucket. */
738
+ count?: number;
739
+ }
740
+ interface GroupByValueResults {
741
+ /**
742
+ * List of value aggregations.
743
+ * @maxSize 1000
744
+ */
745
+ results?: NestedValueAggregationResult[];
746
+ }
747
+ interface DateHistogramResults {
748
+ /**
749
+ * List of date histogram aggregations.
750
+ * @maxSize 200
751
+ */
752
+ results?: DateHistogramResult[];
753
+ }
754
+ /** Results of `NESTED` aggregation type in a flattened array, identifiable by the requested aggregation `name`. */
755
+ interface NestedResults {
756
+ /**
757
+ * List of nested aggregations.
758
+ * @maxSize 1000
759
+ */
760
+ results?: Results[];
761
+ }
762
+ interface AggregationResultsScalarDateResult {
763
+ /** Type of scalar date aggregation. Possible values: `MIN`, `MAX`. */
764
+ type?: ScalarTypeWithLiterals;
765
+ /**
766
+ * Date in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format.
767
+ * @maxLength 100
768
+ */
769
+ value?: string;
770
+ }
771
+ interface AggregationResults extends AggregationResultsResultOneOf {
772
+ /** Value aggregation results. */
773
+ values?: ValueResults;
774
+ /** Range aggregation results. */
775
+ ranges?: RangeResults;
776
+ /** Scalar aggregation results. */
777
+ scalar?: AggregationResultsScalarResult;
778
+ /** Group by value aggregation results. */
779
+ groupedByValue?: GroupByValueResults;
780
+ /** Date histogram aggregation results. */
781
+ dateHistogram?: DateHistogramResults;
782
+ /** Nested aggregation results. */
783
+ nested?: NestedResults;
784
+ /** Date aggregation results. */
785
+ scalarDate?: AggregationResultsScalarDateResult;
786
+ /**
787
+ * Aggregation name, returned in `aggregations.results.name`.
788
+ * @maxLength 100
789
+ */
790
+ name?: string;
791
+ /** Aggregation type. Must align with the corresponding aggregation field. */
792
+ type?: AggregationTypeWithLiterals;
793
+ /**
794
+ * Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
795
+ * @maxLength 200
796
+ */
797
+ fieldPath?: string;
798
+ }
799
+ /** @oneof */
800
+ interface AggregationResultsResultOneOf {
801
+ /** Value aggregation results. */
802
+ values?: ValueResults;
803
+ /** Range aggregation results. */
804
+ ranges?: RangeResults;
805
+ /** Scalar aggregation results. */
806
+ scalar?: AggregationResultsScalarResult;
807
+ /** Group by value aggregation results. */
808
+ groupedByValue?: GroupByValueResults;
809
+ /** Date histogram aggregation results. */
810
+ dateHistogram?: DateHistogramResults;
811
+ /** Nested aggregation results. */
812
+ nested?: NestedResults;
813
+ /** Date aggregation results. */
814
+ scalarDate?: AggregationResultsScalarDateResult;
815
+ }
816
+ interface CreateParticipationRequest {
817
+ /** `participation` object to create. */
818
+ participation: Participation;
819
+ /**
820
+ * Idempotency key guaranteeing that you don't create the same `participation`
821
+ * object more than once.
822
+ * @format GUID
823
+ */
824
+ idempotencyKey?: string | null;
825
+ }
826
+ interface CreateParticipationResponse {
827
+ /** Created `participation` object. */
828
+ participation?: Participation;
829
+ }
830
+ interface UpdateParticipationRequest {
831
+ /** `participation` object to update. */
832
+ participation: Participation;
833
+ }
834
+ interface UpdateParticipationResponse {
835
+ /** Updated `participation` object. */
836
+ participation?: Participation;
837
+ }
838
+ interface DeleteParticipationRequest {
839
+ /**
840
+ * ID of `participation` object to delete.
841
+ * @format GUID
842
+ */
843
+ participationId: string | null;
844
+ }
845
+ interface DeleteParticipationResponse {
846
+ }
847
+ interface DomainEvent extends DomainEventBodyOneOf {
848
+ createdEvent?: EntityCreatedEvent;
849
+ updatedEvent?: EntityUpdatedEvent;
850
+ deletedEvent?: EntityDeletedEvent;
851
+ actionEvent?: ActionEvent;
852
+ /** Event ID. With this ID you can easily spot duplicated events and ignore them. */
853
+ _id?: string;
854
+ /**
855
+ * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.
856
+ * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.
857
+ */
858
+ entityFqdn?: string;
859
+ /**
860
+ * Event action name, placed at the top level to make it easier for users to dispatch messages.
861
+ * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.
862
+ */
863
+ slug?: string;
864
+ /** ID of the entity associated with the event. */
865
+ entityId?: string;
866
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */
867
+ eventTime?: Date | null;
868
+ /**
869
+ * Whether the event was triggered as a result of a privacy regulation application
870
+ * (for example, GDPR).
871
+ */
872
+ triggeredByAnonymizeRequest?: boolean | null;
873
+ /** If present, indicates the action that triggered the event. */
874
+ originatedFrom?: string | null;
875
+ /**
876
+ * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.
877
+ * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.
878
+ */
879
+ entityEventSequence?: string | null;
880
+ }
881
+ /** @oneof */
882
+ interface DomainEventBodyOneOf {
883
+ createdEvent?: EntityCreatedEvent;
884
+ updatedEvent?: EntityUpdatedEvent;
885
+ deletedEvent?: EntityDeletedEvent;
886
+ actionEvent?: ActionEvent;
887
+ }
888
+ interface EntityCreatedEvent {
889
+ entity?: string;
890
+ }
891
+ interface RestoreInfo {
892
+ deletedDate?: Date | null;
893
+ }
894
+ interface EntityUpdatedEvent {
895
+ /**
896
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
897
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
898
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
899
+ */
900
+ currentEntity?: string;
901
+ }
902
+ interface EntityDeletedEvent {
903
+ /** Entity that was deleted. */
904
+ deletedEntity?: string | null;
905
+ }
906
+ interface ActionEvent {
907
+ body?: string;
908
+ }
909
+ interface Empty {
910
+ }
911
+ interface SumParticipationsPartySizeByScheduleIdRequest {
912
+ /**
913
+ * The schedule IDs.
914
+ * @format GUID
915
+ * @maxSize 100
916
+ */
917
+ scheduleIds?: string[] | null;
918
+ }
919
+ interface SumParticipationsPartySizeByScheduleIdResponse {
920
+ /** The sum of party size by schedule ID. */
921
+ partySizeSumByScheduleId?: PartySizeSumByScheduleId[];
922
+ }
923
+ interface PartySizeSumByScheduleId {
924
+ /**
925
+ * The ID of the schedule.
926
+ * @format GUID
927
+ */
928
+ scheduleId?: string | null;
929
+ /** The sum of the participations party size. */
930
+ partySizeSum?: number | null;
931
+ }
932
+ interface MessageEnvelope {
933
+ /**
934
+ * App instance ID.
935
+ * @format GUID
936
+ */
937
+ instanceId?: string | null;
938
+ /**
939
+ * Event type.
940
+ * @maxLength 150
941
+ */
942
+ eventType?: string;
943
+ /** The identification type and identity data. */
944
+ identity?: IdentificationData;
945
+ /** Stringify payload. */
946
+ data?: string;
947
+ /** Details related to the account */
948
+ accountInfo?: AccountInfo;
949
+ }
950
+ interface IdentificationData extends IdentificationDataIdOneOf {
951
+ /**
952
+ * ID of a site visitor that has not logged in to the site.
953
+ * @format GUID
954
+ */
955
+ anonymousVisitorId?: string;
956
+ /**
957
+ * ID of a site visitor that has logged in to the site.
958
+ * @format GUID
959
+ */
960
+ memberId?: string;
961
+ /**
962
+ * ID of a Wix user (site owner, contributor, etc.).
963
+ * @format GUID
964
+ */
965
+ wixUserId?: string;
966
+ /**
967
+ * ID of an app.
968
+ * @format GUID
969
+ */
970
+ appId?: string;
971
+ /** @readonly */
972
+ identityType?: WebhookIdentityTypeWithLiterals;
973
+ }
974
+ /** @oneof */
975
+ interface IdentificationDataIdOneOf {
976
+ /**
977
+ * ID of a site visitor that has not logged in to the site.
978
+ * @format GUID
979
+ */
980
+ anonymousVisitorId?: string;
981
+ /**
982
+ * ID of a site visitor that has logged in to the site.
983
+ * @format GUID
984
+ */
985
+ memberId?: string;
986
+ /**
987
+ * ID of a Wix user (site owner, contributor, etc.).
988
+ * @format GUID
989
+ */
990
+ wixUserId?: string;
991
+ /**
992
+ * ID of an app.
993
+ * @format GUID
994
+ */
995
+ appId?: string;
996
+ }
997
+ declare enum WebhookIdentityType {
998
+ UNKNOWN = "UNKNOWN",
999
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
1000
+ MEMBER = "MEMBER",
1001
+ WIX_USER = "WIX_USER",
1002
+ APP = "APP"
1003
+ }
1004
+ /** @enumType */
1005
+ type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
1006
+ interface AccountInfo {
1007
+ /**
1008
+ * ID of the Wix account associated with the event.
1009
+ * @format GUID
1010
+ */
1011
+ accountId?: string | null;
1012
+ /**
1013
+ * ID of the parent Wix account. Only included when accountId belongs to a child account.
1014
+ * @format GUID
1015
+ */
1016
+ parentAccountId?: string | null;
1017
+ /**
1018
+ * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.
1019
+ * @format GUID
1020
+ */
1021
+ siteId?: string | null;
1022
+ }
1023
+ interface BaseEventMetadata {
1024
+ /**
1025
+ * App instance ID.
1026
+ * @format GUID
1027
+ */
1028
+ instanceId?: string | null;
1029
+ /**
1030
+ * Event type.
1031
+ * @maxLength 150
1032
+ */
1033
+ eventType?: string;
1034
+ /** The identification type and identity data. */
1035
+ identity?: IdentificationData;
1036
+ /** Details related to the account */
1037
+ accountInfo?: AccountInfo;
1038
+ }
1039
+ interface EventMetadata extends BaseEventMetadata {
1040
+ /** Event ID. With this ID you can easily spot duplicated events and ignore them. */
1041
+ _id?: string;
1042
+ /**
1043
+ * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.
1044
+ * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.
1045
+ */
1046
+ entityFqdn?: string;
1047
+ /**
1048
+ * Event action name, placed at the top level to make it easier for users to dispatch messages.
1049
+ * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.
1050
+ */
1051
+ slug?: string;
1052
+ /** ID of the entity associated with the event. */
1053
+ entityId?: string;
1054
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */
1055
+ eventTime?: Date | null;
1056
+ /**
1057
+ * Whether the event was triggered as a result of a privacy regulation application
1058
+ * (for example, GDPR).
1059
+ */
1060
+ triggeredByAnonymizeRequest?: boolean | null;
1061
+ /** If present, indicates the action that triggered the event. */
1062
+ originatedFrom?: string | null;
1063
+ /**
1064
+ * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.
1065
+ * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.
1066
+ */
1067
+ entityEventSequence?: string | null;
1068
+ accountInfo?: AccountInfoMetadata;
1069
+ }
1070
+ interface AccountInfoMetadata {
1071
+ /** ID of the Wix account associated with the event */
1072
+ accountId: string;
1073
+ /** ID of the Wix site associated with the event. Only included when the event is tied to a specific site. */
1074
+ siteId?: string;
1075
+ /** ID of the parent Wix account. Only included when 'accountId' belongs to a child account. */
1076
+ parentAccountId?: string;
1077
+ }
1078
+ interface ParticipationCreatedEnvelope {
1079
+ entity: Participation;
1080
+ metadata: EventMetadata;
1081
+ }
1082
+ /**
1083
+ * Triggered when a `participation` object is created.
1084
+ * @permissionScope Manage Calendars
1085
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1086
+ * @permissionScope Manage Bookings
1087
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1088
+ * @permissionScope Manage Bookings - all permissions
1089
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1090
+ * @permissionId CALENDAR.PARTICIPATION_READ
1091
+ * @webhook
1092
+ * @eventType wix.calendar.v3.participation_created
1093
+ * @slug created
1094
+ */
1095
+ declare function onParticipationCreated(handler: (event: ParticipationCreatedEnvelope) => void | Promise<void>): void;
1096
+ interface ParticipationDeletedEnvelope {
1097
+ metadata: EventMetadata;
1098
+ }
1099
+ /**
1100
+ * Triggered when a `participation` object is deleted.
1101
+ * @permissionScope Manage Calendars
1102
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1103
+ * @permissionScope Manage Bookings
1104
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1105
+ * @permissionScope Manage Bookings - all permissions
1106
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1107
+ * @permissionId CALENDAR.PARTICIPATION_READ
1108
+ * @webhook
1109
+ * @eventType wix.calendar.v3.participation_deleted
1110
+ * @slug deleted
1111
+ */
1112
+ declare function onParticipationDeleted(handler: (event: ParticipationDeletedEnvelope) => void | Promise<void>): void;
1113
+ interface ParticipationUpdatedEnvelope {
1114
+ entity: Participation;
1115
+ metadata: EventMetadata;
1116
+ /** @hidden */
1117
+ modifiedFields: Record<string, any>;
1118
+ }
1119
+ /**
1120
+ * Triggered when a `participation` object is updated.
1121
+ * @permissionScope Manage Calendars
1122
+ * @permissionScopeId SCOPE.DC-CALENDAR.MANAGE
1123
+ * @permissionScope Manage Bookings
1124
+ * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
1125
+ * @permissionScope Manage Bookings - all permissions
1126
+ * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
1127
+ * @permissionId CALENDAR.PARTICIPATION_READ
1128
+ * @webhook
1129
+ * @eventType wix.calendar.v3.participation_updated
1130
+ * @slug updated
1131
+ */
1132
+ declare function onParticipationUpdated(handler: (event: ParticipationUpdatedEnvelope) => void | Promise<void>): void;
1133
+ /**
1134
+ * Retrieves a `participation` object.
1135
+ * @param participationId - ID of the `participation` object to retrieve.
1136
+ * @public
1137
+ * @requiredField participationId
1138
+ * @permissionId CALENDAR.PARTICIPATION_READ
1139
+ * @applicableIdentity APP
1140
+ * @returns Retrieved `participation` object.
1141
+ * @fqn wix.calendar.participations.v3.ParticipationsService.GetParticipation
1142
+ */
1143
+ declare function getParticipation(participationId: string): Promise<NonNullablePaths<Participation, `status`, 2>>;
1144
+ /**
1145
+ * Creates a query to retrieve a list of participations.
1146
+ *
1147
+ * The `queryParticipations()` function builds a query to retrieve a list of participations and returns a `ParticipationsQueryBuilder` object.
1148
+ *
1149
+ * The returned object contains the query definition, which is typically used to run the query using the [find()](https://dev.wix.com/docs/sdk/backend-modules/calendar/participations/participations-query-builder/find) function.
1150
+ *
1151
+ * You can refine the query by chaining `ParticipationsQueryBuilder` functions onto the query. `ParticipationsQueryBuilder` functions enable you to sort, filter, and control the results that `queryParticipations()` returns.
1152
+ *
1153
+ * `queryParticipations()` runs with the following `ParticipationsQueryBuilder` default that you can override:
1154
+ *
1155
+ * + `limit` is `50`.
1156
+ * + Sorted by `createdDate` in ascending order.
1157
+ *
1158
+ * The functions that are chained to `queryParticipations()` are applied in the order they are called.
1159
+ *
1160
+ * The following `ParticipationsQueryBuilder` functions are supported for the `queryParticipations()` function. For a full description of the participations object, see the object returned for the [items](https://dev.wix.com/docs/sdk/backend-modules/calendar/participations/participations-query-result/items) property in `ParticipationsQueryResult`.
1161
+ *
1162
+ * @public
1163
+ * @permissionId CALENDAR.PARTICIPATION_READ
1164
+ * @applicableIdentity APP
1165
+ * @fqn wix.calendar.participations.v3.ParticipationsService.QueryParticipations
1166
+ */
1167
+ declare function queryParticipations(): ParticipationsQueryBuilder;
1168
+ interface QueryCursorResult {
1169
+ cursors: Cursors;
1170
+ hasNext: () => boolean;
1171
+ hasPrev: () => boolean;
1172
+ length: number;
1173
+ pageSize: number;
1174
+ }
1175
+ interface ParticipationsQueryResult extends QueryCursorResult {
1176
+ items: Participation[];
1177
+ query: ParticipationsQueryBuilder;
1178
+ next: () => Promise<ParticipationsQueryResult>;
1179
+ prev: () => Promise<ParticipationsQueryResult>;
1180
+ }
1181
+ interface ParticipationsQueryBuilder {
1182
+ /** @param propertyName - Property whose value is compared with `value`.
1183
+ * @param value - Value to compare against.
1184
+ */
1185
+ eq: (propertyName: 'scheduleId' | 'eventId' | 'externalId' | 'participant.contactId' | 'partySize' | 'status' | 'appId' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1186
+ /** @param propertyName - Property whose value is compared with `value`.
1187
+ * @param value - Value to compare against.
1188
+ */
1189
+ ne: (propertyName: 'partySize' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1190
+ /** @param propertyName - Property whose value is compared with `value`.
1191
+ * @param value - Value to compare against.
1192
+ */
1193
+ ge: (propertyName: 'partySize' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1194
+ /** @param propertyName - Property whose value is compared with `value`.
1195
+ * @param value - Value to compare against.
1196
+ */
1197
+ gt: (propertyName: 'partySize' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1198
+ /** @param propertyName - Property whose value is compared with `value`.
1199
+ * @param value - Value to compare against.
1200
+ */
1201
+ le: (propertyName: 'partySize' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1202
+ /** @param propertyName - Property whose value is compared with `value`.
1203
+ * @param value - Value to compare against.
1204
+ */
1205
+ lt: (propertyName: 'partySize' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1206
+ /** @param propertyName - Property whose value is compared with `values`.
1207
+ * @param values - List of values to compare against.
1208
+ */
1209
+ hasSome: (propertyName: '_createdDate' | '_updatedDate', value: any[]) => ParticipationsQueryBuilder;
1210
+ in: (propertyName: 'scheduleId' | 'eventId' | '_id' | 'externalId' | 'participant.contactId' | 'status' | 'appId' | '_createdDate' | '_updatedDate', value: any) => ParticipationsQueryBuilder;
1211
+ exists: (propertyName: '_createdDate' | '_updatedDate', value: boolean) => ParticipationsQueryBuilder;
1212
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
1213
+ ascending: (...propertyNames: Array<'_createdDate' | '_updatedDate'>) => ParticipationsQueryBuilder;
1214
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
1215
+ descending: (...propertyNames: Array<'_createdDate' | '_updatedDate'>) => ParticipationsQueryBuilder;
1216
+ /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */
1217
+ limit: (limit: number) => ParticipationsQueryBuilder;
1218
+ /** @param cursor - A pointer to specific record */
1219
+ skipTo: (cursor: string) => ParticipationsQueryBuilder;
1220
+ find: () => Promise<ParticipationsQueryResult>;
1221
+ }
1222
+ /**
1223
+ * @hidden
1224
+ * @fqn wix.calendar.participations.v3.ParticipationsService.QueryParticipations
1225
+ * @requiredField query
1226
+ */
1227
+ declare function typedQueryParticipations(query: ParticipationQuery): Promise<NonNullablePaths<QueryParticipationsResponse, `participations` | `participations.${number}.status`, 4>>;
1228
+ interface ParticipationQuerySpec extends QuerySpec {
1229
+ paging: 'cursor';
1230
+ wql: [
1231
+ {
1232
+ fields: ['_id'];
1233
+ operators: ['$in'];
1234
+ sort: 'NONE';
1235
+ },
1236
+ {
1237
+ fields: [
1238
+ 'appId',
1239
+ 'eventId',
1240
+ 'externalId',
1241
+ 'participant.contactId',
1242
+ 'scheduleId',
1243
+ 'status'
1244
+ ];
1245
+ operators: ['$eq', '$in'];
1246
+ sort: 'NONE';
1247
+ },
1248
+ {
1249
+ fields: ['partySize'];
1250
+ operators: ['$eq', '$gt', '$gte', '$lt', '$lte', '$ne'];
1251
+ sort: 'NONE';
1252
+ },
1253
+ {
1254
+ fields: ['_createdDate', '_updatedDate'];
1255
+ operators: '*';
1256
+ sort: 'BOTH';
1257
+ }
1258
+ ];
1259
+ }
1260
+ type CommonQueryWithEntityContext = Query<Participation, ParticipationQuerySpec>;
1261
+ type ParticipationQuery = {
1262
+ /**
1263
+ Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `filter` or `sort`.
1264
+ */
1265
+ cursorPaging?: {
1266
+ /**
1267
+ Number of participations to load.
1268
+ @min: 1,
1269
+ @max: 100
1270
+ */
1271
+ limit?: NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit'] | null;
1272
+ /**
1273
+ Pointer to the next or previous page in the list of results.
1274
+
1275
+ You can get the relevant cursor token
1276
+ from the `pagingMetadata` object in the previous call's response.
1277
+ Not relevant for the first request.
1278
+ */
1279
+ cursor?: NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor'] | null;
1280
+ };
1281
+ /**
1282
+ Filter object in the following format:
1283
+ `"filter" : {
1284
+ "fieldName1": "value1",
1285
+ "fieldName2":{"$operator":"value2"}
1286
+ }`
1287
+ Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
1288
+ */
1289
+ filter?: CommonQueryWithEntityContext['filter'] | null;
1290
+ };
1291
+ declare const utils: {
1292
+ query: {
1293
+ QueryBuilder: () => _wix_sdk_types.QueryBuilder<Participation, ParticipationQuerySpec, ParticipationQuery>;
1294
+ Filter: _wix_sdk_types.FilterFactory<Participation, ParticipationQuerySpec>;
1295
+ Sort: _wix_sdk_types.SortFactory<ParticipationQuerySpec>;
1296
+ };
1297
+ search: {
1298
+ SearchBuilder: () => _wix_sdk_types.SearchBuilder<Participation, ParticipationSearchSpec, ParticipationSearch>;
1299
+ Filter: _wix_sdk_types.FilterFactory<Participation, ParticipationSearchSpec>;
1300
+ Sort: _wix_sdk_types.SortFactory<ParticipationSearchSpec>;
1301
+ SearchParams: _wix_sdk_types.SearchParamsFactory<ParticipationSearchSpec>;
1302
+ Aggregation: _wix_sdk_types.AggregationFactory<ParticipationSearchSpec>;
1303
+ };
1304
+ };
1305
+ interface ParticipationSearchSpec extends SearchSpec {
1306
+ aggregatable: [
1307
+ '_createdDate',
1308
+ '_id',
1309
+ '_updatedDate',
1310
+ 'appId',
1311
+ 'eventId',
1312
+ 'externalId',
1313
+ 'participant.contactId',
1314
+ 'partySize',
1315
+ 'scheduleId',
1316
+ 'status'
1317
+ ];
1318
+ paging: 'cursor';
1319
+ wql: [
1320
+ {
1321
+ operators: ['$in'];
1322
+ fields: ['_id'];
1323
+ sort: 'NONE';
1324
+ },
1325
+ {
1326
+ operators: ['$eq', '$in'];
1327
+ fields: [
1328
+ 'appId',
1329
+ 'eventId',
1330
+ 'externalId',
1331
+ 'participant.contactId',
1332
+ 'scheduleId',
1333
+ 'status'
1334
+ ];
1335
+ sort: 'NONE';
1336
+ },
1337
+ {
1338
+ operators: ['$eq', '$gt', '$gte', '$lt', '$lte', '$ne'];
1339
+ fields: ['partySize'];
1340
+ sort: 'NONE';
1341
+ },
1342
+ {
1343
+ operators: '*';
1344
+ fields: ['_createdDate', '_updatedDate'];
1345
+ sort: 'BOTH';
1346
+ }
1347
+ ];
1348
+ }
1349
+ type CommonSearchWithEntityContext = Search<Participation, ParticipationSearchSpec>;
1350
+ type ParticipationSearch = {
1351
+ /**
1352
+ Cursor paging options.
1353
+
1354
+ Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
1355
+ */
1356
+ cursorPaging?: {
1357
+ /**
1358
+ Maximum number of items to return in the results.
1359
+ @max: 100
1360
+ */
1361
+ limit?: NonNullable<CommonSearchWithEntityContext['cursorPaging']>['limit'] | null;
1362
+ /**
1363
+ Pointer to the next or previous page in the list of results.
1364
+
1365
+ Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
1366
+ Not relevant for the first request.
1367
+ @maxLength: 16000
1368
+ */
1369
+ cursor?: NonNullable<CommonSearchWithEntityContext['cursorPaging']>['cursor'] | null;
1370
+ };
1371
+ /**
1372
+ Filter object.
1373
+
1374
+ Learn more about [filtering](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#filters).
1375
+ */
1376
+ filter?: CommonSearchWithEntityContext['filter'] | null;
1377
+ /**
1378
+ List of sort objects.
1379
+
1380
+ Learn more about [sorting](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#sorting).
1381
+ @maxSize: 10
1382
+ */
1383
+ sort?: {
1384
+ /**
1385
+ Name of the field to sort by.
1386
+ @maxLength: 512
1387
+ */
1388
+ fieldName?: NonNullable<CommonSearchWithEntityContext['sort']>[number]['fieldName'];
1389
+ /**
1390
+ Sort order.
1391
+ */
1392
+ order?: NonNullable<CommonSearchWithEntityContext['sort']>[number]['order'];
1393
+ }[];
1394
+ /**
1395
+ Logical groupings of data into facets, with summaries for each facet. For example, use aggregations to allow site visitors to narrow down their search results by selecting specific categories.
1396
+ @maxSize: 10
1397
+ */
1398
+ aggregations?: {
1399
+ /**
1400
+ A value aggregation calculates metrics such as count for specific fields within a dataset, providing insights into the overall distribution and key statistics of those values. For example, use a value aggregation to get the number (count) of products for each price listed in the store.
1401
+ */
1402
+ value?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['value'];
1403
+ /**
1404
+ A range aggregation calculates the count of the values from the specified field in the dataset that fall within the range of each bucket you define. For example, use a range aggregation to compare the number of reservations made for parties of 4 or less to the number of reservations made for parties with 5 or more.
1405
+ */
1406
+ range?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['range'];
1407
+ /**
1408
+ A scalar aggregation calculates a single numerical value from a dataset, summarizing the dataset into one key metric: `COUNT_DISTINCT`, `SUM`, `AVG`, `MIN`, or `MAX`.
1409
+ */
1410
+ scalar?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['scalar'];
1411
+ /**
1412
+ A date histogram calculates the count of time values from the specified field in the dataset that fall within each time interval you define (hour, day, week, etc.) For example, use a date histogram to find how many reservations have been made at a restaurant each week.
1413
+ */
1414
+ dateHistogram?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['dateHistogram'];
1415
+ /**
1416
+ A nested aggregation is applied within the results of another aggregation. Rather than aggregating directly on the primary dataset, first group data using one aggregation and then apply another aggregation within each group. It allows for more complex analyses where you can summarize data at different levels of detail or hierarchy. For example, to get the number of products that are in stock and out of stock for each price listed, first perform a value aggregation on `discountedPriceNumeric`, and a second value aggregation on `inStock`.
1417
+ */
1418
+ nested?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['nested'];
1419
+ /**
1420
+ Aggregation name, returned in `aggregations.results.name`.
1421
+ @maxLength: 100
1422
+ */
1423
+ name?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['name'] | null;
1424
+ /**
1425
+ Type of aggregation to perform. Must align with the corresponding aggregation field.
1426
+ */
1427
+ type?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['type'];
1428
+ /**
1429
+ Field to aggregate by. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
1430
+ @maxLength: 200
1431
+ */
1432
+ fieldPath?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['fieldPath'];
1433
+ /**
1434
+ Deprecated. Use `nested` instead.
1435
+ @deprecated: Deprecated. Use `nested` instead.,
1436
+ @replacedBy: kind.nested,
1437
+ @targetRemovalDate: 2024-03-30
1438
+ */
1439
+ groupBy?: NonNullable<CommonSearchWithEntityContext['aggregations']>[number]['groupBy'];
1440
+ }[];
1441
+ /**
1442
+ Free text to match in searchable fields.
1443
+ */
1444
+ search?: {
1445
+ /**
1446
+ Search mode. Defines the search logic for combining multiple terms in the `expression`.
1447
+ */
1448
+ mode?: NonNullable<CommonSearchWithEntityContext['search']>['mode'];
1449
+ /**
1450
+ Search term or expression.
1451
+ @maxLength: 100
1452
+ */
1453
+ expression?: NonNullable<CommonSearchWithEntityContext['search']>['expression'] | null;
1454
+ /**
1455
+ Fields to search in. If the array is empty, all searchable fields are searched. Use dot notation to specify a JSON path. For example, `order.address.streetName`.
1456
+ @maxLength: 200,
1457
+ @maxSize: 20
1458
+ */
1459
+ fields?: NonNullable<CommonSearchWithEntityContext['search']>['fields'];
1460
+ /**
1461
+ Whether to enable the search function to use an algorithm to automatically find results that are close to the search expression, such as typos and declensions.
1462
+ */
1463
+ fuzzy?: NonNullable<CommonSearchWithEntityContext['search']>['fuzzy'];
1464
+ };
1465
+ /**
1466
+ Time zone to adjust date-time-based filters and aggregations, in ISO 8601 (including offsets) or IANA time zone database (including time zone IDs) format.
1467
+ Applies to all relevant filters and aggregations, unless overridden by providing timestamps including time zone. For example, "2023-12-20T10:52:34.795Z".
1468
+ @maxLength: 50
1469
+ */
1470
+ timeZone?: CommonSearchWithEntityContext['timeZone'] | null;
1471
+ };
1472
+ /**
1473
+ * Creates a `participation` object for a schedule or event.
1474
+ * @param participation - `participation` object to create.
1475
+ * @public
1476
+ * @requiredField participation
1477
+ * @requiredField participation.participant
1478
+ * @requiredField participation.participant.name
1479
+ * @requiredField participation.participatedItem
1480
+ * @requiredField participation.partySize
1481
+ * @permissionId CALENDAR.PARTICIPATION_CREATE
1482
+ * @applicableIdentity APP
1483
+ * @returns Created `participation` object.
1484
+ * @fqn wix.calendar.participations.v3.ParticipationsService.CreateParticipation
1485
+ */
1486
+ declare function createParticipation(participation: NonNullablePaths<Participation, `participant` | `participant.name` | `partySize`, 3>, options?: CreateParticipationOptions): Promise<NonNullablePaths<Participation, `status`, 2>>;
1487
+ interface CreateParticipationOptions {
1488
+ /**
1489
+ * Idempotency key guaranteeing that you don't create the same `participation`
1490
+ * object more than once.
1491
+ * @format GUID
1492
+ */
1493
+ idempotencyKey?: string | null;
1494
+ }
1495
+ /**
1496
+ * Updates a `participation` object.
1497
+ * @param _id - Participation ID.
1498
+ * @public
1499
+ * @requiredField _id
1500
+ * @requiredField participation
1501
+ * @requiredField participation.revision
1502
+ * @permissionId CALENDAR.PARTICIPATION_UPDATE
1503
+ * @applicableIdentity APP
1504
+ * @returns Updated `participation` object.
1505
+ * @fqn wix.calendar.participations.v3.ParticipationsService.UpdateParticipation
1506
+ */
1507
+ declare function updateParticipation(_id: string, participation: NonNullablePaths<UpdateParticipation, `revision`, 2>): Promise<NonNullablePaths<Participation, `status`, 2>>;
1508
+ interface UpdateParticipation {
1509
+ /**
1510
+ * ID of the [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object)
1511
+ * associated with the participation.
1512
+ * @format GUID
1513
+ * @immutable
1514
+ */
1515
+ scheduleId?: string | null;
1516
+ /**
1517
+ * ID of the [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
1518
+ * associated with the participation.
1519
+ * @minLength 36
1520
+ * @maxLength 250
1521
+ * @immutable
1522
+ */
1523
+ eventId?: string | null;
1524
+ /**
1525
+ * Participation ID.
1526
+ * @format GUID
1527
+ * @readonly
1528
+ */
1529
+ _id?: string | null;
1530
+ /**
1531
+ * External ID.
1532
+ * @format GUID
1533
+ * @immutable
1534
+ */
1535
+ externalId?: string | null;
1536
+ /** Information about the participant. */
1537
+ participant?: Participant;
1538
+ /**
1539
+ * Party size of the group or `1` for individuals.
1540
+ *
1541
+ * Min: `1`
1542
+ * Max: `1000`
1543
+ * @min 1
1544
+ * @max 1000
1545
+ */
1546
+ partySize?: number | null;
1547
+ /**
1548
+ * Status of the party's participation in the event. Depending on your
1549
+ * implementation, confirmation may be handled by the business owner or the customer.
1550
+ *
1551
+ * Supported values:
1552
+ * + `CONFIRMED`: The party's participation is confirmed. For example, the business owner has confirmed a [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings).
1553
+ * + `PENDING_CONFIRMATION`: The party's participation is awaiting confirmation. For example, the business owner still needs to approve the [booking](https://dev.wix.com/docs/rest/business-solutions/bookings/about-wix-bookings).
1554
+ *
1555
+ * Default: `CONFIRMED`
1556
+ */
1557
+ status?: StatusWithLiterals;
1558
+ /**
1559
+ * ID of the app that owns the participation `object`. Identical to `appId` of the
1560
+ * [schedule](https://dev.wix.com/docs/rest/business-management/calendar/schedules-v3/schedule-object)
1561
+ * that the related
1562
+ * [event](https://dev.wix.com/docs/rest/business-management/calendar/events-v3/event-object)
1563
+ * belongs to.
1564
+ * @format GUID
1565
+ * @readonly
1566
+ */
1567
+ appId?: string | null;
1568
+ /**
1569
+ * Revision number, which increments by 1 each time the participation is updated.
1570
+ * To prevent conflicting changes, the current revision must be passed when updating the participation.
1571
+ * Ignored when creating a participation.
1572
+ * @readonly
1573
+ */
1574
+ revision?: string | null;
1575
+ /**
1576
+ * Date the participation was created in `YYYY-MM-DDThh:mm:ss.sssZ` format.
1577
+ * @readonly
1578
+ */
1579
+ _createdDate?: Date | null;
1580
+ /**
1581
+ * Date the participation was updated in `YYYY-MM-DDThh:mm:ss.sssZ` format.
1582
+ * @readonly
1583
+ */
1584
+ _updatedDate?: Date | null;
1585
+ /** Extensions enabling applications or users to save custom data related to the participation. */
1586
+ extendedFields?: ExtendedFields;
1587
+ }
1588
+ /**
1589
+ * Deletes a `participation` object.
1590
+ * @param participationId - ID of `participation` object to delete.
1591
+ * @public
1592
+ * @requiredField participationId
1593
+ * @permissionId CALENDAR.PARTICIPATION_DELETE
1594
+ * @applicableIdentity APP
1595
+ * @fqn wix.calendar.participations.v3.ParticipationsService.DeleteParticipation
1596
+ */
1597
+ declare function deleteParticipation(participationId: string): Promise<void>;
1598
+
1599
+ export { type CommonCursorPagingMetadata as $, AggregationType as A, type IncludeMissingValuesOptions as B, type CreateParticipationOptions as C, type ValueAggregationOptionsOneOf as D, type ExtendedFields as E, type RangeAggregation as F, type GetParticipationRequest as G, type ScalarAggregation as H, Interval as I, type DateHistogramAggregation as J, type NestedAggregationItem as K, type NestedAggregationItemKindOneOf as L, MissingValues as M, NestedAggregationType as N, type NestedAggregation as O, type Participation as P, type QueryParticipationsRequest as Q, type RangeBucket as R, Status as S, type GroupByAggregation as T, type UpdateParticipation as U, type ValueAggregation as V, WebhookIdentityType as W, type GroupByAggregationKindOneOf as X, type SearchDetails as Y, type CommonCursorPaging as Z, type SearchParticipationsResponse as _, type ParticipationCreatedEnvelope as a, type CommonQueryWithEntityContext as a$, type CommonCursors as a0, type AggregationData as a1, type ValueAggregationResult as a2, type RangeAggregationResult as a3, type NestedAggregationResults as a4, type NestedAggregationResultsResultOneOf as a5, type ValueResults as a6, type RangeResults as a7, type AggregationResultsScalarResult as a8, type NestedValueAggregationResult as a9, type ActionEvent as aA, type Empty as aB, type SumParticipationsPartySizeByScheduleIdRequest as aC, type SumParticipationsPartySizeByScheduleIdResponse as aD, type PartySizeSumByScheduleId as aE, type MessageEnvelope as aF, type IdentificationData as aG, type IdentificationDataIdOneOf as aH, type AccountInfo as aI, type BaseEventMetadata as aJ, type EventMetadata as aK, type AccountInfoMetadata as aL, type ParticipationsQueryResult as aM, type ParticipationQuerySpec as aN, type ParticipationSearchSpec as aO, utils as aP, type StatusWithLiterals as aQ, type SortOrderWithLiterals as aR, type SortTypeWithLiterals as aS, type SortDirectionWithLiterals as aT, type MissingValuesWithLiterals as aU, type ScalarTypeWithLiterals as aV, type NestedAggregationTypeWithLiterals as aW, type IntervalWithLiterals as aX, type AggregationTypeWithLiterals as aY, type ModeWithLiterals as aZ, type WebhookIdentityTypeWithLiterals as a_, type ValueResult as aa, type RangeResult as ab, type ScalarResult as ac, type ScalarDateResult as ad, type NestedResultValue as ae, type NestedResultValueResultOneOf as af, type Results as ag, type DateHistogramResult as ah, type GroupByValueResults as ai, type DateHistogramResults as aj, type NestedResults as ak, type AggregationResultsScalarDateResult as al, type AggregationResults as am, type AggregationResultsResultOneOf as an, type CreateParticipationRequest as ao, type CreateParticipationResponse as ap, type UpdateParticipationRequest as aq, type UpdateParticipationResponse as ar, type DeleteParticipationRequest as as, type DeleteParticipationResponse as at, type DomainEvent as au, type DomainEventBodyOneOf as av, type EntityCreatedEvent as aw, type RestoreInfo as ax, type EntityUpdatedEvent as ay, type EntityDeletedEvent as az, type ParticipationDeletedEnvelope as b, type CommonSearchWithEntityContext as b0, type ParticipationSearch as b1, onParticipationCreated as b2, onParticipationDeleted as b3, onParticipationUpdated as b4, getParticipation as b5, queryParticipations as b6, createParticipation as b7, updateParticipation as b8, deleteParticipation as b9, type ParticipationUpdatedEnvelope as c, type ParticipationsQueryBuilder as d, type ParticipationQuery as e, SortOrder as f, SortType as g, SortDirection as h, ScalarType as i, Mode as j, type ParticipationParticipatedItemOneOf as k, type Participant as l, type GetParticipationResponse as m, type CursorQuery as n, type CursorQueryPagingMethodOneOf as o, type CursorPaging as p, type QueryParticipationsResponse as q, type CursorPagingMetadata as r, type Cursors as s, typedQueryParticipations as t, type SearchParticipationsRequest as u, type CursorSearch as v, type CursorSearchPagingMethodOneOf as w, type Sorting as x, type Aggregation as y, type AggregationKindOneOf as z };