@wix/metro 1.0.81 → 1.0.82

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.
@@ -28,6 +28,48 @@ interface StreetAddress {
28
28
  /** Street name. */
29
29
  name?: string;
30
30
  }
31
+ interface AddressLocation {
32
+ /** Address latitude. */
33
+ latitude?: number | null;
34
+ /** Address longitude. */
35
+ longitude?: number | null;
36
+ }
37
+ interface Subdivision {
38
+ /** Short subdivision code. */
39
+ code?: string;
40
+ /** Subdivision full name. */
41
+ name?: string;
42
+ }
43
+ declare enum SubdivisionType {
44
+ UNKNOWN_SUBDIVISION_TYPE = "UNKNOWN_SUBDIVISION_TYPE",
45
+ /** State */
46
+ ADMINISTRATIVE_AREA_LEVEL_1 = "ADMINISTRATIVE_AREA_LEVEL_1",
47
+ /** County */
48
+ ADMINISTRATIVE_AREA_LEVEL_2 = "ADMINISTRATIVE_AREA_LEVEL_2",
49
+ /** City/town */
50
+ ADMINISTRATIVE_AREA_LEVEL_3 = "ADMINISTRATIVE_AREA_LEVEL_3",
51
+ /** Neighborhood/quarter */
52
+ ADMINISTRATIVE_AREA_LEVEL_4 = "ADMINISTRATIVE_AREA_LEVEL_4",
53
+ /** Street/block */
54
+ ADMINISTRATIVE_AREA_LEVEL_5 = "ADMINISTRATIVE_AREA_LEVEL_5",
55
+ /** ADMINISTRATIVE_AREA_LEVEL_0. Indicates the national political entity, and is typically the highest order type returned by the Geocoder. */
56
+ COUNTRY = "COUNTRY"
57
+ }
58
+ /** Subdivision Concordance values */
59
+ interface StandardDetails {
60
+ /** subdivision iso-3166-2 code according to [ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2). e.g. US-NY, GB-SCT, NO-30 */
61
+ iso31662?: string | null;
62
+ }
63
+ interface VideoResolution {
64
+ /** Video URL. */
65
+ url?: string;
66
+ /** Video height. */
67
+ height?: number;
68
+ /** Video width. */
69
+ width?: number;
70
+ /** Video format for example, mp4, hls. */
71
+ format?: string;
72
+ }
31
73
  interface PageLink {
32
74
  /** The page id we want from the site */
33
75
  pageId?: string;
@@ -65,15 +107,131 @@ interface MyAddress {
65
107
  postalCode?: string | null;
66
108
  streetAddress?: StreetAddress;
67
109
  }
110
+ interface CreateProductRequest {
111
+ product?: Product;
112
+ }
113
+ interface CreateProductResponse {
114
+ product?: Product;
115
+ }
116
+ interface DeleteProductRequest {
117
+ productId: string;
118
+ }
119
+ interface DeleteProductResponse {
120
+ }
121
+ interface UpdateProductRequest {
122
+ productId: string;
123
+ product?: Product;
124
+ }
125
+ interface UpdateProductResponse {
126
+ product?: Product;
127
+ }
128
+ interface GetProductRequest {
129
+ productId: string;
130
+ }
131
+ interface GetProductResponse {
132
+ product?: Product;
133
+ }
134
+ interface GetProductsStartWithRequest {
135
+ title: string;
136
+ addressLine2?: string | null;
137
+ }
68
138
  interface GetProductsStartWithResponse {
69
139
  products?: Product[];
70
140
  }
141
+ interface QueryProductsRequest {
142
+ query?: QueryV2;
143
+ /** Whether variants should be included in the response. */
144
+ includeVariants?: boolean;
145
+ /** Whether hidden products should be included in the response. Requires permissions to manage products. */
146
+ includeHiddenProducts?: boolean;
147
+ /** Whether merchant specific data should be included in the response. Requires permissions to manage products. */
148
+ includeMerchantSpecificData?: boolean;
149
+ }
150
+ interface QueryV2 extends QueryV2PagingMethodOneOf {
151
+ /** Paging options to limit and skip the number of items. */
152
+ paging?: Paging;
153
+ /** 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`. */
154
+ cursorPaging?: CursorPaging;
155
+ /**
156
+ * Filter object in the following format:
157
+ * `"filter" : {
158
+ * "fieldName1": "value1",
159
+ * "fieldName2":{"$operator":"value2"}
160
+ * }`
161
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
162
+ */
163
+ filter?: Record<string, any> | null;
164
+ /**
165
+ * Sort object in the following format:
166
+ * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]`
167
+ */
168
+ sort?: Sorting[];
169
+ /** Array of projected fields. A list of specific field names to return. If `fieldsets` are also specified, the union of `fieldsets` and `fields` is returned. */
170
+ fields?: string[];
171
+ /** Array of named, predefined sets of projected fields. A array of predefined named sets of fields to be returned. Specifying multiple `fieldsets` will return the union of fields from all sets. If `fields` are also specified, the union of `fieldsets` and `fields` is returned. */
172
+ fieldsets?: string[];
173
+ }
174
+ /** @oneof */
175
+ interface QueryV2PagingMethodOneOf {
176
+ /** Paging options to limit and skip the number of items. */
177
+ paging?: Paging;
178
+ /** 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`. */
179
+ cursorPaging?: CursorPaging;
180
+ }
181
+ interface Sorting {
182
+ /** Name of the field to sort by. */
183
+ fieldName?: string;
184
+ /** Sort order. */
185
+ order?: SortOrder;
186
+ }
187
+ declare enum SortOrder {
188
+ ASC = "ASC",
189
+ DESC = "DESC"
190
+ }
191
+ interface Paging {
192
+ /** Number of items to load. */
193
+ limit?: number | null;
194
+ /** Number of items to skip in the current sort order. */
195
+ offset?: number | null;
196
+ }
197
+ interface CursorPaging {
198
+ /** Maximum number of items to return in the results. */
199
+ limit?: number | null;
200
+ /**
201
+ * Pointer to the next or previous page in the list of results.
202
+ *
203
+ * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
204
+ * Not relevant for the first request.
205
+ */
206
+ cursor?: string | null;
207
+ }
208
+ interface QueryProductsResponse {
209
+ products?: Product[];
210
+ metadata?: PagingMetadataV2;
211
+ }
212
+ interface PagingMetadataV2 {
213
+ /** Number of items returned in the response. */
214
+ count?: number | null;
215
+ /** Offset that was requested. */
216
+ offset?: number | null;
217
+ /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */
218
+ total?: number | null;
219
+ /** Flag that indicates the server failed to calculate the `total` field. */
220
+ tooManyToCount?: boolean | null;
221
+ /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */
222
+ cursors?: Cursors;
223
+ }
71
224
  interface Cursors {
72
225
  /** Cursor string pointing to the next page in the list of results. */
73
226
  next?: string | null;
74
227
  /** Cursor pointing to the previous page in the list of results. */
75
228
  prev?: string | null;
76
229
  }
230
+ interface BulkCreateProductsRequest {
231
+ products: Product[];
232
+ /** set to `true` if you wish to receive back the created products in the response */
233
+ returnEntity?: boolean;
234
+ }
77
235
  interface BulkCreateProductsResponse {
78
236
  results?: BulkProductResult[];
79
237
  bulkActionMetadata?: BulkActionMetadata;
@@ -110,6 +268,11 @@ interface BulkActionMetadata {
110
268
  /** Number of failures without details because detailed failure threshold was exceeded. */
111
269
  undetailedFailures?: number;
112
270
  }
271
+ interface BulkUpdateProductsRequest {
272
+ products: MaskedProduct[];
273
+ /** set to `true` if you wish to receive back the updated products in the response */
274
+ returnEntity?: boolean;
275
+ }
113
276
  interface MaskedProduct {
114
277
  /** Product to be updated, may be partial */
115
278
  product?: Product;
@@ -123,6 +286,9 @@ interface BulkUpdateProductsResponseBulkProductResult {
123
286
  /** Only exists if `returnEntity` was set to true in the request */
124
287
  item?: Product;
125
288
  }
289
+ interface BulkDeleteProductsRequest {
290
+ productIds: string[];
291
+ }
126
292
  interface BulkDeleteProductsResponse {
127
293
  results?: BulkDeleteProductsResponseBulkProductResult[];
128
294
  bulkActionMetadata?: BulkActionMetadata;
@@ -130,127 +296,205 @@ interface BulkDeleteProductsResponse {
130
296
  interface BulkDeleteProductsResponseBulkProductResult {
131
297
  itemMetadata?: ItemMetadata;
132
298
  }
299
+ interface ResetProductsDbRequest {
300
+ }
301
+ interface ResetProductsDbResponse {
302
+ }
303
+ interface DomainEvent extends DomainEventBodyOneOf {
304
+ createdEvent?: EntityCreatedEvent;
305
+ updatedEvent?: EntityUpdatedEvent;
306
+ deletedEvent?: EntityDeletedEvent;
307
+ actionEvent?: ActionEvent;
308
+ /**
309
+ * Unique event ID.
310
+ * Allows clients to ignore duplicate webhooks.
311
+ */
312
+ _id?: string;
313
+ /**
314
+ * Assumes actions are also always typed to an entity_type
315
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
316
+ */
317
+ entityFqdn?: string;
318
+ /**
319
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
320
+ * This is although the created/updated/deleted notion is duplication of the oneof types
321
+ * Example: created/updated/deleted/started/completed/email_opened
322
+ */
323
+ slug?: string;
324
+ /** ID of the entity associated with the event. */
325
+ entityId?: string;
326
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example: 2020-04-26T13:57:50.699Z */
327
+ eventTime?: Date;
328
+ /**
329
+ * Whether the event was triggered as a result of a privacy regulation application
330
+ * (for example, GDPR).
331
+ */
332
+ triggeredByAnonymizeRequest?: boolean | null;
333
+ /** If present, indicates the action that triggered the event. */
334
+ originatedFrom?: string | null;
335
+ /**
336
+ * A sequence number defining the order of updates to the underlying entity.
337
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
338
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
339
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
340
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
341
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
342
+ */
343
+ entityEventSequence?: string | null;
344
+ }
345
+ /** @oneof */
346
+ interface DomainEventBodyOneOf {
347
+ createdEvent?: EntityCreatedEvent;
348
+ updatedEvent?: EntityUpdatedEvent;
349
+ deletedEvent?: EntityDeletedEvent;
350
+ actionEvent?: ActionEvent;
351
+ }
352
+ interface EntityCreatedEvent {
353
+ entity?: string;
354
+ }
355
+ interface RestoreInfo {
356
+ deletedDate?: Date;
357
+ }
358
+ interface EntityUpdatedEvent {
359
+ /**
360
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
361
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
362
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
363
+ */
364
+ currentEntity?: string;
365
+ }
366
+ interface EntityDeletedEvent {
367
+ /** Entity that was deleted */
368
+ deletedEntity?: string | null;
369
+ }
370
+ interface ActionEvent {
371
+ body?: string;
372
+ }
373
+ interface MessageEnvelope {
374
+ /** App instance ID. */
375
+ instanceId?: string | null;
376
+ /** Event type. */
377
+ eventType?: string;
378
+ /** The identification type and identity data. */
379
+ identity?: IdentificationData;
380
+ /** Stringify payload. */
381
+ data?: string;
382
+ }
383
+ interface IdentificationData extends IdentificationDataIdOneOf {
384
+ /** ID of a site visitor that has not logged in to the site. */
385
+ anonymousVisitorId?: string;
386
+ /** ID of a site visitor that has logged in to the site. */
387
+ memberId?: string;
388
+ /** ID of a Wix user (site owner, contributor, etc.). */
389
+ wixUserId?: string;
390
+ /** ID of an app. */
391
+ appId?: string;
392
+ /** @readonly */
393
+ identityType?: WebhookIdentityType;
394
+ }
395
+ /** @oneof */
396
+ interface IdentificationDataIdOneOf {
397
+ /** ID of a site visitor that has not logged in to the site. */
398
+ anonymousVisitorId?: string;
399
+ /** ID of a site visitor that has logged in to the site. */
400
+ memberId?: string;
401
+ /** ID of a Wix user (site owner, contributor, etc.). */
402
+ wixUserId?: string;
403
+ /** ID of an app. */
404
+ appId?: string;
405
+ }
406
+ declare enum WebhookIdentityType {
407
+ UNKNOWN = "UNKNOWN",
408
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
409
+ MEMBER = "MEMBER",
410
+ WIX_USER = "WIX_USER",
411
+ APP = "APP"
412
+ }
413
+ interface StreetAddressNonNullableFields {
414
+ number: string;
415
+ name: string;
416
+ apt: string;
417
+ }
418
+ interface AddressNonNullableFields {
419
+ streetAddress?: StreetAddressNonNullableFields;
420
+ }
421
+ interface PageLinkNonNullableFields {
422
+ pageId: string;
423
+ rel: LinkRel[];
424
+ }
425
+ interface VariantNonNullableFields {
426
+ name: string;
427
+ value: string;
428
+ image: string;
429
+ }
430
+ interface MyAddressNonNullableFields {
431
+ streetAddress?: StreetAddressNonNullableFields;
432
+ }
433
+ interface ProductNonNullableFields {
434
+ _id: string;
435
+ collectionId: string;
436
+ image: string;
437
+ address?: AddressNonNullableFields;
438
+ document: string;
439
+ video: string;
440
+ pageLink?: PageLinkNonNullableFields;
441
+ audio: string;
442
+ variants: VariantNonNullableFields[];
443
+ mainVariant?: VariantNonNullableFields;
444
+ customAddress?: MyAddressNonNullableFields;
445
+ guid: string;
446
+ }
447
+ interface CreateProductResponseNonNullableFields {
448
+ product?: ProductNonNullableFields;
449
+ }
450
+ interface UpdateProductResponseNonNullableFields {
451
+ product?: ProductNonNullableFields;
452
+ }
453
+ interface GetProductResponseNonNullableFields {
454
+ product?: ProductNonNullableFields;
455
+ }
133
456
  interface GetProductsStartWithResponseNonNullableFields {
134
- products: {
135
- _id: string;
136
- collectionId: string;
137
- image: string;
138
- document: string;
139
- video: string;
140
- pageLink?: {
141
- pageId: string;
142
- rel: LinkRel[];
143
- };
144
- audio: string;
145
- variants: {
146
- name: string;
147
- value: string;
148
- image: string;
149
- }[];
150
- mainVariant?: {
151
- name: string;
152
- value: string;
153
- image: string;
154
- };
155
- guid: string;
156
- }[];
457
+ products: ProductNonNullableFields[];
458
+ }
459
+ interface QueryProductsResponseNonNullableFields {
460
+ products: ProductNonNullableFields[];
461
+ }
462
+ interface ApplicationErrorNonNullableFields {
463
+ code: string;
464
+ description: string;
465
+ }
466
+ interface ItemMetadataNonNullableFields {
467
+ originalIndex: number;
468
+ success: boolean;
469
+ error?: ApplicationErrorNonNullableFields;
470
+ }
471
+ interface BulkProductResultNonNullableFields {
472
+ itemMetadata?: ItemMetadataNonNullableFields;
473
+ item?: ProductNonNullableFields;
474
+ }
475
+ interface BulkActionMetadataNonNullableFields {
476
+ totalSuccesses: number;
477
+ totalFailures: number;
478
+ undetailedFailures: number;
157
479
  }
158
480
  interface BulkCreateProductsResponseNonNullableFields {
159
- results: {
160
- itemMetadata?: {
161
- originalIndex: number;
162
- success: boolean;
163
- error?: {
164
- code: string;
165
- description: string;
166
- };
167
- };
168
- item?: {
169
- _id: string;
170
- collectionId: string;
171
- image: string;
172
- document: string;
173
- video: string;
174
- pageLink?: {
175
- pageId: string;
176
- rel: LinkRel[];
177
- };
178
- audio: string;
179
- variants: {
180
- name: string;
181
- value: string;
182
- image: string;
183
- }[];
184
- mainVariant?: {
185
- name: string;
186
- value: string;
187
- image: string;
188
- };
189
- guid: string;
190
- };
191
- }[];
192
- bulkActionMetadata?: {
193
- totalSuccesses: number;
194
- totalFailures: number;
195
- undetailedFailures: number;
196
- };
481
+ results: BulkProductResultNonNullableFields[];
482
+ bulkActionMetadata?: BulkActionMetadataNonNullableFields;
483
+ }
484
+ interface BulkUpdateProductsResponseBulkProductResultNonNullableFields {
485
+ itemMetadata?: ItemMetadataNonNullableFields;
486
+ item?: ProductNonNullableFields;
197
487
  }
198
488
  interface BulkUpdateProductsResponseNonNullableFields {
199
- results: {
200
- itemMetadata?: {
201
- originalIndex: number;
202
- success: boolean;
203
- error?: {
204
- code: string;
205
- description: string;
206
- };
207
- };
208
- item?: {
209
- _id: string;
210
- collectionId: string;
211
- image: string;
212
- document: string;
213
- video: string;
214
- pageLink?: {
215
- pageId: string;
216
- rel: LinkRel[];
217
- };
218
- audio: string;
219
- variants: {
220
- name: string;
221
- value: string;
222
- image: string;
223
- }[];
224
- mainVariant?: {
225
- name: string;
226
- value: string;
227
- image: string;
228
- };
229
- guid: string;
230
- };
231
- }[];
232
- bulkActionMetadata?: {
233
- totalSuccesses: number;
234
- totalFailures: number;
235
- undetailedFailures: number;
236
- };
489
+ results: BulkUpdateProductsResponseBulkProductResultNonNullableFields[];
490
+ bulkActionMetadata?: BulkActionMetadataNonNullableFields;
491
+ }
492
+ interface BulkDeleteProductsResponseBulkProductResultNonNullableFields {
493
+ itemMetadata?: ItemMetadataNonNullableFields;
237
494
  }
238
495
  interface BulkDeleteProductsResponseNonNullableFields {
239
- results: {
240
- itemMetadata?: {
241
- originalIndex: number;
242
- success: boolean;
243
- error?: {
244
- code: string;
245
- description: string;
246
- };
247
- };
248
- }[];
249
- bulkActionMetadata?: {
250
- totalSuccesses: number;
251
- totalFailures: number;
252
- undetailedFailures: number;
253
- };
496
+ results: BulkDeleteProductsResponseBulkProductResultNonNullableFields[];
497
+ bulkActionMetadata?: BulkActionMetadataNonNullableFields;
254
498
  }
255
499
  interface Product {
256
500
  _id: string;
@@ -359,6 +603,8 @@ interface BulkUpdateProductsOptions {
359
603
  type RESTFunctionDescriptor<T extends (...args: any[]) => any = (...args: any[]) => any> = (httpClient: HttpClient) => T;
360
604
  interface HttpClient {
361
605
  request<TResponse, TData = any>(req: RequestOptionsFactory<TResponse, TData>): Promise<HttpResponse<TResponse>>;
606
+ fetchWithAuth: typeof fetch;
607
+ wixAPIFetch: (relativeUrl: string, options: RequestInit) => Promise<Response>;
362
608
  }
363
609
  type RequestOptionsFactory<TResponse = any, TData = any> = (context: any) => RequestOptions<TResponse, TData>;
364
610
  type HttpResponse<T = any> = {
@@ -381,144 +627,105 @@ type APIMetadata = {
381
627
  };
382
628
  type BuildRESTFunction<T extends RESTFunctionDescriptor> = T extends RESTFunctionDescriptor<infer U> ? U : never;
383
629
 
384
- /**
385
- * Creates a booking.
386
- *
387
- *
388
- * To create a booking for an appointment or a session of a class, pass a booking with the relevant `slot`.
389
- *
390
- * To create a booking for the entire course, pass a booking with the relevant `schedule`.
391
- * You can use Query Availability to check the availability beforehand.
392
- *
393
- * If you create a booking for an existing session, we recommend that you only pass `slot.sessionId`.
394
- * Then, any specified slot details are calculated.
395
- *
396
- * If you create a booking for a new session, we recommend to call Query Availability first.
397
- * Then, pass the retrieved `availability.slot` object as the BookedEntity.Slot of the booking in the request.
398
- *
399
- * Bookings are created with a status of `CREATED`.
400
- * `CREATED` bookings don't appear on the business calendar and don't affect a related schedule's availability.
401
- *
402
- * To create a booking with a given status, pass a booking with the wanted status.
403
- * This is only permitted for site Owners.
404
- *
405
- * You can pass a `participantNotification.message` to notify the customer of the booking with a message.
406
- * It's also necessary to pass `participantNotification.notifyParticipants`as `true` to send the message.
407
- *
408
- * You can pass `sendSmsReminder` as `true`, if you want an SMS reminder to be sent to the phone number specified in the ContactDetails, 24 hours before the session starts.
409
- *
410
- * When creating a booking you must pass either `participantsChoices` or `totalParticipants`. If you pass `participantsChoices`, all the
411
- * provided choices must exist for the service, otherwise the call returns an `INVALID_SERVICE_CHOICES` error.
412
- *
413
- * When creating a booking, you can pass `selectedPaymentOption`.
414
- * This specifies which payment method the customer plans to use.
415
- * But it's possible for them to later use another supported payment method.
416
- *
417
- * You can skip the checkout and payment flow if you call Confirm Or Decline Booking otherwise, after you create the booking, you can use the
418
- * Wix eCommerce APIs (coming soon) for the checkout and payment flow or use a different service for checkout.
419
- * @param booking - The booking to create.
420
- * @public
421
- * @documentationMaturity preview
422
- * @requiredField booking
423
- * @requiredField booking.additionalFields._id
424
- * @requiredField booking.bookedEntity
425
- * @permissionScope Manage Bookings
426
- * @permissionScopeId SCOPE.DC-BOOKINGS.MANAGE-BOOKINGS
427
- * @permissionScope Manage Bookings - all permissions
428
- * @permissionScopeId SCOPE.DC-BOOKINGS-MEGA.MANAGE-BOOKINGS
429
- * @applicableIdentity APP
430
- * @applicableIdentity MEMBER
431
- * @applicableIdentity VISITOR
432
- */
433
- declare function createProduct$1(httpClient: HttpClient): (options?: CreateProductOptions) => Promise<Product & {
434
- _id: string;
435
- collectionId: string;
436
- image: string;
437
- document: string;
438
- video: string;
439
- pageLink?: {
440
- pageId: string;
441
- rel: LinkRel[];
442
- } | undefined;
443
- audio: string;
444
- variants: {
445
- name: string;
446
- value: string;
447
- image: string;
448
- }[];
449
- mainVariant?: {
450
- name: string;
451
- value: string;
452
- image: string;
453
- } | undefined;
454
- guid: string;
455
- }>;
456
- declare function deleteProduct$1(httpClient: HttpClient): (productId: string) => Promise<void>;
457
- declare function updateProduct$1(httpClient: HttpClient): (productId: string, options?: UpdateProductOptions) => Promise<Product & {
458
- _id: string;
459
- collectionId: string;
460
- image: string;
461
- document: string;
462
- video: string;
463
- pageLink?: {
464
- pageId: string;
465
- rel: LinkRel[];
466
- } | undefined;
467
- audio: string;
468
- variants: {
469
- name: string;
470
- value: string;
471
- image: string;
472
- }[];
473
- mainVariant?: {
474
- name: string;
475
- value: string;
476
- image: string;
477
- } | undefined;
478
- guid: string;
479
- }>;
480
- declare function getProduct$1(httpClient: HttpClient): (productId: string) => Promise<Product & {
481
- _id: string;
482
- collectionId: string;
483
- image: string;
484
- document: string;
485
- video: string;
486
- pageLink?: {
487
- pageId: string;
488
- rel: LinkRel[];
489
- } | undefined;
490
- audio: string;
491
- variants: {
492
- name: string;
493
- value: string;
494
- image: string;
495
- }[];
496
- mainVariant?: {
497
- name: string;
498
- value: string;
499
- image: string;
500
- } | undefined;
501
- guid: string;
502
- }>;
503
- declare function getProductsStartWith$1(httpClient: HttpClient): (title: string, options?: GetProductsStartWithOptions) => Promise<GetProductsStartWithResponse & GetProductsStartWithResponseNonNullableFields>;
504
- declare function queryProducts$1(httpClient: HttpClient): (options?: QueryProductsOptions) => ProductsQueryBuilder;
505
- declare function bulkCreateProducts$1(httpClient: HttpClient): (products: Product[], options?: BulkCreateProductsOptions) => Promise<BulkCreateProductsResponse & BulkCreateProductsResponseNonNullableFields>;
506
- declare function bulkUpdateProducts$1(httpClient: HttpClient): (products: MaskedProduct[], options?: BulkUpdateProductsOptions) => Promise<BulkUpdateProductsResponse & BulkUpdateProductsResponseNonNullableFields>;
507
- declare function bulkDeleteProducts$1(httpClient: HttpClient): (productIds: string[]) => Promise<BulkDeleteProductsResponse & BulkDeleteProductsResponseNonNullableFields>;
630
+ declare global {
631
+ // eslint-disable-next-line @typescript-eslint/consistent-type-definitions -- It has to be an `interface` so that it can be merged.
632
+ interface SymbolConstructor {
633
+ readonly observable: symbol;
634
+ }
635
+ }
508
636
 
509
- /**
510
- * something else
511
- */
512
- declare const createProduct: BuildRESTFunction<typeof createProduct$1>;
513
- declare const deleteProduct: BuildRESTFunction<typeof deleteProduct$1>;
514
- declare const updateProduct: BuildRESTFunction<typeof updateProduct$1>;
515
- declare const getProduct: BuildRESTFunction<typeof getProduct$1>;
516
- declare const getProductsStartWith: BuildRESTFunction<typeof getProductsStartWith$1>;
517
- declare const queryProducts: BuildRESTFunction<typeof queryProducts$1>;
518
- declare const bulkCreateProducts: BuildRESTFunction<typeof bulkCreateProducts$1>;
519
- declare const bulkUpdateProducts: BuildRESTFunction<typeof bulkUpdateProducts$1>;
520
- declare const bulkDeleteProducts: BuildRESTFunction<typeof bulkDeleteProducts$1>;
637
+ declare function createRESTModule<T extends RESTFunctionDescriptor>(descriptor: T, elevated?: boolean): BuildRESTFunction<T> & T;
638
+
639
+ declare const createProduct: ReturnType<typeof createRESTModule<typeof publicCreateProduct>>;
640
+ declare const deleteProduct: ReturnType<typeof createRESTModule<typeof publicDeleteProduct>>;
641
+ declare const updateProduct: ReturnType<typeof createRESTModule<typeof publicUpdateProduct>>;
642
+ declare const getProduct: ReturnType<typeof createRESTModule<typeof publicGetProduct>>;
643
+ declare const getProductsStartWith: ReturnType<typeof createRESTModule<typeof publicGetProductsStartWith>>;
644
+ declare const queryProducts: ReturnType<typeof createRESTModule<typeof publicQueryProducts>>;
645
+ declare const bulkCreateProducts: ReturnType<typeof createRESTModule<typeof publicBulkCreateProducts>>;
646
+ declare const bulkUpdateProducts: ReturnType<typeof createRESTModule<typeof publicBulkUpdateProducts>>;
647
+ declare const bulkDeleteProducts: ReturnType<typeof createRESTModule<typeof publicBulkDeleteProducts>>;
521
648
 
649
+ type context_ActionEvent = ActionEvent;
650
+ type context_Address = Address;
651
+ type context_AddressLocation = AddressLocation;
652
+ type context_AddressStreetOneOf = AddressStreetOneOf;
653
+ type context_ApplicationError = ApplicationError;
654
+ type context_BulkActionMetadata = BulkActionMetadata;
655
+ type context_BulkCreateProductsOptions = BulkCreateProductsOptions;
656
+ type context_BulkCreateProductsRequest = BulkCreateProductsRequest;
657
+ type context_BulkCreateProductsResponse = BulkCreateProductsResponse;
658
+ type context_BulkCreateProductsResponseNonNullableFields = BulkCreateProductsResponseNonNullableFields;
659
+ type context_BulkDeleteProductsRequest = BulkDeleteProductsRequest;
660
+ type context_BulkDeleteProductsResponse = BulkDeleteProductsResponse;
661
+ type context_BulkDeleteProductsResponseBulkProductResult = BulkDeleteProductsResponseBulkProductResult;
662
+ type context_BulkDeleteProductsResponseNonNullableFields = BulkDeleteProductsResponseNonNullableFields;
663
+ type context_BulkProductResult = BulkProductResult;
664
+ type context_BulkUpdateProductsOptions = BulkUpdateProductsOptions;
665
+ type context_BulkUpdateProductsRequest = BulkUpdateProductsRequest;
666
+ type context_BulkUpdateProductsResponse = BulkUpdateProductsResponse;
667
+ type context_BulkUpdateProductsResponseBulkProductResult = BulkUpdateProductsResponseBulkProductResult;
668
+ type context_BulkUpdateProductsResponseNonNullableFields = BulkUpdateProductsResponseNonNullableFields;
669
+ type context_CreateProductOptions = CreateProductOptions;
670
+ type context_CreateProductRequest = CreateProductRequest;
671
+ type context_CreateProductResponse = CreateProductResponse;
672
+ type context_CreateProductResponseNonNullableFields = CreateProductResponseNonNullableFields;
673
+ type context_CursorPaging = CursorPaging;
674
+ type context_Cursors = Cursors;
675
+ type context_DeleteProductRequest = DeleteProductRequest;
676
+ type context_DeleteProductResponse = DeleteProductResponse;
677
+ type context_DomainEvent = DomainEvent;
678
+ type context_DomainEventBodyOneOf = DomainEventBodyOneOf;
679
+ type context_EntityCreatedEvent = EntityCreatedEvent;
680
+ type context_EntityDeletedEvent = EntityDeletedEvent;
681
+ type context_EntityUpdatedEvent = EntityUpdatedEvent;
682
+ type context_GetProductRequest = GetProductRequest;
683
+ type context_GetProductResponse = GetProductResponse;
684
+ type context_GetProductResponseNonNullableFields = GetProductResponseNonNullableFields;
685
+ type context_GetProductsStartWithOptions = GetProductsStartWithOptions;
686
+ type context_GetProductsStartWithRequest = GetProductsStartWithRequest;
687
+ type context_GetProductsStartWithResponse = GetProductsStartWithResponse;
688
+ type context_GetProductsStartWithResponseNonNullableFields = GetProductsStartWithResponseNonNullableFields;
689
+ type context_IdentificationData = IdentificationData;
690
+ type context_IdentificationDataIdOneOf = IdentificationDataIdOneOf;
691
+ type context_ItemMetadata = ItemMetadata;
692
+ type context_LinkRel = LinkRel;
693
+ declare const context_LinkRel: typeof LinkRel;
694
+ type context_MaskedProduct = MaskedProduct;
695
+ type context_MessageEnvelope = MessageEnvelope;
696
+ type context_MyAddress = MyAddress;
697
+ type context_PageLink = PageLink;
698
+ type context_Paging = Paging;
699
+ type context_PagingMetadataV2 = PagingMetadataV2;
700
+ type context_Product = Product;
701
+ type context_ProductNonNullableFields = ProductNonNullableFields;
702
+ type context_ProductsQueryBuilder = ProductsQueryBuilder;
703
+ type context_ProductsQueryResult = ProductsQueryResult;
704
+ type context_QueryProductsOptions = QueryProductsOptions;
705
+ type context_QueryProductsRequest = QueryProductsRequest;
706
+ type context_QueryProductsResponse = QueryProductsResponse;
707
+ type context_QueryProductsResponseNonNullableFields = QueryProductsResponseNonNullableFields;
708
+ type context_QueryV2 = QueryV2;
709
+ type context_QueryV2PagingMethodOneOf = QueryV2PagingMethodOneOf;
710
+ type context_ResetProductsDbRequest = ResetProductsDbRequest;
711
+ type context_ResetProductsDbResponse = ResetProductsDbResponse;
712
+ type context_RestoreInfo = RestoreInfo;
713
+ type context_SortOrder = SortOrder;
714
+ declare const context_SortOrder: typeof SortOrder;
715
+ type context_Sorting = Sorting;
716
+ type context_StandardDetails = StandardDetails;
717
+ type context_StreetAddress = StreetAddress;
718
+ type context_Subdivision = Subdivision;
719
+ type context_SubdivisionType = SubdivisionType;
720
+ declare const context_SubdivisionType: typeof SubdivisionType;
721
+ type context_UpdateProductOptions = UpdateProductOptions;
722
+ type context_UpdateProductRequest = UpdateProductRequest;
723
+ type context_UpdateProductResponse = UpdateProductResponse;
724
+ type context_UpdateProductResponseNonNullableFields = UpdateProductResponseNonNullableFields;
725
+ type context_Variant = Variant;
726
+ type context_VideoResolution = VideoResolution;
727
+ type context_WebhookIdentityType = WebhookIdentityType;
728
+ declare const context_WebhookIdentityType: typeof WebhookIdentityType;
522
729
  declare const context_bulkCreateProducts: typeof bulkCreateProducts;
523
730
  declare const context_bulkDeleteProducts: typeof bulkDeleteProducts;
524
731
  declare const context_bulkUpdateProducts: typeof bulkUpdateProducts;
@@ -529,7 +736,7 @@ declare const context_getProductsStartWith: typeof getProductsStartWith;
529
736
  declare const context_queryProducts: typeof queryProducts;
530
737
  declare const context_updateProduct: typeof updateProduct;
531
738
  declare namespace context {
532
- export { context_bulkCreateProducts as bulkCreateProducts, context_bulkDeleteProducts as bulkDeleteProducts, context_bulkUpdateProducts as bulkUpdateProducts, context_createProduct as createProduct, context_deleteProduct as deleteProduct, context_getProduct as getProduct, context_getProductsStartWith as getProductsStartWith, context_queryProducts as queryProducts, context_updateProduct as updateProduct };
739
+ export { type context_ActionEvent as ActionEvent, type context_Address as Address, type context_AddressLocation as AddressLocation, type context_AddressStreetOneOf as AddressStreetOneOf, type context_ApplicationError as ApplicationError, type context_BulkActionMetadata as BulkActionMetadata, type context_BulkCreateProductsOptions as BulkCreateProductsOptions, type context_BulkCreateProductsRequest as BulkCreateProductsRequest, type context_BulkCreateProductsResponse as BulkCreateProductsResponse, type context_BulkCreateProductsResponseNonNullableFields as BulkCreateProductsResponseNonNullableFields, type context_BulkDeleteProductsRequest as BulkDeleteProductsRequest, type context_BulkDeleteProductsResponse as BulkDeleteProductsResponse, type context_BulkDeleteProductsResponseBulkProductResult as BulkDeleteProductsResponseBulkProductResult, type context_BulkDeleteProductsResponseNonNullableFields as BulkDeleteProductsResponseNonNullableFields, type context_BulkProductResult as BulkProductResult, type context_BulkUpdateProductsOptions as BulkUpdateProductsOptions, type context_BulkUpdateProductsRequest as BulkUpdateProductsRequest, type context_BulkUpdateProductsResponse as BulkUpdateProductsResponse, type context_BulkUpdateProductsResponseBulkProductResult as BulkUpdateProductsResponseBulkProductResult, type context_BulkUpdateProductsResponseNonNullableFields as BulkUpdateProductsResponseNonNullableFields, type context_CreateProductOptions as CreateProductOptions, type context_CreateProductRequest as CreateProductRequest, type context_CreateProductResponse as CreateProductResponse, type context_CreateProductResponseNonNullableFields as CreateProductResponseNonNullableFields, type context_CursorPaging as CursorPaging, type context_Cursors as Cursors, type context_DeleteProductRequest as DeleteProductRequest, type context_DeleteProductResponse as DeleteProductResponse, type context_DomainEvent as DomainEvent, type context_DomainEventBodyOneOf as DomainEventBodyOneOf, type context_EntityCreatedEvent as EntityCreatedEvent, type context_EntityDeletedEvent as EntityDeletedEvent, type context_EntityUpdatedEvent as EntityUpdatedEvent, type context_GetProductRequest as GetProductRequest, type context_GetProductResponse as GetProductResponse, type context_GetProductResponseNonNullableFields as GetProductResponseNonNullableFields, type context_GetProductsStartWithOptions as GetProductsStartWithOptions, type context_GetProductsStartWithRequest as GetProductsStartWithRequest, type context_GetProductsStartWithResponse as GetProductsStartWithResponse, type context_GetProductsStartWithResponseNonNullableFields as GetProductsStartWithResponseNonNullableFields, type context_IdentificationData as IdentificationData, type context_IdentificationDataIdOneOf as IdentificationDataIdOneOf, type context_ItemMetadata as ItemMetadata, context_LinkRel as LinkRel, type context_MaskedProduct as MaskedProduct, type context_MessageEnvelope as MessageEnvelope, type context_MyAddress as MyAddress, type context_PageLink as PageLink, type context_Paging as Paging, type context_PagingMetadataV2 as PagingMetadataV2, type context_Product as Product, type context_ProductNonNullableFields as ProductNonNullableFields, type context_ProductsQueryBuilder as ProductsQueryBuilder, type context_ProductsQueryResult as ProductsQueryResult, type context_QueryProductsOptions as QueryProductsOptions, type context_QueryProductsRequest as QueryProductsRequest, type context_QueryProductsResponse as QueryProductsResponse, type context_QueryProductsResponseNonNullableFields as QueryProductsResponseNonNullableFields, type context_QueryV2 as QueryV2, type context_QueryV2PagingMethodOneOf as QueryV2PagingMethodOneOf, type context_ResetProductsDbRequest as ResetProductsDbRequest, type context_ResetProductsDbResponse as ResetProductsDbResponse, type context_RestoreInfo as RestoreInfo, context_SortOrder as SortOrder, type context_Sorting as Sorting, type context_StandardDetails as StandardDetails, type context_StreetAddress as StreetAddress, type context_Subdivision as Subdivision, context_SubdivisionType as SubdivisionType, type context_UpdateProductOptions as UpdateProductOptions, type context_UpdateProductRequest as UpdateProductRequest, type context_UpdateProductResponse as UpdateProductResponse, type context_UpdateProductResponseNonNullableFields as UpdateProductResponseNonNullableFields, type context_Variant as Variant, type context_VideoResolution as VideoResolution, context_WebhookIdentityType as WebhookIdentityType, context_bulkCreateProducts as bulkCreateProducts, context_bulkDeleteProducts as bulkDeleteProducts, context_bulkUpdateProducts as bulkUpdateProducts, context_createProduct as createProduct, context_deleteProduct as deleteProduct, context_getProduct as getProduct, context_getProductsStartWith as getProductsStartWith, context_queryProducts as queryProducts, context_updateProduct as updateProduct };
533
740
  }
534
741
 
535
742
  export { context as products };