@wix/categories 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/build/cjs/index.d.ts +1 -0
  2. package/build/cjs/index.js +24 -0
  3. package/build/cjs/index.js.map +1 -0
  4. package/build/cjs/src/categories-v1-category.http.d.ts +54 -0
  5. package/build/cjs/src/categories-v1-category.http.js +790 -0
  6. package/build/cjs/src/categories-v1-category.http.js.map +1 -0
  7. package/build/cjs/src/categories-v1-category.public.d.ts +24 -0
  8. package/build/cjs/src/categories-v1-category.public.js +141 -0
  9. package/build/cjs/src/categories-v1-category.public.js.map +1 -0
  10. package/build/cjs/src/categories-v1-category.types.d.ts +1969 -0
  11. package/build/cjs/src/categories-v1-category.types.js +316 -0
  12. package/build/cjs/src/categories-v1-category.types.js.map +1 -0
  13. package/build/cjs/src/categories-v1-category.universal.d.ts +2429 -0
  14. package/build/cjs/src/categories-v1-category.universal.js +1457 -0
  15. package/build/cjs/src/categories-v1-category.universal.js.map +1 -0
  16. package/build/es/index.d.ts +1 -0
  17. package/build/es/index.js +2 -0
  18. package/build/es/index.js.map +1 -0
  19. package/build/es/src/categories-v1-category.http.d.ts +54 -0
  20. package/build/es/src/categories-v1-category.http.js +770 -0
  21. package/build/es/src/categories-v1-category.http.js.map +1 -0
  22. package/build/es/src/categories-v1-category.public.d.ts +24 -0
  23. package/build/es/src/categories-v1-category.public.js +89 -0
  24. package/build/es/src/categories-v1-category.public.js.map +1 -0
  25. package/build/es/src/categories-v1-category.types.d.ts +1969 -0
  26. package/build/es/src/categories-v1-category.types.js +313 -0
  27. package/build/es/src/categories-v1-category.types.js.map +1 -0
  28. package/build/es/src/categories-v1-category.universal.d.ts +2429 -0
  29. package/build/es/src/categories-v1-category.universal.js +1418 -0
  30. package/build/es/src/categories-v1-category.universal.js.map +1 -0
  31. package/package.json +37 -0
@@ -0,0 +1,2429 @@
1
+ export declare const __debug: {
2
+ verboseLogging: {
3
+ on: () => boolean;
4
+ off: () => boolean;
5
+ };
6
+ };
7
+ export interface Category {
8
+ /** Category ID. */
9
+ _id?: string | null;
10
+ /**
11
+ * Represents the current state of an item. Each time the item is modified, its `revision` changes. for an update operation to succeed, you MUST pass the latest revision
12
+ * @readonly
13
+ */
14
+ revision?: string | null;
15
+ /**
16
+ * Represents the time this Category was created.
17
+ * @readonly
18
+ */
19
+ _createdDate?: Date;
20
+ /**
21
+ * Represents the time this Category was last updated.
22
+ * @readonly
23
+ */
24
+ _updatedDate?: Date;
25
+ /** Category name. */
26
+ name?: string | null;
27
+ /**
28
+ * Category image.
29
+ * Pass existing media ID for image previously saved in Wix media manager.
30
+ * Pass full image URL to upload an image to Wix media manager.
31
+ * In case of full url the image will be updated eventually.
32
+ */
33
+ image?: string;
34
+ /**
35
+ * Number of items in this category alone.
36
+ * @readonly
37
+ */
38
+ numberOfItems?: number;
39
+ /** Category description. */
40
+ description?: string | null;
41
+ /**
42
+ * Whether the category is visible to site visitors in dynamic pages (If not passed, the default is `false`).
43
+ * Even if visible is `false`, it can still be added manually to static page.
44
+ * If parent visibility is updated to `false`, all the children visibility will be updated eventually to `false`.
45
+ * It is not allowed to set visible as `true` if at least one of the parent categories has visible `false`.
46
+ */
47
+ visible?: boolean | null;
48
+ /**
49
+ * A category's breadcrumbs, Updated on moved to different parent or on renamed.
50
+ * This field will only be returned if request.fields contains `BREADCRUMBS`
51
+ * @readonly
52
+ */
53
+ breadcrumbs?: BreadcrumbItemValues;
54
+ /** The parent category. */
55
+ parentCategory?: ParentCategory;
56
+ /**
57
+ * A permanent, friendly URL name.
58
+ * If not provided, on create generated automatically.
59
+ * When provided, validated and must be unique.
60
+ */
61
+ slug?: string | null;
62
+ /**
63
+ * Category description which supports rich content. It is independent from `description` field and can be used instead of it or in addition to it.
64
+ * In order to use this field you have to integrate with "Ricos" on frontend side. To learn how to do it visit https://ricos.js.org/.
65
+ */
66
+ richContentDescription?: RichContent;
67
+ /**
68
+ * Optional - the ID of the app responsible for managing the items within this category.
69
+ * If provided, the update of items assigned to this category and the deletion of it will be allowed only to the managing app.
70
+ * The default is Empty.
71
+ */
72
+ managedByAppId?: string | null;
73
+ /** Extensions enabling users to save custom data related to the category. */
74
+ extendedFields?: ExtendedFields;
75
+ }
76
+ /** Wrapper for optional BreadcrumbItem values */
77
+ export interface BreadcrumbItemValues {
78
+ /**
79
+ * The wrapped BreadcrumbItem values
80
+ * @readonly
81
+ */
82
+ values?: BreadcrumbItem[];
83
+ }
84
+ export interface BreadcrumbItem {
85
+ /** Represents the id of the category. */
86
+ categoryId?: string;
87
+ /** Represents the name of the category. Translatable */
88
+ categoryName?: string;
89
+ /** Represents the slug. A permanent, friendly URL name of the category. */
90
+ categorySlug?: string;
91
+ }
92
+ export interface ParentCategory {
93
+ /**
94
+ * Represents the id of the parent category.
95
+ * If not passed, the default is the root category.
96
+ */
97
+ _id?: string | null;
98
+ /**
99
+ * Represents the index of current category within the parent category.
100
+ * @readonly
101
+ */
102
+ index?: number | null;
103
+ }
104
+ /**
105
+ * The SEO schema object contains data about different types of meta tags. It makes sure that the information about your page is presented properly to search engines.
106
+ * The search engines use this information for ranking purposes, or to display snippets in the search results.
107
+ * This data will override other sources of tags (for example patterns) and will be included in the <head> section of the HTML document, while not being displayed on the page itself.
108
+ */
109
+ export interface SeoSchema {
110
+ /** SEO tag information. */
111
+ tags?: Tag[];
112
+ /** SEO general settings. */
113
+ settings?: Settings;
114
+ }
115
+ export interface Keyword {
116
+ /** Keyword value. */
117
+ term?: string;
118
+ /** Whether the keyword is the main focus keyword. */
119
+ isMain?: boolean;
120
+ }
121
+ export interface Tag {
122
+ /**
123
+ * SEO tag type.
124
+ *
125
+ *
126
+ * Supported values: `title`, `meta`, `script`, `link`.
127
+ */
128
+ type?: string;
129
+ /**
130
+ * A `{'key':'value'}` pair object where each SEO tag property (`'name'`, `'content'`, `'rel'`, `'href'`) contains a value.
131
+ * For example: `{'name': 'description', 'content': 'the description itself'}`.
132
+ */
133
+ props?: Record<string, any> | null;
134
+ /** SEO tag meta data. For example, `{height: 300, width: 240}`. */
135
+ meta?: Record<string, any> | null;
136
+ /** SEO tag inner content. For example, `<title> inner content </title>`. */
137
+ children?: string;
138
+ /** Whether the tag is a custom tag. */
139
+ custom?: boolean;
140
+ /** Whether the tag is disabled. */
141
+ disabled?: boolean;
142
+ }
143
+ export interface Settings {
144
+ /**
145
+ * Whether the Auto Redirect feature, which creates `301 redirects` on a slug change, is enabled.
146
+ *
147
+ *
148
+ * Default: `false` (Auto Redirect is enabled.)
149
+ */
150
+ preventAutoRedirect?: boolean;
151
+ /** User-selected keyword terms for a specific page. */
152
+ keywords?: Keyword[];
153
+ }
154
+ export interface RichContent {
155
+ /** Node objects representing a rich content document. */
156
+ nodes?: Node[];
157
+ /** Object metadata. */
158
+ metadata?: Metadata;
159
+ /** Global styling for header, paragraph, block quote, and code block nodes in the object. */
160
+ documentStyle?: DocumentStyle;
161
+ }
162
+ export interface Node extends NodeDataOneOf {
163
+ /** Data for a button node. */
164
+ buttonData?: ButtonData;
165
+ /** Data for a code block node. */
166
+ codeBlockData?: CodeBlockData;
167
+ /** Data for a divider node. */
168
+ dividerData?: DividerData;
169
+ /** Data for a file node. */
170
+ fileData?: FileData;
171
+ /** Data for a gallery node. */
172
+ galleryData?: GalleryData;
173
+ /** Data for a GIF node. */
174
+ gifData?: GIFData;
175
+ /** Data for a heading node. */
176
+ headingData?: HeadingData;
177
+ /** Data for an embedded HTML node. */
178
+ htmlData?: HTMLData;
179
+ /** Data for an image node. */
180
+ imageData?: ImageData;
181
+ /** Data for a link preview node. */
182
+ linkPreviewData?: LinkPreviewData;
183
+ /** Data for a map node. */
184
+ mapData?: MapData;
185
+ /** Data for a paragraph node. */
186
+ paragraphData?: ParagraphData;
187
+ /** Data for a poll node. */
188
+ pollData?: PollData;
189
+ /** Data for a text node. Used to apply decorations to text. */
190
+ textData?: TextData;
191
+ /** Data for an app embed node. */
192
+ appEmbedData?: AppEmbedData;
193
+ /** Data for a video node. */
194
+ videoData?: VideoData;
195
+ /** Data for an oEmbed node. */
196
+ embedData?: EmbedData;
197
+ /** Data for a collapsible list node. */
198
+ collapsibleListData?: CollapsibleListData;
199
+ /** Data for a table node. */
200
+ tableData?: TableData;
201
+ /** Data for a table cell node. */
202
+ tableCellData?: TableCellData;
203
+ /** Data for a custon external node. */
204
+ externalData?: Record<string, any> | null;
205
+ /** Data for an audio node. */
206
+ audioData?: AudioData;
207
+ /** Data for an ordered list node. */
208
+ orderedListData?: OrderedListData;
209
+ /** Data for a bulleted list node. */
210
+ bulletedListData?: BulletedListData;
211
+ /** Data for a block quote node. */
212
+ blockquoteData?: BlockquoteData;
213
+ /** Node type. Use `APP_EMBED` for nodes that embed content from other Wix apps. Use `EMBED` to embed content in [oEmbed](https://oembed.com/) format. */
214
+ type?: NodeType;
215
+ /** Node ID. */
216
+ _id?: string;
217
+ /** A list of child nodes. */
218
+ nodes?: Node[];
219
+ /** Padding and background color styling for the node. */
220
+ style?: NodeStyle;
221
+ }
222
+ /** @oneof */
223
+ export interface NodeDataOneOf {
224
+ /** Data for a button node. */
225
+ buttonData?: ButtonData;
226
+ /** Data for a code block node. */
227
+ codeBlockData?: CodeBlockData;
228
+ /** Data for a divider node. */
229
+ dividerData?: DividerData;
230
+ /** Data for a file node. */
231
+ fileData?: FileData;
232
+ /** Data for a gallery node. */
233
+ galleryData?: GalleryData;
234
+ /** Data for a GIF node. */
235
+ gifData?: GIFData;
236
+ /** Data for a heading node. */
237
+ headingData?: HeadingData;
238
+ /** Data for an embedded HTML node. */
239
+ htmlData?: HTMLData;
240
+ /** Data for an image node. */
241
+ imageData?: ImageData;
242
+ /** Data for a link preview node. */
243
+ linkPreviewData?: LinkPreviewData;
244
+ /** Data for a map node. */
245
+ mapData?: MapData;
246
+ /** Data for a paragraph node. */
247
+ paragraphData?: ParagraphData;
248
+ /** Data for a poll node. */
249
+ pollData?: PollData;
250
+ /** Data for a text node. Used to apply decorations to text. */
251
+ textData?: TextData;
252
+ /** Data for an app embed node. */
253
+ appEmbedData?: AppEmbedData;
254
+ /** Data for a video node. */
255
+ videoData?: VideoData;
256
+ /** Data for an oEmbed node. */
257
+ embedData?: EmbedData;
258
+ /** Data for a collapsible list node. */
259
+ collapsibleListData?: CollapsibleListData;
260
+ /** Data for a table node. */
261
+ tableData?: TableData;
262
+ /** Data for a table cell node. */
263
+ tableCellData?: TableCellData;
264
+ /** Data for a custon external node. */
265
+ externalData?: Record<string, any> | null;
266
+ /** Data for an audio node. */
267
+ audioData?: AudioData;
268
+ /** Data for an ordered list node. */
269
+ orderedListData?: OrderedListData;
270
+ /** Data for a bulleted list node. */
271
+ bulletedListData?: BulletedListData;
272
+ /** Data for a block quote node. */
273
+ blockquoteData?: BlockquoteData;
274
+ }
275
+ export declare enum NodeType {
276
+ PARAGRAPH = "PARAGRAPH",
277
+ TEXT = "TEXT",
278
+ HEADING = "HEADING",
279
+ BULLETED_LIST = "BULLETED_LIST",
280
+ ORDERED_LIST = "ORDERED_LIST",
281
+ LIST_ITEM = "LIST_ITEM",
282
+ BLOCKQUOTE = "BLOCKQUOTE",
283
+ CODE_BLOCK = "CODE_BLOCK",
284
+ VIDEO = "VIDEO",
285
+ DIVIDER = "DIVIDER",
286
+ FILE = "FILE",
287
+ GALLERY = "GALLERY",
288
+ GIF = "GIF",
289
+ HTML = "HTML",
290
+ IMAGE = "IMAGE",
291
+ LINK_PREVIEW = "LINK_PREVIEW",
292
+ MAP = "MAP",
293
+ POLL = "POLL",
294
+ APP_EMBED = "APP_EMBED",
295
+ BUTTON = "BUTTON",
296
+ COLLAPSIBLE_LIST = "COLLAPSIBLE_LIST",
297
+ TABLE = "TABLE",
298
+ EMBED = "EMBED",
299
+ COLLAPSIBLE_ITEM = "COLLAPSIBLE_ITEM",
300
+ COLLAPSIBLE_ITEM_TITLE = "COLLAPSIBLE_ITEM_TITLE",
301
+ COLLAPSIBLE_ITEM_BODY = "COLLAPSIBLE_ITEM_BODY",
302
+ TABLE_CELL = "TABLE_CELL",
303
+ TABLE_ROW = "TABLE_ROW",
304
+ EXTERNAL = "EXTERNAL",
305
+ AUDIO = "AUDIO"
306
+ }
307
+ export interface NodeStyle {
308
+ /** The top padding value in pixels. */
309
+ paddingTop?: string | null;
310
+ /** The bottom padding value in pixels. */
311
+ paddingBottom?: string | null;
312
+ /** The background color as a hexadecimal value. */
313
+ backgroundColor?: string | null;
314
+ }
315
+ export interface ButtonData {
316
+ /** Styling for the button's container. */
317
+ containerData?: PluginContainerData;
318
+ /** The button type. */
319
+ type?: Type;
320
+ /** Styling for the button. */
321
+ styles?: Styles;
322
+ /** The text to display on the button. */
323
+ text?: string | null;
324
+ /** Button link details. */
325
+ link?: Link;
326
+ }
327
+ export interface Border {
328
+ /** Border width in pixels. */
329
+ width?: number | null;
330
+ /** Border radius in pixels. */
331
+ radius?: number | null;
332
+ }
333
+ export interface Colors {
334
+ /** The text color as a hexadecimal value. */
335
+ text?: string | null;
336
+ /** The border color as a hexadecimal value. */
337
+ border?: string | null;
338
+ /** The background color as a hexadecimal value. */
339
+ background?: string | null;
340
+ }
341
+ export interface PluginContainerData {
342
+ /** The width of the node when it's displayed. */
343
+ width?: PluginContainerDataWidth;
344
+ /** The node's alignment within its container. */
345
+ alignment?: PluginContainerDataAlignment;
346
+ /** Spoiler cover settings for the node. */
347
+ spoiler?: Spoiler;
348
+ /** The height of the node when it's displayed. */
349
+ height?: Height;
350
+ /** Sets whether text should wrap around this node when it's displayed. If `textWrap` is `false`, the node takes up the width of its container. */
351
+ textWrap?: boolean | null;
352
+ }
353
+ export declare enum WidthType {
354
+ /** Width matches the content width */
355
+ CONTENT = "CONTENT",
356
+ /** Small Width */
357
+ SMALL = "SMALL",
358
+ /** Width will match the original asset width */
359
+ ORIGINAL = "ORIGINAL",
360
+ /** coast-to-coast display */
361
+ FULL_WIDTH = "FULL_WIDTH"
362
+ }
363
+ export interface PluginContainerDataWidth extends PluginContainerDataWidthDataOneOf {
364
+ /**
365
+ * One of the following predefined width options:
366
+ * `CONTENT`: The width of the container matches the content width.
367
+ * `SMALL`: Small width.
368
+ * `ORIGINAL`: The width of the container matches the original asset width.
369
+ * `FULL_WIDTH`: Full width.
370
+ */
371
+ size?: WidthType;
372
+ /** A custom width value in pixels. */
373
+ custom?: string | null;
374
+ }
375
+ /** @oneof */
376
+ export interface PluginContainerDataWidthDataOneOf {
377
+ /**
378
+ * One of the following predefined width options:
379
+ * `CONTENT`: The width of the container matches the content width.
380
+ * `SMALL`: Small width.
381
+ * `ORIGINAL`: The width of the container matches the original asset width.
382
+ * `FULL_WIDTH`: Full width.
383
+ */
384
+ size?: WidthType;
385
+ /** A custom width value in pixels. */
386
+ custom?: string | null;
387
+ }
388
+ export declare enum PluginContainerDataAlignment {
389
+ /** Center Alignment */
390
+ CENTER = "CENTER",
391
+ /** Left Alignment */
392
+ LEFT = "LEFT",
393
+ /** Right Alignment */
394
+ RIGHT = "RIGHT"
395
+ }
396
+ export interface Spoiler {
397
+ /** Sets whether the spoiler cover is enabled for this node. */
398
+ enabled?: boolean | null;
399
+ /** The description displayed on top of the spoiler cover. */
400
+ description?: string | null;
401
+ /** The text for the button used to remove the spoiler cover. */
402
+ buttonText?: string | null;
403
+ }
404
+ export interface Height {
405
+ /** A custom height value in pixels. */
406
+ custom?: string | null;
407
+ }
408
+ export declare enum Type {
409
+ /** Regular link button */
410
+ LINK = "LINK",
411
+ /** Triggers custom action that is defined in plugin configuration by the consumer */
412
+ ACTION = "ACTION"
413
+ }
414
+ export interface Styles {
415
+ /** Border attributes. */
416
+ border?: Border;
417
+ /** Color attributes. */
418
+ colors?: Colors;
419
+ }
420
+ export interface Link extends LinkDataOneOf {
421
+ /** The absolute URL for the linked document. */
422
+ url?: string;
423
+ /** The target node's ID. Used for linking to another node in this object. */
424
+ anchor?: string;
425
+ /**
426
+ * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows:
427
+ * `SELF` - Default. Opens the linked document in the same frame as the link.
428
+ * `BLANK` - Opens the linked document in a new browser tab or window.
429
+ * `PARENT` - Opens the linked document in the link's parent frame.
430
+ * `TOP` - Opens the linked document in the full body of the link's browser tab or window.
431
+ */
432
+ target?: Target;
433
+ /** The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */
434
+ rel?: Rel;
435
+ /** A serialized object used for a custom or external link panel. */
436
+ customData?: string | null;
437
+ }
438
+ /** @oneof */
439
+ export interface LinkDataOneOf {
440
+ /** The absolute URL for the linked document. */
441
+ url?: string;
442
+ /** The target node's ID. Used for linking to another node in this object. */
443
+ anchor?: string;
444
+ }
445
+ export declare enum Target {
446
+ /** Opens the linked document in the same frame as it was clicked (this is default) */
447
+ SELF = "SELF",
448
+ /** Opens the linked document in a new window or tab */
449
+ BLANK = "BLANK",
450
+ /** Opens the linked document in the parent frame */
451
+ PARENT = "PARENT",
452
+ /** Opens the linked document in the full body of the window */
453
+ TOP = "TOP"
454
+ }
455
+ export interface Rel {
456
+ /** Indicates to search engine crawlers not to follow the link. */
457
+ nofollow?: boolean | null;
458
+ /** Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. */
459
+ sponsored?: boolean | null;
460
+ /** Indicates that this link is user-generated content and isn't necessarily trusted or endorsed by the page’s author. For example, a link in a fourm post. */
461
+ ugc?: boolean | null;
462
+ /** Indicates that this link protect referral information from being passed to the target website. */
463
+ noreferrer?: boolean | null;
464
+ }
465
+ export interface CodeBlockData {
466
+ /** Styling for the code block's text. */
467
+ textStyle?: TextStyle;
468
+ }
469
+ export interface TextStyle {
470
+ /** Text alignment. Defaults to `AUTO`. */
471
+ textAlignment?: TextAlignment;
472
+ /** A CSS `line-height` value for the text as a unitless ratio. */
473
+ lineHeight?: string | null;
474
+ }
475
+ export declare enum TextAlignment {
476
+ /** browser default, eqivalent to `initial` */
477
+ AUTO = "AUTO",
478
+ /** Left align */
479
+ LEFT = "LEFT",
480
+ /** Right align */
481
+ RIGHT = "RIGHT",
482
+ /** Center align */
483
+ CENTER = "CENTER",
484
+ /** Text is spaced to line up its left and right edges to the left and right edges of the line box, except for the last line */
485
+ JUSTIFY = "JUSTIFY"
486
+ }
487
+ export interface DividerData {
488
+ /** Styling for the divider's container. */
489
+ containerData?: PluginContainerData;
490
+ /** Divider line style. */
491
+ lineStyle?: LineStyle;
492
+ /** Divider width. */
493
+ width?: Width;
494
+ /** Divider alignment. */
495
+ alignment?: Alignment;
496
+ }
497
+ export declare enum LineStyle {
498
+ /** Single Line */
499
+ SINGLE = "SINGLE",
500
+ /** Double Line */
501
+ DOUBLE = "DOUBLE",
502
+ /** Dashed Line */
503
+ DASHED = "DASHED",
504
+ /** Dotted Line */
505
+ DOTTED = "DOTTED"
506
+ }
507
+ export declare enum Width {
508
+ /** Large line */
509
+ LARGE = "LARGE",
510
+ /** Medium line */
511
+ MEDIUM = "MEDIUM",
512
+ /** Small line */
513
+ SMALL = "SMALL"
514
+ }
515
+ export declare enum Alignment {
516
+ /** Center alignment */
517
+ CENTER = "CENTER",
518
+ /** Left alignment */
519
+ LEFT = "LEFT",
520
+ /** Right alignment */
521
+ RIGHT = "RIGHT"
522
+ }
523
+ export interface FileData {
524
+ /** Styling for the file's container. */
525
+ containerData?: PluginContainerData;
526
+ /** The source for the file's data. */
527
+ src?: FileSource;
528
+ /** File name. */
529
+ name?: string | null;
530
+ /** File type. */
531
+ type?: string | null;
532
+ /** File size in KB. */
533
+ size?: number | null;
534
+ /** Settings for PDF files. */
535
+ pdfSettings?: PDFSettings;
536
+ /** File MIME type. */
537
+ mimeType?: string | null;
538
+ /** File path. */
539
+ path?: string | null;
540
+ }
541
+ export declare enum ViewMode {
542
+ /** No PDF view */
543
+ NONE = "NONE",
544
+ /** Full PDF view */
545
+ FULL = "FULL",
546
+ /** Mini PDF view */
547
+ MINI = "MINI"
548
+ }
549
+ export interface FileSource extends FileSourceDataOneOf {
550
+ /** The absolute URL for the file's source. */
551
+ url?: string | null;
552
+ /** Custom ID. Use `id` instead. */
553
+ custom?: string | null;
554
+ /** An ID that's resolved to a URL by a resolver function. */
555
+ _id?: string | null;
556
+ /** Indicates whether the file's source is private. */
557
+ private?: boolean | null;
558
+ }
559
+ /** @oneof */
560
+ export interface FileSourceDataOneOf {
561
+ /** The absolute URL for the file's source. */
562
+ url?: string | null;
563
+ /** Custom ID. Use `id` instead. */
564
+ custom?: string | null;
565
+ /** An ID that's resolved to a URL by a resolver function. */
566
+ _id?: string | null;
567
+ }
568
+ export interface PDFSettings {
569
+ /**
570
+ * PDF view mode. One of the following:
571
+ * `NONE` : The PDF isn't displayed.
572
+ * `FULL` : A full page view of the PDF is displayed.
573
+ * `MINI` : A mini view of the PDF is displayed.
574
+ */
575
+ viewMode?: ViewMode;
576
+ /** Sets whether the PDF download button is disabled. */
577
+ disableDownload?: boolean | null;
578
+ /** Sets whether the PDF print button is disabled. */
579
+ disablePrint?: boolean | null;
580
+ }
581
+ export interface GalleryData {
582
+ /** Styling for the gallery's container. */
583
+ containerData?: PluginContainerData;
584
+ /** The items in the gallery. */
585
+ items?: Item[];
586
+ /** Options for defining the gallery's appearance. */
587
+ options?: GalleryOptions;
588
+ /** Sets whether the gallery's expand button is disabled. */
589
+ disableExpand?: boolean | null;
590
+ /** Sets whether the gallery's download button is disabled. */
591
+ disableDownload?: boolean | null;
592
+ }
593
+ export interface Media {
594
+ /** The source for the media's data. */
595
+ src?: FileSource;
596
+ /** Media width in pixels. */
597
+ width?: number | null;
598
+ /** Media height in pixels. */
599
+ height?: number | null;
600
+ /** Media duration in seconds. Only relevant for audio and video files. */
601
+ duration?: number | null;
602
+ }
603
+ export interface Image {
604
+ /** Image file details. */
605
+ media?: Media;
606
+ /** Link details for images that are links. */
607
+ link?: Link;
608
+ }
609
+ export interface Video {
610
+ /** Video file details. */
611
+ media?: Media;
612
+ /** Video thumbnail file details. */
613
+ thumbnail?: Media;
614
+ }
615
+ export interface Item extends ItemDataOneOf {
616
+ /** An image item. */
617
+ image?: Image;
618
+ /** A video item. */
619
+ video?: Video;
620
+ /** Item title. */
621
+ title?: string | null;
622
+ /** Item's alternative text. */
623
+ altText?: string | null;
624
+ }
625
+ /** @oneof */
626
+ export interface ItemDataOneOf {
627
+ /** An image item. */
628
+ image?: Image;
629
+ /** A video item. */
630
+ video?: Video;
631
+ }
632
+ export interface GalleryOptions {
633
+ /** Gallery layout. */
634
+ layout?: Layout;
635
+ /** Styling for gallery items. */
636
+ item?: ItemStyle;
637
+ /** Styling for gallery thumbnail images. */
638
+ thumbnails?: Thumbnails;
639
+ }
640
+ export declare enum LayoutType {
641
+ /** Collage type */
642
+ COLLAGE = "COLLAGE",
643
+ /** Masonry type */
644
+ MASONRY = "MASONRY",
645
+ /** Grid type */
646
+ GRID = "GRID",
647
+ /** Thumbnail type */
648
+ THUMBNAIL = "THUMBNAIL",
649
+ /** Slider type */
650
+ SLIDER = "SLIDER",
651
+ /** Slideshow type */
652
+ SLIDESHOW = "SLIDESHOW",
653
+ /** Panorama type */
654
+ PANORAMA = "PANORAMA",
655
+ /** Column type */
656
+ COLUMN = "COLUMN",
657
+ /** Magic type */
658
+ MAGIC = "MAGIC",
659
+ /** Fullsize images type */
660
+ FULLSIZE = "FULLSIZE"
661
+ }
662
+ export declare enum Orientation {
663
+ /** Rows Orientation */
664
+ ROWS = "ROWS",
665
+ /** Columns Orientation */
666
+ COLUMNS = "COLUMNS"
667
+ }
668
+ export declare enum Crop {
669
+ /** Crop to fill */
670
+ FILL = "FILL",
671
+ /** Crop to fit */
672
+ FIT = "FIT"
673
+ }
674
+ export declare enum ThumbnailsAlignment {
675
+ /** Top alignment */
676
+ TOP = "TOP",
677
+ /** Right alignment */
678
+ RIGHT = "RIGHT",
679
+ /** Bottom alignment */
680
+ BOTTOM = "BOTTOM",
681
+ /** Left alignment */
682
+ LEFT = "LEFT",
683
+ /** No thumbnail */
684
+ NONE = "NONE"
685
+ }
686
+ export interface Layout {
687
+ /** Gallery layout type. */
688
+ type?: LayoutType;
689
+ /** Sets whether horizontal scroll is enabled. */
690
+ horizontalScroll?: boolean | null;
691
+ /** Gallery orientation. */
692
+ orientation?: Orientation;
693
+ /** The number of columns to display on full size screens. */
694
+ numberOfColumns?: number | null;
695
+ /** The number of columns to display on mobile screens. */
696
+ mobileNumberOfColumns?: number | null;
697
+ }
698
+ export interface ItemStyle {
699
+ /** Desirable dimension for each item in pixels (behvaior changes according to gallery type) */
700
+ targetSize?: number | null;
701
+ /** Item ratio */
702
+ ratio?: number | null;
703
+ /** Sets how item images are cropped. */
704
+ crop?: Crop;
705
+ /** The spacing between items in pixels. */
706
+ spacing?: number | null;
707
+ }
708
+ export interface Thumbnails {
709
+ /** Thumbnail alignment. */
710
+ placement?: ThumbnailsAlignment;
711
+ /** Spacing between thumbnails in pixels. */
712
+ spacing?: number | null;
713
+ }
714
+ export interface GIFData {
715
+ /** Styling for the GIF's container. */
716
+ containerData?: PluginContainerData;
717
+ /** The source of the full size GIF. */
718
+ original?: GIF;
719
+ /** The source of the downsized GIF. */
720
+ downsized?: GIF;
721
+ /** Height in pixels. */
722
+ height?: number;
723
+ /** Width in pixels. */
724
+ width?: number;
725
+ }
726
+ export interface GIF {
727
+ /** GIF format URL. */
728
+ gif?: string | null;
729
+ /** MP4 format URL. */
730
+ mp4?: string | null;
731
+ /** Thumbnail URL. */
732
+ still?: string | null;
733
+ }
734
+ export interface HeadingData {
735
+ /** Heading level from 1-6. */
736
+ level?: number;
737
+ /** Styling for the heading text. */
738
+ textStyle?: TextStyle;
739
+ /** Indentation level from 1-6. */
740
+ indentation?: number | null;
741
+ }
742
+ export interface HTMLData extends HTMLDataDataOneOf {
743
+ /** The URL for the HTML code for the node. */
744
+ url?: string;
745
+ /** The HTML code for the node. */
746
+ html?: string;
747
+ /** Whether this is an AdSense element. Use `source` instead. */
748
+ isAdsense?: boolean | null;
749
+ /** Styling for the HTML node's container. */
750
+ containerData?: PluginContainerData;
751
+ /** The type of HTML code. */
752
+ source?: Source;
753
+ }
754
+ /** @oneof */
755
+ export interface HTMLDataDataOneOf {
756
+ /** The URL for the HTML code for the node. */
757
+ url?: string;
758
+ /** The HTML code for the node. */
759
+ html?: string;
760
+ /** Whether this is an AdSense element. Use `source` instead. */
761
+ isAdsense?: boolean | null;
762
+ }
763
+ export declare enum Source {
764
+ HTML = "HTML",
765
+ ADSENSE = "ADSENSE"
766
+ }
767
+ export interface ImageData {
768
+ /** Styling for the image's container. */
769
+ containerData?: PluginContainerData;
770
+ /** Image file details. */
771
+ image?: Media;
772
+ /** Link details for images that are links. */
773
+ link?: Link;
774
+ /** Sets whether the image expands to full screen when clicked. */
775
+ disableExpand?: boolean | null;
776
+ /** Image's alternative text. */
777
+ altText?: string | null;
778
+ /** Image caption. */
779
+ caption?: string | null;
780
+ /** Sets whether the image's download button is disabled. */
781
+ disableDownload?: boolean | null;
782
+ }
783
+ export interface LinkPreviewData {
784
+ /** Styling for the link preview's container. */
785
+ containerData?: PluginContainerData;
786
+ /** Link details. */
787
+ link?: Link;
788
+ /** Preview title. */
789
+ title?: string | null;
790
+ /** Preview thumbnail URL. */
791
+ thumbnailUrl?: string | null;
792
+ /** Preview description. */
793
+ description?: string | null;
794
+ /** The preview content as HTML. */
795
+ html?: string | null;
796
+ }
797
+ export interface MapData {
798
+ /** Styling for the map's container. */
799
+ containerData?: PluginContainerData;
800
+ /** Map settings. */
801
+ mapSettings?: MapSettings;
802
+ }
803
+ export interface MapSettings {
804
+ /** The address to display on the map. */
805
+ address?: string | null;
806
+ /** Sets whether the map is draggable. */
807
+ draggable?: boolean | null;
808
+ /** Sets whether the location marker is visible. */
809
+ marker?: boolean | null;
810
+ /** Sets whether street view control is enabled. */
811
+ streetViewControl?: boolean | null;
812
+ /** Sets whether zoom control is enabled. */
813
+ zoomControl?: boolean | null;
814
+ /** Location latitude. */
815
+ lat?: number | null;
816
+ /** Location longitude. */
817
+ lng?: number | null;
818
+ /** Location name. */
819
+ locationName?: string | null;
820
+ /** Sets whether view mode control is enabled. */
821
+ viewModeControl?: boolean | null;
822
+ /** Initial zoom value. */
823
+ initialZoom?: number | null;
824
+ /** Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */
825
+ mapType?: MapType;
826
+ }
827
+ export declare enum MapType {
828
+ /** Roadmap map type */
829
+ ROADMAP = "ROADMAP",
830
+ /** Satellite map type */
831
+ SATELITE = "SATELITE",
832
+ /** Hybrid map type */
833
+ HYBRID = "HYBRID",
834
+ /** Terrain map type */
835
+ TERRAIN = "TERRAIN"
836
+ }
837
+ export interface ParagraphData {
838
+ /** Styling for the paragraph text. */
839
+ textStyle?: TextStyle;
840
+ /** Indentation level from 1-6. */
841
+ indentation?: number | null;
842
+ }
843
+ export interface PollData {
844
+ /** Styling for the poll's container. */
845
+ containerData?: PluginContainerData;
846
+ /** Poll data. */
847
+ poll?: Poll;
848
+ /** Layout settings for the poll and voting options. */
849
+ layout?: PollDataLayout;
850
+ /** Styling for the poll and voting options. */
851
+ design?: Design;
852
+ }
853
+ export declare enum ViewRole {
854
+ /** Only Poll creator can view the results */
855
+ CREATOR = "CREATOR",
856
+ /** Anyone who voted can see the results */
857
+ VOTERS = "VOTERS",
858
+ /** Anyone can see the results, even if one didn't vote */
859
+ EVERYONE = "EVERYONE"
860
+ }
861
+ export declare enum VoteRole {
862
+ /** Logged in member */
863
+ SITE_MEMBERS = "SITE_MEMBERS",
864
+ /** Anyone */
865
+ ALL = "ALL"
866
+ }
867
+ export interface Permissions {
868
+ /** Sets who can view the poll results. */
869
+ view?: ViewRole;
870
+ /** Sets who can vote. */
871
+ vote?: VoteRole;
872
+ /** Sets whether one voter can vote multiple times. */
873
+ allowMultipleVotes?: boolean | null;
874
+ }
875
+ export interface Option {
876
+ /** Option ID. */
877
+ _id?: string | null;
878
+ /** Option title. */
879
+ title?: string | null;
880
+ /** The image displayed with the option. */
881
+ image?: Media;
882
+ }
883
+ export interface PollSettings {
884
+ /** Permissions settings for voting. */
885
+ permissions?: Permissions;
886
+ /** Sets whether voters are displayed in the vote results. */
887
+ showVoters?: boolean | null;
888
+ /** Sets whether the vote count is displayed. */
889
+ showVotesCount?: boolean | null;
890
+ }
891
+ export declare enum PollLayoutType {
892
+ /** List */
893
+ LIST = "LIST",
894
+ /** Grid */
895
+ GRID = "GRID"
896
+ }
897
+ export declare enum PollLayoutDirection {
898
+ /** Left-to-right */
899
+ LTR = "LTR",
900
+ /** Right-to-left */
901
+ RTL = "RTL"
902
+ }
903
+ export interface PollLayout {
904
+ /** The layout for displaying the voting options. */
905
+ type?: PollLayoutType;
906
+ /** The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */
907
+ direction?: PollLayoutDirection;
908
+ /** Sets whether to display the main poll image. */
909
+ enableImage?: boolean | null;
910
+ }
911
+ export interface OptionLayout {
912
+ /** Sets whether to display option images. */
913
+ enableImage?: boolean | null;
914
+ }
915
+ export declare enum BackgroundType {
916
+ /** Color background type */
917
+ COLOR = "COLOR",
918
+ /** Image background type */
919
+ IMAGE = "IMAGE",
920
+ /** Gradiant background type */
921
+ GRADIENT = "GRADIENT"
922
+ }
923
+ export interface Gradient {
924
+ /** The gradient angle in degrees. */
925
+ angle?: number | null;
926
+ /** The start color as a hexademical value. */
927
+ startColor?: string | null;
928
+ /** The end color as a hexademical value. */
929
+ lastColor?: string | null;
930
+ }
931
+ export interface Background extends BackgroundBackgroundOneOf {
932
+ /** The background color as a hexademical value. */
933
+ color?: string | null;
934
+ /** An image to use for the background. */
935
+ image?: Media;
936
+ /** Details for a gradient background. */
937
+ gradient?: Gradient;
938
+ /** Background type. For each option, include the relevant details. */
939
+ type?: BackgroundType;
940
+ }
941
+ /** @oneof */
942
+ export interface BackgroundBackgroundOneOf {
943
+ /** The background color as a hexademical value. */
944
+ color?: string | null;
945
+ /** An image to use for the background. */
946
+ image?: Media;
947
+ /** Details for a gradient background. */
948
+ gradient?: Gradient;
949
+ }
950
+ export interface PollDesign {
951
+ /** Background styling. */
952
+ background?: Background;
953
+ /** Border radius in pixels. */
954
+ borderRadius?: number | null;
955
+ }
956
+ export interface OptionDesign {
957
+ /** Border radius in pixels. */
958
+ borderRadius?: number | null;
959
+ }
960
+ export interface Poll {
961
+ /** Poll ID. */
962
+ _id?: string | null;
963
+ /** Poll title. */
964
+ title?: string | null;
965
+ /** Poll creator ID. */
966
+ creatorId?: string | null;
967
+ /** Main poll image. */
968
+ image?: Media;
969
+ /** Voting options. */
970
+ options?: Option[];
971
+ /** The poll's permissions and display settings. */
972
+ settings?: PollSettings;
973
+ }
974
+ export interface PollDataLayout {
975
+ /** Poll layout settings. */
976
+ poll?: PollLayout;
977
+ /** Voting otpions layout settings. */
978
+ options?: OptionLayout;
979
+ }
980
+ export interface Design {
981
+ /** Styling for the poll. */
982
+ poll?: PollDesign;
983
+ /** Styling for voting options. */
984
+ options?: OptionDesign;
985
+ }
986
+ export interface TextData {
987
+ /** The text to apply decorations to. */
988
+ text?: string;
989
+ /** The decorations to apply. */
990
+ decorations?: Decoration[];
991
+ }
992
+ /** Adds appearence changes to text */
993
+ export interface Decoration extends DecorationDataOneOf {
994
+ /** Data for an anchor link decoration. */
995
+ anchorData?: AnchorData;
996
+ /** Data for a color decoration. */
997
+ colorData?: ColorData;
998
+ /** Data for an external link decoration. */
999
+ linkData?: LinkData;
1000
+ /** Data for a mention decoration. */
1001
+ mentionData?: MentionData;
1002
+ /** Data for a font size decoration. */
1003
+ fontSizeData?: FontSizeData;
1004
+ /** Font weight for a bold decoration. */
1005
+ fontWeightValue?: number | null;
1006
+ /** Data for an italic decoration. */
1007
+ italicData?: boolean | null;
1008
+ /** Data for an underline decoration. */
1009
+ underlineData?: boolean | null;
1010
+ /** The type of decoration to apply. */
1011
+ type?: DecorationType;
1012
+ }
1013
+ /** @oneof */
1014
+ export interface DecorationDataOneOf {
1015
+ /** Data for an anchor link decoration. */
1016
+ anchorData?: AnchorData;
1017
+ /** Data for a color decoration. */
1018
+ colorData?: ColorData;
1019
+ /** Data for an external link decoration. */
1020
+ linkData?: LinkData;
1021
+ /** Data for a mention decoration. */
1022
+ mentionData?: MentionData;
1023
+ /** Data for a font size decoration. */
1024
+ fontSizeData?: FontSizeData;
1025
+ /** Font weight for a bold decoration. */
1026
+ fontWeightValue?: number | null;
1027
+ /** Data for an italic decoration. */
1028
+ italicData?: boolean | null;
1029
+ /** Data for an underline decoration. */
1030
+ underlineData?: boolean | null;
1031
+ }
1032
+ export declare enum DecorationType {
1033
+ BOLD = "BOLD",
1034
+ ITALIC = "ITALIC",
1035
+ UNDERLINE = "UNDERLINE",
1036
+ SPOILER = "SPOILER",
1037
+ ANCHOR = "ANCHOR",
1038
+ MENTION = "MENTION",
1039
+ LINK = "LINK",
1040
+ COLOR = "COLOR",
1041
+ FONT_SIZE = "FONT_SIZE",
1042
+ EXTERNAL = "EXTERNAL"
1043
+ }
1044
+ export interface AnchorData {
1045
+ /** The target node's ID. */
1046
+ anchor?: string;
1047
+ }
1048
+ export interface ColorData {
1049
+ /** The text's background color as a hexadecimal value. */
1050
+ background?: string | null;
1051
+ /** The text's foreground color as a hexadecimal value. */
1052
+ foreground?: string | null;
1053
+ }
1054
+ export interface LinkData {
1055
+ /** Link details. */
1056
+ link?: Link;
1057
+ }
1058
+ export interface MentionData {
1059
+ /** The mentioned user's name. */
1060
+ name?: string;
1061
+ /** The version of the user's name that appears after the `@` character in the mention. */
1062
+ slug?: string;
1063
+ /** Mentioned user's ID. */
1064
+ _id?: string | null;
1065
+ }
1066
+ export interface FontSizeData {
1067
+ /** The units used for the font size. */
1068
+ unit?: FontType;
1069
+ /** Font size value. */
1070
+ value?: number | null;
1071
+ }
1072
+ export declare enum FontType {
1073
+ PX = "PX",
1074
+ EM = "EM"
1075
+ }
1076
+ export interface AppEmbedData extends AppEmbedDataAppDataOneOf {
1077
+ /** Data for embedded Wix Bookings content. */
1078
+ bookingData?: BookingData;
1079
+ /** Data for embedded Wix Events content. */
1080
+ eventData?: EventData;
1081
+ /** The type of Wix App content being embedded. */
1082
+ type?: AppType;
1083
+ /** The ID of the embedded content. */
1084
+ itemId?: string | null;
1085
+ /** The name of the embedded content. */
1086
+ name?: string | null;
1087
+ /** Deprecated: Use `image` instead. */
1088
+ imageSrc?: string | null;
1089
+ /** The URL for the embedded content. */
1090
+ url?: string | null;
1091
+ /** An image for the embedded content. */
1092
+ image?: Media;
1093
+ }
1094
+ /** @oneof */
1095
+ export interface AppEmbedDataAppDataOneOf {
1096
+ /** Data for embedded Wix Bookings content. */
1097
+ bookingData?: BookingData;
1098
+ /** Data for embedded Wix Events content. */
1099
+ eventData?: EventData;
1100
+ }
1101
+ export declare enum AppType {
1102
+ PRODUCT = "PRODUCT",
1103
+ EVENT = "EVENT",
1104
+ BOOKING = "BOOKING"
1105
+ }
1106
+ export interface BookingData {
1107
+ /** Booking duration in minutes. */
1108
+ durations?: string | null;
1109
+ }
1110
+ export interface EventData {
1111
+ /** Event schedule. */
1112
+ scheduling?: string | null;
1113
+ /** Event location. */
1114
+ location?: string | null;
1115
+ }
1116
+ export interface VideoData {
1117
+ /** Styling for the video's container. */
1118
+ containerData?: PluginContainerData;
1119
+ /** Video details. */
1120
+ video?: Media;
1121
+ /** Video thumbnail details. */
1122
+ thumbnail?: Media;
1123
+ /** Sets whether the video's download button is disabled. */
1124
+ disableDownload?: boolean | null;
1125
+ /** Video title. */
1126
+ title?: string | null;
1127
+ /** Video options. */
1128
+ options?: PlaybackOptions;
1129
+ }
1130
+ export interface PlaybackOptions {
1131
+ /** Sets whether the media will automatically start playing. */
1132
+ autoPlay?: boolean | null;
1133
+ /** Sets whether media's will be looped. */
1134
+ playInLoop?: boolean | null;
1135
+ /** Sets whether media's controls will be shown. */
1136
+ showControls?: boolean | null;
1137
+ }
1138
+ export interface EmbedData {
1139
+ /** Styling for the oEmbed node's container. */
1140
+ containerData?: PluginContainerData;
1141
+ /** An [oEmbed](https://www.oembed.com) object. */
1142
+ oembed?: Oembed;
1143
+ /** Origin asset source. */
1144
+ src?: string | null;
1145
+ }
1146
+ export interface Oembed {
1147
+ /** The resource type. */
1148
+ type?: string | null;
1149
+ /** The width of the resource specified in the `url` property in pixels. */
1150
+ width?: number | null;
1151
+ /** The height of the resource specified in the `url` property in pixels. */
1152
+ height?: number | null;
1153
+ /** Resource title. */
1154
+ title?: string | null;
1155
+ /** The source URL for the resource. */
1156
+ url?: string | null;
1157
+ /** HTML for embedding a video player. The HTML should have no padding or margins. */
1158
+ html?: string | null;
1159
+ /** The name of the author or owner of the resource. */
1160
+ authorName?: string | null;
1161
+ /** The URL for the author or owner of the resource. */
1162
+ authorUrl?: string | null;
1163
+ /** The name of the resource provider. */
1164
+ providerName?: string | null;
1165
+ /** The URL for the resource provider. */
1166
+ providerUrl?: string | null;
1167
+ /** The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */
1168
+ thumbnailUrl?: string | null;
1169
+ /** The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */
1170
+ thumbnailWidth?: string | null;
1171
+ /** The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */
1172
+ thumbnailHeight?: string | null;
1173
+ /** The URL for an embedded viedo. */
1174
+ videoUrl?: string | null;
1175
+ /** The oEmbed version number. This value must be `1.0`. */
1176
+ version?: string | null;
1177
+ }
1178
+ export interface CollapsibleListData {
1179
+ /** Styling for the collapsible list's container. */
1180
+ containerData?: PluginContainerData;
1181
+ /** If `true`, only one item can be expanded at a time. */
1182
+ expandOnlyOne?: boolean | null;
1183
+ /** Sets which items are expanded when the page loads. */
1184
+ initialExpandedItems?: InitialExpandedItems;
1185
+ /** The direction of the text in the list. Either left-to-right or right-to-left. */
1186
+ direction?: Direction;
1187
+ /** If `true`, The collapsible item will appear in search results as an FAQ. */
1188
+ isQapageData?: boolean | null;
1189
+ }
1190
+ export declare enum InitialExpandedItems {
1191
+ /** First item will be expended initally */
1192
+ FIRST = "FIRST",
1193
+ /** All items will expended initally */
1194
+ ALL = "ALL",
1195
+ /** All items collapsed initally */
1196
+ NONE = "NONE"
1197
+ }
1198
+ export declare enum Direction {
1199
+ /** Left-to-right */
1200
+ LTR = "LTR",
1201
+ /** Right-to-left */
1202
+ RTL = "RTL"
1203
+ }
1204
+ export interface TableData {
1205
+ /** Styling for the table's container. */
1206
+ containerData?: PluginContainerData;
1207
+ /** The table's dimensions. */
1208
+ dimensions?: Dimensions;
1209
+ /** Deprecated: Use `rowHeader` and `columnHeader` instead. */
1210
+ header?: boolean | null;
1211
+ /** Sets whether the table's first row is a header. */
1212
+ rowHeader?: boolean | null;
1213
+ /** Sets whether the table's first column is a header. */
1214
+ columnHeader?: boolean | null;
1215
+ }
1216
+ export interface Dimensions {
1217
+ /** An array representing relative width of each column in relation to the other columns. */
1218
+ colsWidthRatio?: number[];
1219
+ /** An array representing the height of each row in pixels. */
1220
+ rowsHeight?: number[];
1221
+ /** An array representing the minimum width of each column in pixels. */
1222
+ colsMinWidth?: number[];
1223
+ }
1224
+ export interface TableCellData {
1225
+ /** Styling for the cell's background color and text alignment. */
1226
+ cellStyle?: CellStyle;
1227
+ /** The cell's border colors. */
1228
+ borderColors?: BorderColors;
1229
+ }
1230
+ export declare enum VerticalAlignment {
1231
+ /** Top alignment */
1232
+ TOP = "TOP",
1233
+ /** Middle alignment */
1234
+ MIDDLE = "MIDDLE",
1235
+ /** Bottom alignment */
1236
+ BOTTOM = "BOTTOM"
1237
+ }
1238
+ export interface CellStyle {
1239
+ /** Vertical alignment for the cell's text. */
1240
+ verticalAlignment?: VerticalAlignment;
1241
+ /** Cell background color as a hexadecimal value. */
1242
+ backgroundColor?: string | null;
1243
+ }
1244
+ export interface BorderColors {
1245
+ /** Left border color as a hexadecimal value. */
1246
+ left?: string | null;
1247
+ /** Right border color as a hexadecimal value. */
1248
+ right?: string | null;
1249
+ /** Top border color as a hexadecimal value. */
1250
+ top?: string | null;
1251
+ /** Bottom border color as a hexadecimal value. */
1252
+ bottom?: string | null;
1253
+ }
1254
+ /**
1255
+ * `NullValue` is a singleton enumeration to represent the null value for the
1256
+ * `Value` type union.
1257
+ *
1258
+ * The JSON representation for `NullValue` is JSON `null`.
1259
+ */
1260
+ export declare enum NullValue {
1261
+ /** Null value. */
1262
+ NULL_VALUE = "NULL_VALUE"
1263
+ }
1264
+ /**
1265
+ * `ListValue` is a wrapper around a repeated field of values.
1266
+ *
1267
+ * The JSON representation for `ListValue` is JSON array.
1268
+ */
1269
+ export interface ListValue {
1270
+ /** Repeated field of dynamically typed values. */
1271
+ values?: any[];
1272
+ }
1273
+ export interface AudioData {
1274
+ /** Styling for the audio node's container. */
1275
+ containerData?: PluginContainerData;
1276
+ /** Audio file details. */
1277
+ audio?: Media;
1278
+ /** Sets whether the audio node's download button is disabled. */
1279
+ disableDownload?: boolean | null;
1280
+ /** Cover image. */
1281
+ coverImage?: Media;
1282
+ /** Track name. */
1283
+ name?: string | null;
1284
+ /** Author name. */
1285
+ authorName?: string | null;
1286
+ /** An HTML version of the audio node. */
1287
+ html?: string | null;
1288
+ }
1289
+ export interface OrderedListData {
1290
+ /** Indentation level. */
1291
+ indentation?: number;
1292
+ }
1293
+ export interface BulletedListData {
1294
+ /** Indentation level. */
1295
+ indentation?: number;
1296
+ }
1297
+ export interface BlockquoteData {
1298
+ /** Indentation level. */
1299
+ indentation?: number;
1300
+ }
1301
+ export interface Metadata {
1302
+ /** Schema version. */
1303
+ version?: number;
1304
+ /**
1305
+ * When the object was created.
1306
+ * @readonly
1307
+ */
1308
+ createdTimestamp?: Date;
1309
+ /** When the object was most recently updated. */
1310
+ updatedTimestamp?: Date;
1311
+ /** Object ID. */
1312
+ _id?: string | null;
1313
+ }
1314
+ export interface DocumentStyle {
1315
+ /** Styling for H1 nodes. */
1316
+ headerOne?: TextNodeStyle;
1317
+ /** Styling for H2 nodes. */
1318
+ headerTwo?: TextNodeStyle;
1319
+ /** Styling for H3 nodes. */
1320
+ headerThree?: TextNodeStyle;
1321
+ /** Styling for H4 nodes. */
1322
+ headerFour?: TextNodeStyle;
1323
+ /** Styling for H5 nodes. */
1324
+ headerFive?: TextNodeStyle;
1325
+ /** Styling for H6 nodes. */
1326
+ headerSix?: TextNodeStyle;
1327
+ /** Styling for paragraph nodes. */
1328
+ paragraph?: TextNodeStyle;
1329
+ /** Styling for block quote nodes. */
1330
+ blockquote?: TextNodeStyle;
1331
+ /** Styling for code block nodes. */
1332
+ codeBlock?: TextNodeStyle;
1333
+ }
1334
+ export interface TextNodeStyle {
1335
+ /** The decorations to apply to the node. */
1336
+ decorations?: Decoration[];
1337
+ /** Padding and background color for the node. */
1338
+ nodeStyle?: NodeStyle;
1339
+ /** Line height for text in the node. */
1340
+ lineHeight?: string | null;
1341
+ }
1342
+ export interface TreeReference {
1343
+ /** The unique namespace of the app. */
1344
+ appNamespace?: string;
1345
+ /** Optional - The key of the tree. Must be provided when single app manages more than one tree. */
1346
+ treeKey?: string | null;
1347
+ }
1348
+ export interface ExtendedFields {
1349
+ /**
1350
+ * Extended field data as key:object pairs. Each key corresponds to the namespace of the app that created the extended fields.
1351
+ * The value of each key is structured according to the schema defined when the extended fields were created.
1352
+ *
1353
+ * You can only access fields for which you have the appropriate permissions.
1354
+ */
1355
+ namespaces?: Record<string, Record<string, any>>;
1356
+ }
1357
+ export interface CreateCategoryRequest {
1358
+ /** Category to be created. */
1359
+ category: Category;
1360
+ /** A reference to the tree that contains this category. */
1361
+ treeReference: TreeReference;
1362
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1363
+ fields?: RequestedFields[];
1364
+ }
1365
+ export declare enum RequestedFields {
1366
+ UNKNOWN_REQUESTED_FIELD = "UNKNOWN_REQUESTED_FIELD",
1367
+ BREADCRUMBS = "BREADCRUMBS"
1368
+ }
1369
+ export interface CreateCategoryResponse {
1370
+ /** The created Category. */
1371
+ category?: Category;
1372
+ }
1373
+ export interface GetCategoryRequest {
1374
+ /** Id of the Category to retrieve. */
1375
+ categoryId: string;
1376
+ /** A reference to the tree that contains this category. */
1377
+ treeReference: TreeReference;
1378
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1379
+ fields?: RequestedFields[];
1380
+ }
1381
+ export interface GetCategoryResponse {
1382
+ /** The retrieved Category. */
1383
+ category?: Category;
1384
+ }
1385
+ export interface UpdateCategoryRequest {
1386
+ /** Category to be updated, may be partial. */
1387
+ category: Category;
1388
+ /** A reference to the tree that contains this category. */
1389
+ treeReference: TreeReference;
1390
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1391
+ fields?: RequestedFields[];
1392
+ }
1393
+ export interface UpdateCategoryResponse {
1394
+ /** The updated Category. */
1395
+ category?: Category;
1396
+ }
1397
+ export interface DeleteCategoryRequest {
1398
+ /** Id of the Category to delete. */
1399
+ categoryId: string;
1400
+ /** A reference to the tree that contains this category. */
1401
+ treeReference: TreeReference;
1402
+ }
1403
+ export interface DeleteCategoryResponse {
1404
+ }
1405
+ export interface QueryCategoriesRequest {
1406
+ /** WQL query expression. */
1407
+ query?: CursorQuery;
1408
+ /**
1409
+ * A reference to the tree that contains this category.
1410
+ * Used only in the first request. Following requests use the cursor token.
1411
+ */
1412
+ treeReference: TreeReference;
1413
+ /**
1414
+ * Whether hidden categories should be included in the response. Default is `false`.
1415
+ * Used only in the first request. Following requests use the cursor token.
1416
+ */
1417
+ includeHidden?: boolean;
1418
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1419
+ fields?: RequestedFields[];
1420
+ }
1421
+ export interface CursorQuery extends CursorQueryPagingMethodOneOf {
1422
+ /** 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`. */
1423
+ cursorPaging?: CursorPaging;
1424
+ /**
1425
+ * Filter object in the following format:
1426
+ * `"filter" : {
1427
+ * "fieldName1": "value1",
1428
+ * "fieldName2":{"$operator":"value2"}
1429
+ * }`
1430
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
1431
+ */
1432
+ filter?: Record<string, any> | null;
1433
+ /**
1434
+ * Sort object in the following format:
1435
+ * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]`
1436
+ */
1437
+ sort?: Sorting[];
1438
+ }
1439
+ /** @oneof */
1440
+ export interface CursorQueryPagingMethodOneOf {
1441
+ /** 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`. */
1442
+ cursorPaging?: CursorPaging;
1443
+ }
1444
+ export interface Sorting {
1445
+ /** Name of the field to sort by. */
1446
+ fieldName?: string;
1447
+ /** Sort order. */
1448
+ order?: SortOrder;
1449
+ }
1450
+ export declare enum SortOrder {
1451
+ ASC = "ASC",
1452
+ DESC = "DESC"
1453
+ }
1454
+ export interface CursorPaging {
1455
+ /** Number of items to load. */
1456
+ limit?: number | null;
1457
+ /**
1458
+ * Pointer to the next or previous page in the list of results.
1459
+ *
1460
+ * You can get the relevant cursor token
1461
+ * from the `pagingMetadata` object in the previous call's response.
1462
+ * Not relevant for the first request.
1463
+ */
1464
+ cursor?: string | null;
1465
+ }
1466
+ export interface QueryCategoriesResponse {
1467
+ /** Categories which satisfy the provided query. */
1468
+ categories?: Category[];
1469
+ /** Paging metadata. Contains cursor which can be used in next query. */
1470
+ pagingMetadata?: CursorPagingMetadata;
1471
+ }
1472
+ export interface CursorPagingMetadata {
1473
+ /** Number of items returned in the response. */
1474
+ count?: number | null;
1475
+ /** Offset that was requested. */
1476
+ cursors?: Cursors;
1477
+ /**
1478
+ * Indicates if there are more results after the current page.
1479
+ * If `true`, another page of results can be retrieved.
1480
+ * If `false`, this is the last page.
1481
+ */
1482
+ hasNext?: boolean | null;
1483
+ }
1484
+ export interface Cursors {
1485
+ /** Cursor pointing to next page in the list of results. */
1486
+ next?: string | null;
1487
+ /** Cursor pointing to previous page in the list of results. */
1488
+ prev?: string | null;
1489
+ }
1490
+ export interface PlaceCategoryInParentCategoryRequest {
1491
+ /** ID of category to place. */
1492
+ categoryId: string;
1493
+ /** A reference to the tree that contains this category. */
1494
+ treeReference: TreeReference;
1495
+ /**
1496
+ * ID of parent category.
1497
+ * Optional. When not passed it will fallback to the root category
1498
+ */
1499
+ parentCategoryId?: string | null;
1500
+ /**
1501
+ * Where to place the subcategory.
1502
+ * `FIRST` - make category with `category_id` first subcategory with manual arrangement.
1503
+ * `LAST` - make category with `category_id` last subcategory with manual arrangement.
1504
+ * `BEFORE` - requires `move_before_category_id`, category with `category_id` will be moved before it.
1505
+ */
1506
+ position: PlaceCategoryInParentCategoryRequestPosition;
1507
+ /** Required when `position` is `BEFORE`. Otherwise ignored */
1508
+ moveBeforeCategoryId?: string | null;
1509
+ }
1510
+ export declare enum PlaceCategoryInParentCategoryRequestPosition {
1511
+ UNKNOWN_POSITION = "UNKNOWN_POSITION",
1512
+ FIRST = "FIRST",
1513
+ LAST = "LAST",
1514
+ BEFORE = "BEFORE"
1515
+ }
1516
+ export interface PlaceCategoryInParentCategoryResponse {
1517
+ /** ID of parent category. */
1518
+ parentCategoryId?: string | null;
1519
+ /** Information about manually arranged categories after move. */
1520
+ arrangedCategoriesAfterMove?: string[];
1521
+ }
1522
+ export interface BulkCreateCategoriesRequest {
1523
+ /** List of categories to be created. */
1524
+ categories?: Category[];
1525
+ /** A reference to the tree that contains the categories. */
1526
+ treeReference?: TreeReference;
1527
+ /** Whether to return the category entity in the response. */
1528
+ returnEntity?: boolean;
1529
+ }
1530
+ export interface BulkCreateCategoriesResponse {
1531
+ /** Categories created by bulk action. */
1532
+ results?: BulkCategoriesResult[];
1533
+ /** Bulk action metadata. */
1534
+ bulkActionMetadata?: BulkActionMetadata;
1535
+ }
1536
+ export interface BulkCategoriesResult {
1537
+ /** Information about successful action or error for failure. */
1538
+ itemMetadata?: ItemMetadata;
1539
+ /** Created or updated category. Optional - returned only if requested with `return_entity` set to `true`. */
1540
+ category?: Category;
1541
+ }
1542
+ export interface ItemMetadata {
1543
+ /** Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */
1544
+ _id?: string | null;
1545
+ /** Index of the item within the request array. Allows for correlation between request and response items. */
1546
+ originalIndex?: number;
1547
+ /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */
1548
+ success?: boolean;
1549
+ /** Details about the error in case of failure. */
1550
+ error?: ApplicationError;
1551
+ }
1552
+ export interface ApplicationError {
1553
+ /** Error code. */
1554
+ code?: string;
1555
+ /** Description of the error. */
1556
+ description?: string;
1557
+ /** Data related to the error. */
1558
+ data?: Record<string, any> | null;
1559
+ }
1560
+ export interface BulkActionMetadata {
1561
+ /** Number of items that were successfully processed. */
1562
+ totalSuccesses?: number;
1563
+ /** Number of items that couldn't be processed. */
1564
+ totalFailures?: number;
1565
+ /** Number of failures without details because detailed failure threshold was exceeded. */
1566
+ undetailedFailures?: number;
1567
+ }
1568
+ export interface BulkUpdateCategoriesRequest {
1569
+ /** List of categories to be updated. */
1570
+ categories: MaskedCategory[];
1571
+ /** A reference to the tree that contains the categories. */
1572
+ treeReference: TreeReference;
1573
+ /** Whether to return the category entity in the response. */
1574
+ returnEntity?: boolean;
1575
+ }
1576
+ export interface MaskedCategory {
1577
+ /** Category to be updated, may be partial. */
1578
+ category?: Category;
1579
+ }
1580
+ export interface BulkUpdateCategoriesResponse {
1581
+ /** Categories updated by bulk action. */
1582
+ results?: BulkCategoriesResult[];
1583
+ /** Bulk action metadata. */
1584
+ bulkActionMetadata?: BulkActionMetadata;
1585
+ }
1586
+ export interface UpdateCategoryVisibilityRequest {
1587
+ /** ID of category to be updated */
1588
+ categoryId: string;
1589
+ /** value to set `visible` to */
1590
+ visible: boolean;
1591
+ /** A reference to the tree that contains this category. */
1592
+ treeReference: TreeReference;
1593
+ /** Latest revision of the category. */
1594
+ revision: string | null;
1595
+ }
1596
+ export interface UpdateCategoryVisibilityResponse {
1597
+ /** The updated Category. */
1598
+ category?: Category;
1599
+ }
1600
+ export interface BulkUpdateVisibilityRequest {
1601
+ /** IDs of categories to be updated. */
1602
+ categoryIds?: string[];
1603
+ /** value to set `visible` to. This value will be set for all categories in the request */
1604
+ visible?: boolean;
1605
+ /** A reference to the tree that contains this category. */
1606
+ treeReference?: TreeReference;
1607
+ /** Whether to return the category entity in the response. */
1608
+ returnEntity?: boolean;
1609
+ }
1610
+ export interface BulkUpdateVisibilityResponse {
1611
+ /** Categories updated by bulk action. */
1612
+ results?: BulkCategoriesResult[];
1613
+ /** Bulk action metadata. */
1614
+ bulkActionMetadata?: BulkActionMetadata;
1615
+ }
1616
+ export interface BulkUpdateVisibilityByFilterRequest {
1617
+ /**
1618
+ * Filter object in the following format:
1619
+ * `"filter" : {
1620
+ * "fieldName1": "value1",
1621
+ * "fieldName2":{"$operator":"value2"}
1622
+ * }`
1623
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
1624
+ */
1625
+ filter?: Record<string, any> | null;
1626
+ /** A reference to the tree that contains the categories. */
1627
+ treeReference?: TreeReference;
1628
+ /** value to set `visible` to. This value will be set for all categories that match the filter */
1629
+ visible?: boolean;
1630
+ }
1631
+ export interface BulkUpdateVisibilityByFilterResponse {
1632
+ /** Token that can be used to query "AsyncJobService" */
1633
+ jobId?: string;
1634
+ }
1635
+ export interface BulkDeleteCategoriesRequest {
1636
+ /** IDs of categories to be deleted. */
1637
+ categoryIds?: string[];
1638
+ }
1639
+ export interface BulkDeleteCategoriesResponse {
1640
+ /** Categories deleted by bulk action. */
1641
+ results?: BulkCategoriesResult[];
1642
+ /** Bulk action metadata. */
1643
+ bulkActionMetadata?: BulkActionMetadata;
1644
+ }
1645
+ export interface BulkDeleteCategoriesByFilterRequest {
1646
+ /**
1647
+ * Filter object in the following format:
1648
+ * `"filter" : {
1649
+ * "fieldName1": "value1",
1650
+ * "fieldName2":{"$operator":"value2"}
1651
+ * }`
1652
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
1653
+ */
1654
+ filter?: Record<string, any> | null;
1655
+ /** A reference to the tree that contains the categories. */
1656
+ treeReference?: TreeReference;
1657
+ }
1658
+ export interface BulkDeleteCategoriesByFilterResponse {
1659
+ /** Token that can be used to query "AsyncJobService" */
1660
+ jobId?: string;
1661
+ }
1662
+ export interface AddItemsToCategoryRequest {
1663
+ /** Category id. */
1664
+ categoryId: string;
1665
+ /** List of catalog items with reference info. */
1666
+ items: ItemReference[];
1667
+ /** A reference to the tree that contains this category. */
1668
+ treeReference: TreeReference;
1669
+ }
1670
+ export interface ItemReference {
1671
+ /** ID of the item within its Wix or 3rd-party catalog. For example, `productId` for Wix Stores or `eventId` for Wix Events. */
1672
+ catalogItemId?: string;
1673
+ /** ID of the catalog app. For example, the Wix Stores `appId`, or the 3rd-party `appId`. */
1674
+ appId?: string;
1675
+ }
1676
+ export interface AddItemsToCategoryResponse {
1677
+ /** Items added by bulk action. */
1678
+ results?: BulkItemsToCategoryResult[];
1679
+ /** Bulk action metadata. */
1680
+ bulkActionMetadata?: BulkActionMetadata;
1681
+ }
1682
+ export interface BulkItemsToCategoryResult {
1683
+ /** Information about items that were added successfully and errors for failed items. */
1684
+ itemMetadata?: ItemReferenceMetadata;
1685
+ }
1686
+ export interface ItemReferenceMetadata {
1687
+ /** Item reference from request. */
1688
+ itemReference?: ItemReference;
1689
+ /** Index of the item within the request array. Allows for correlation between request and response items. */
1690
+ originalIndex?: number;
1691
+ /** Whether the requested action was successful for this item. When `false`, the `error` field is populated. */
1692
+ success?: boolean;
1693
+ /** Details about the error in case of failure. */
1694
+ error?: ApplicationError;
1695
+ }
1696
+ export interface ItemAddedToCategory {
1697
+ /** Category ID. */
1698
+ categoryId?: string;
1699
+ /** Catalog item reference info. */
1700
+ itemReference?: ItemReference;
1701
+ }
1702
+ export interface ItemsAddedToCategory {
1703
+ /** Category ID. */
1704
+ categoryId?: string;
1705
+ /** List of catalog items with reference info. */
1706
+ items?: ItemReference[];
1707
+ }
1708
+ export interface AddItemToCategoriesRequest {
1709
+ /** Catalog item reference info */
1710
+ itemReference: ItemReference;
1711
+ /** Category ids. */
1712
+ categoryIds: string[];
1713
+ /** A reference to the tree that contains the categories. */
1714
+ treeReference: TreeReference;
1715
+ }
1716
+ export interface AddItemToCategoriesResponse {
1717
+ /** Items added by bulk action. */
1718
+ results?: BulkItemToCategoriesResult[];
1719
+ /** Bulk action metadata. */
1720
+ bulkActionMetadata?: BulkActionMetadata;
1721
+ }
1722
+ export interface BulkItemToCategoriesResult {
1723
+ /** Information about categories to which item was added successfully and errors for failed items. `id` is ID of category. */
1724
+ itemMetadata?: ItemMetadata;
1725
+ }
1726
+ export interface RemoveItemsFromCategoryRequest {
1727
+ /** Category id */
1728
+ categoryId: string;
1729
+ /** List of catalog items with reference info. */
1730
+ items: ItemReference[];
1731
+ /** A reference to the tree that contains this category. */
1732
+ treeReference: TreeReference;
1733
+ }
1734
+ export interface RemoveItemsFromCategoryResponse {
1735
+ /** Items removed by bulk action. */
1736
+ results?: BulkItemsToCategoryResult[];
1737
+ /** Bulk action metadata. */
1738
+ bulkActionMetadata?: BulkActionMetadata;
1739
+ }
1740
+ export interface ItemRemovedFromCategory {
1741
+ /** Category ID. */
1742
+ categoryId?: string;
1743
+ /** Catalog item reference info. */
1744
+ itemReference?: ItemReference;
1745
+ }
1746
+ export interface ItemsRemovedFromCategory {
1747
+ /** Category ID. */
1748
+ categoryId?: string;
1749
+ /** List of catalog items with reference info. */
1750
+ items?: ItemReference[];
1751
+ }
1752
+ export interface RemoveItemFromCategoriesRequest {
1753
+ /** Catalog item reference info */
1754
+ itemReference: ItemReference;
1755
+ /** Category ids. */
1756
+ categoryIds: string[];
1757
+ /** A reference to the tree that contains the categories. */
1758
+ treeReference: TreeReference;
1759
+ }
1760
+ export interface RemoveItemFromCategoriesResponse {
1761
+ /** Items removed by bulk action. */
1762
+ results?: BulkItemToCategoriesResult[];
1763
+ /** Bulk action metadata. */
1764
+ bulkActionMetadata?: BulkActionMetadata;
1765
+ }
1766
+ export interface ListItemsInCategoryRequest {
1767
+ /** ID of category containing items. */
1768
+ categoryId: string;
1769
+ /** A reference to the tree that contains this category. */
1770
+ treeReference: TreeReference;
1771
+ /** Default: `false`. When `true` items arranged by user will be return before all other items. */
1772
+ useCategoryArrangement?: boolean;
1773
+ /** Default: `false`. When `false` only direct items of category will be returned. When `true` response contains also items from all subcategories which current category contains */
1774
+ includeItemsFromSubcategories?: boolean;
1775
+ /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `use_category_arrangement` or `include_items_from_subcategories`. */
1776
+ paging?: CursorPaging;
1777
+ }
1778
+ export interface ListItemsInCategoryResponse {
1779
+ /** Items which satisfy query. */
1780
+ items?: ItemReference[];
1781
+ /** Paging metadata. Contains cursor which can be used in next query */
1782
+ pagingMetadata?: PagingMetadataV2;
1783
+ }
1784
+ export interface PagingMetadataV2 {
1785
+ /** Number of items returned in the response. */
1786
+ count?: number | null;
1787
+ /** Offset that was requested. */
1788
+ offset?: number | null;
1789
+ /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */
1790
+ total?: number | null;
1791
+ /** Flag that indicates the server failed to calculate the `total` field. */
1792
+ tooManyToCount?: boolean | null;
1793
+ /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */
1794
+ cursors?: Cursors;
1795
+ }
1796
+ export interface ListCategoriesForItemRequest {
1797
+ /** Catalog item reference info. */
1798
+ itemReference: ItemReference;
1799
+ /** A reference to the tree that contains the categories. */
1800
+ treeReference: TreeReference;
1801
+ }
1802
+ export interface ListCategoriesForItemResponse {
1803
+ /** A list of category IDs that contain this item directly. */
1804
+ directCategoryIds?: string[];
1805
+ /** A list of category IDs that contain this item directly and their parent category IDs. */
1806
+ allCategoryIds?: string[];
1807
+ }
1808
+ export interface MoveItemInCategoryRequest {
1809
+ /**
1810
+ * ID of category.
1811
+ * Item must be direct child of this category, otherwise error returned
1812
+ */
1813
+ categoryId: string;
1814
+ /** A reference to the tree that contains this category. */
1815
+ treeReference: TreeReference;
1816
+ /** Item to move. */
1817
+ item: ItemReference;
1818
+ /**
1819
+ * Where to move item.
1820
+ * `FIRST` - make `item` first item with manual arrangement. If before this operation category already has 100 manually arranged items, the 100th item will be removed from list of items with manual arrangement.
1821
+ * `LAST` - make `item` last item with manual arrangement. If before this operation category already has 100 manually arranged items, moving item will be not last but 100th.
1822
+ * `BEFORE` - requires `before_item`, `item` will be moved before it. If `before_item` was 100th item in category it will be removed from list of items with manual arrangement.
1823
+ * `NONE` - don't use manual arrangement for `item`, it will be shown after all items with manual arrangement according to default sorting.
1824
+ */
1825
+ position: Position;
1826
+ /** Required when `position` is `BEFORE`. `before_item` must be manually arranged item. */
1827
+ beforeItem?: ItemReference;
1828
+ }
1829
+ export declare enum Position {
1830
+ UNKNOWN_POSITION = "UNKNOWN_POSITION",
1831
+ FIRST = "FIRST",
1832
+ LAST = "LAST",
1833
+ BEFORE = "BEFORE",
1834
+ NONE = "NONE"
1835
+ }
1836
+ export interface MoveItemInCategoryResponse {
1837
+ /** Information about manually arranged items after move. */
1838
+ arrangedItemsAfterMove?: ItemReference[];
1839
+ }
1840
+ export interface SetArrangedItemsRequest {
1841
+ /** ID of category. */
1842
+ categoryId: string;
1843
+ /** A reference to the tree that contains this category. */
1844
+ treeReference: TreeReference;
1845
+ /**
1846
+ * List of arranged items to set.
1847
+ * All items must be direct children of category with `category_id`, otherwise error returned.
1848
+ */
1849
+ items?: ItemReference[];
1850
+ }
1851
+ export interface SetArrangedItemsResponse {
1852
+ /** The updated list of arranged items in category. */
1853
+ items?: ItemReference[];
1854
+ }
1855
+ export interface GetArrangedItemsRequest {
1856
+ /** ID of category. */
1857
+ categoryId: string;
1858
+ /** A reference to the tree that contains this category. */
1859
+ treeReference: TreeReference;
1860
+ }
1861
+ export interface GetArrangedItemsResponse {
1862
+ /** List of arranged items in category. */
1863
+ items?: ItemReference[];
1864
+ }
1865
+ export interface GetCategoriesTreeRequest {
1866
+ /** The ID of the tree. */
1867
+ treeId?: string;
1868
+ }
1869
+ export interface GetCategoriesTreeResponse {
1870
+ /** Categories tree. */
1871
+ categoriesTree?: CategoryTreeNode[];
1872
+ }
1873
+ /** Represents a node in the view of categories tree */
1874
+ export interface CategoryTreeNode {
1875
+ /** Category ID. */
1876
+ _id?: Uint8Array;
1877
+ /** A list of child categories. */
1878
+ subcategories?: CategoryTreeNode[];
1879
+ }
1880
+ export interface DomainEvent extends DomainEventBodyOneOf {
1881
+ createdEvent?: EntityCreatedEvent;
1882
+ updatedEvent?: EntityUpdatedEvent;
1883
+ deletedEvent?: EntityDeletedEvent;
1884
+ actionEvent?: ActionEvent;
1885
+ extendedFieldsUpdatedEvent?: ExtendedFieldsUpdatedEvent;
1886
+ /** random GUID so clients can tell if event was already handled */
1887
+ _id?: string;
1888
+ /**
1889
+ * Assumes actions are also always typed to an entity_type
1890
+ * Example: wix.stores.catalog.product, wix.bookings.session, wix.payments.transaction
1891
+ */
1892
+ entityFqdn?: string;
1893
+ /**
1894
+ * This is top level to ease client code dispatching of messages (switch on entity_fqdn+slug)
1895
+ * This is although the created/updated/deleted notion is duplication of the oneof types
1896
+ * Example: created/updated/deleted/started/completed/email_opened
1897
+ */
1898
+ slug?: string;
1899
+ /**
1900
+ * Assuming that all messages including Actions have id
1901
+ * Example: The id of the specific order, the id of a specific campaign
1902
+ */
1903
+ entityId?: string;
1904
+ /** The time of the event. Useful if there was a delay in dispatching */
1905
+ eventTime?: Date;
1906
+ /**
1907
+ * A field that should be set if this event was triggered by an anonymize request.
1908
+ * For example you must set it to true when sending an event as a result of a GDPR right to be forgotten request.
1909
+ * NOTE: This field is not relevant for `EntityCreatedEvent` but is located here for better ergonomics of consumers.
1910
+ */
1911
+ triggeredByAnonymizeRequest?: boolean | null;
1912
+ /** If present, indicates the action that triggered the event. */
1913
+ originatedFrom?: string | null;
1914
+ /**
1915
+ * A sequence number defining the order of updates to the underlying entity.
1916
+ * For example, given that some entity was updated at 16:00 and than again at 16:01,
1917
+ * it is guaranteed that the sequence number of the second update is strictly higher than the first.
1918
+ * As the consumer, you can use this value to ensure that you handle messages in the correct order.
1919
+ * To do so, you will need to persist this number on your end, and compare the sequence number from the
1920
+ * message against the one you have stored. Given that the stored number is higher, you should ignore the message.
1921
+ */
1922
+ entityEventSequence?: string | null;
1923
+ }
1924
+ /** @oneof */
1925
+ export interface DomainEventBodyOneOf {
1926
+ createdEvent?: EntityCreatedEvent;
1927
+ updatedEvent?: EntityUpdatedEvent;
1928
+ deletedEvent?: EntityDeletedEvent;
1929
+ actionEvent?: ActionEvent;
1930
+ extendedFieldsUpdatedEvent?: ExtendedFieldsUpdatedEvent;
1931
+ }
1932
+ export interface EntityCreatedEvent {
1933
+ entityAsJson?: string;
1934
+ }
1935
+ export interface EntityUpdatedEvent {
1936
+ /**
1937
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
1938
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
1939
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
1940
+ */
1941
+ currentEntityAsJson?: string;
1942
+ }
1943
+ export interface EntityDeletedEvent {
1944
+ }
1945
+ export interface ActionEvent {
1946
+ bodyAsJson?: string;
1947
+ }
1948
+ export interface ExtendedFieldsUpdatedEvent {
1949
+ currentEntityAsJson?: string;
1950
+ }
1951
+ export interface Empty {
1952
+ }
1953
+ /**
1954
+ * Creates a new Category.
1955
+ * @param category - Category to be created.
1956
+ * @public
1957
+ * @documentationMaturity preview
1958
+ * @requiredField category
1959
+ * @requiredField category.name
1960
+ * @requiredField category.parentCategory._id
1961
+ * @requiredField options
1962
+ * @requiredField options.treeReference
1963
+ * @requiredField options.treeReference.appNamespace
1964
+ * @returns The created Category.
1965
+ */
1966
+ export declare function createCategory(category: Category, options: CreateCategoryOptions): Promise<Category>;
1967
+ export interface CreateCategoryOptions {
1968
+ /** A reference to the tree that contains this category. */
1969
+ treeReference: TreeReference;
1970
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1971
+ fields?: RequestedFields[];
1972
+ }
1973
+ /**
1974
+ * Retrieves a category with the provided ID.
1975
+ * @param categoryId - Id of the Category to retrieve.
1976
+ * @param treeReference - A reference to the tree that contains this category.
1977
+ * @public
1978
+ * @documentationMaturity preview
1979
+ * @requiredField categoryId
1980
+ * @requiredField treeReference
1981
+ * @requiredField treeReference.appNamespace
1982
+ * @applicableIdentity VISITOR
1983
+ * @returns The retrieved Category.
1984
+ */
1985
+ export declare function getCategory(categoryId: string, treeReference: TreeReference, options?: GetCategoryOptions): Promise<Category>;
1986
+ export interface GetCategoryOptions {
1987
+ /** Fields to return in the response. When not provided, these fields are not returned. */
1988
+ fields?: RequestedFields[];
1989
+ }
1990
+ /**
1991
+ * Update a Category, supports partial update.
1992
+ * Pass the latest `revision` for a successful update.
1993
+ * Each time the category is updated, `revision` increments by 1.
1994
+ * @param _id - Category ID.
1995
+ * @public
1996
+ * @documentationMaturity preview
1997
+ * @requiredField _id
1998
+ * @requiredField category
1999
+ * @requiredField category.revision
2000
+ * @requiredField options
2001
+ * @requiredField options.treeReference
2002
+ * @requiredField options.treeReference.appNamespace
2003
+ * @returns The updated Category.
2004
+ */
2005
+ export declare function updateCategory(_id: string | null, category: UpdateCategory, options: UpdateCategoryOptions): Promise<Category>;
2006
+ export interface UpdateCategory {
2007
+ /** Category ID. */
2008
+ _id?: string | null;
2009
+ /**
2010
+ * Represents the current state of an item. Each time the item is modified, its `revision` changes. for an update operation to succeed, you MUST pass the latest revision
2011
+ * @readonly
2012
+ */
2013
+ revision?: string | null;
2014
+ /**
2015
+ * Represents the time this Category was created.
2016
+ * @readonly
2017
+ */
2018
+ _createdDate?: Date;
2019
+ /**
2020
+ * Represents the time this Category was last updated.
2021
+ * @readonly
2022
+ */
2023
+ _updatedDate?: Date;
2024
+ /** Category name. */
2025
+ name?: string | null;
2026
+ /**
2027
+ * Category image.
2028
+ * Pass existing media ID for image previously saved in Wix media manager.
2029
+ * Pass full image URL to upload an image to Wix media manager.
2030
+ * In case of full url the image will be updated eventually.
2031
+ */
2032
+ image?: string;
2033
+ /**
2034
+ * Number of items in this category alone.
2035
+ * @readonly
2036
+ */
2037
+ numberOfItems?: number;
2038
+ /** Category description. */
2039
+ description?: string | null;
2040
+ /**
2041
+ * Whether the category is visible to site visitors in dynamic pages (If not passed, the default is `false`).
2042
+ * Even if visible is `false`, it can still be added manually to static page.
2043
+ * If parent visibility is updated to `false`, all the children visibility will be updated eventually to `false`.
2044
+ * It is not allowed to set visible as `true` if at least one of the parent categories has visible `false`.
2045
+ */
2046
+ visible?: boolean | null;
2047
+ /**
2048
+ * A category's breadcrumbs, Updated on moved to different parent or on renamed.
2049
+ * This field will only be returned if request.fields contains `BREADCRUMBS`
2050
+ * @readonly
2051
+ */
2052
+ breadcrumbs?: BreadcrumbItemValues;
2053
+ /** The parent category. */
2054
+ parentCategory?: ParentCategory;
2055
+ /**
2056
+ * A permanent, friendly URL name.
2057
+ * If not provided, on create generated automatically.
2058
+ * When provided, validated and must be unique.
2059
+ */
2060
+ slug?: string | null;
2061
+ /**
2062
+ * Category description which supports rich content. It is independent from `description` field and can be used instead of it or in addition to it.
2063
+ * In order to use this field you have to integrate with "Ricos" on frontend side. To learn how to do it visit https://ricos.js.org/.
2064
+ */
2065
+ richContentDescription?: RichContent;
2066
+ /**
2067
+ * Optional - the ID of the app responsible for managing the items within this category.
2068
+ * If provided, the update of items assigned to this category and the deletion of it will be allowed only to the managing app.
2069
+ * The default is Empty.
2070
+ */
2071
+ managedByAppId?: string | null;
2072
+ /** Extensions enabling users to save custom data related to the category. */
2073
+ extendedFields?: ExtendedFields;
2074
+ }
2075
+ export interface UpdateCategoryOptions {
2076
+ /** A reference to the tree that contains this category. */
2077
+ treeReference: TreeReference;
2078
+ /** Fields to return in the response. When not provided, these fields are not returned. */
2079
+ fields?: RequestedFields[];
2080
+ }
2081
+ /**
2082
+ * Deletes a Category.
2083
+ * @param categoryId - Id of the Category to delete.
2084
+ * @param treeReference - A reference to the tree that contains this category.
2085
+ * @public
2086
+ * @documentationMaturity preview
2087
+ * @requiredField categoryId
2088
+ * @requiredField treeReference
2089
+ * @requiredField treeReference.appNamespace
2090
+ */
2091
+ export declare function deleteCategory(categoryId: string, treeReference: TreeReference): Promise<void>;
2092
+ /**
2093
+ * Query Categories using [WQL - Wix Query Language](https://dev.wix.com/api/rest/getting-started/api-query-language)
2094
+ * @public
2095
+ * @documentationMaturity preview
2096
+ * @applicableIdentity VISITOR
2097
+ */
2098
+ export declare function queryCategories(options: QueryCategoriesOptions): CategoriesQueryBuilder;
2099
+ export interface QueryCategoriesOptions {
2100
+ /**
2101
+ * A reference to the tree that contains this category.
2102
+ * Used only in the first request. Following requests use the cursor token.
2103
+ */
2104
+ treeReference: TreeReference;
2105
+ /**
2106
+ * Whether hidden categories should be included in the response. Default is `false`.
2107
+ * Used only in the first request. Following requests use the cursor token.
2108
+ */
2109
+ includeHidden?: boolean | undefined;
2110
+ /** Fields to return in the response. When not provided, these fields are not returned. */
2111
+ fields?: RequestedFields[] | undefined;
2112
+ }
2113
+ interface QueryCursorResult {
2114
+ cursors: Cursors;
2115
+ hasNext: () => boolean;
2116
+ hasPrev: () => boolean;
2117
+ length: number;
2118
+ pageSize: number;
2119
+ }
2120
+ export interface CategoriesQueryResult extends QueryCursorResult {
2121
+ items: Category[];
2122
+ query: CategoriesQueryBuilder;
2123
+ next: () => Promise<CategoriesQueryResult>;
2124
+ prev: () => Promise<CategoriesQueryResult>;
2125
+ }
2126
+ export interface CategoriesQueryBuilder {
2127
+ /** @param propertyName - Property whose value is compared with `value`.
2128
+ * @param value - Value to compare against.
2129
+ * @documentationMaturity preview
2130
+ */
2131
+ eq: (propertyName: '_id' | '_createdDate' | '_updatedDate' | 'name' | 'description' | 'slug', value: any) => CategoriesQueryBuilder;
2132
+ /** @param propertyName - Property whose value is compared with `value`.
2133
+ * @param value - Value to compare against.
2134
+ * @documentationMaturity preview
2135
+ */
2136
+ ne: (propertyName: '_id' | '_createdDate' | '_updatedDate' | 'name' | 'description' | 'slug', value: any) => CategoriesQueryBuilder;
2137
+ /** @param propertyName - Property whose value is compared with `value`.
2138
+ * @param value - Value to compare against.
2139
+ * @documentationMaturity preview
2140
+ */
2141
+ gt: (propertyName: '_createdDate' | '_updatedDate', value: any) => CategoriesQueryBuilder;
2142
+ /** @param propertyName - Property whose value is compared with `value`.
2143
+ * @param value - Value to compare against.
2144
+ * @documentationMaturity preview
2145
+ */
2146
+ lt: (propertyName: '_createdDate' | '_updatedDate', value: any) => CategoriesQueryBuilder;
2147
+ /** @param propertyName - Property whose value is compared with `string`.
2148
+ * @param string - String to compare against. Case-insensitive.
2149
+ * @documentationMaturity preview
2150
+ */
2151
+ startsWith: (propertyName: '_id' | 'name' | 'description' | 'slug', value: string) => CategoriesQueryBuilder;
2152
+ /** @param propertyName - Property whose value is compared with `values`.
2153
+ * @param values - List of values to compare against.
2154
+ * @documentationMaturity preview
2155
+ */
2156
+ hasSome: (propertyName: '_id' | '_createdDate' | '_updatedDate' | 'name' | 'description' | 'slug', value: any[]) => CategoriesQueryBuilder;
2157
+ /** @documentationMaturity preview */
2158
+ in: (propertyName: '_id' | '_createdDate' | '_updatedDate' | 'name' | 'description' | 'slug', value: any) => CategoriesQueryBuilder;
2159
+ /** @documentationMaturity preview */
2160
+ exists: (propertyName: '_id' | '_createdDate' | '_updatedDate' | 'name' | 'description' | 'slug', value: boolean) => CategoriesQueryBuilder;
2161
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.
2162
+ * @documentationMaturity preview
2163
+ */
2164
+ ascending: (...propertyNames: Array<'_id' | '_createdDate' | '_updatedDate' | 'name' | 'slug'>) => CategoriesQueryBuilder;
2165
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.
2166
+ * @documentationMaturity preview
2167
+ */
2168
+ descending: (...propertyNames: Array<'_id' | '_createdDate' | '_updatedDate' | 'name' | 'slug'>) => CategoriesQueryBuilder;
2169
+ /** @param limit - Number of items to return, which is also the `pageSize` of the results object.
2170
+ * @documentationMaturity preview
2171
+ */
2172
+ limit: (limit: number) => CategoriesQueryBuilder;
2173
+ /** @param cursor - A pointer to specific record
2174
+ * @documentationMaturity preview
2175
+ */
2176
+ skipTo: (cursor: string) => CategoriesQueryBuilder;
2177
+ /** @documentationMaturity preview */
2178
+ find: () => Promise<CategoriesQueryResult>;
2179
+ }
2180
+ /**
2181
+ * Places category in parent category.
2182
+ * This operation updates `parentCategory` (`id` and `index`) for category with `categoryId` in tree with `treeId`.
2183
+ * This endpoint can be used to move category to different parent in the same tree or to change it's position in current parent.
2184
+ * @param categoryId - ID of category to place.
2185
+ * @param treeReference - A reference to the tree that contains this category.
2186
+ * @public
2187
+ * @documentationMaturity preview
2188
+ * @requiredField categoryId
2189
+ * @requiredField options
2190
+ * @requiredField options.position
2191
+ * @requiredField treeReference
2192
+ * @requiredField treeReference.appNamespace
2193
+ */
2194
+ export declare function placeCategoryInParentCategory(categoryId: string, treeReference: TreeReference, options: PlaceCategoryInParentCategoryOptions): Promise<PlaceCategoryInParentCategoryResponse>;
2195
+ export interface PlaceCategoryInParentCategoryOptions {
2196
+ /**
2197
+ * ID of parent category.
2198
+ * Optional. When not passed it will fallback to the root category
2199
+ */
2200
+ parentCategoryId?: string | null;
2201
+ /**
2202
+ * Where to place the subcategory.
2203
+ * `FIRST` - make category with `category_id` first subcategory with manual arrangement.
2204
+ * `LAST` - make category with `category_id` last subcategory with manual arrangement.
2205
+ * `BEFORE` - requires `move_before_category_id`, category with `category_id` will be moved before it.
2206
+ */
2207
+ position: PlaceCategoryInParentCategoryRequestPosition;
2208
+ /** Required when `position` is `BEFORE`. Otherwise ignored */
2209
+ moveBeforeCategoryId?: string | null;
2210
+ }
2211
+ /**
2212
+ * Update multiple Categories, supports partial update.
2213
+ * Pass the latest `revision` for a successful update.
2214
+ * To update visibility, call the BulkUpdateCategoryVisibility endpoint.
2215
+ * @param categories - List of categories to be updated.
2216
+ * @public
2217
+ * @documentationMaturity preview
2218
+ * @requiredField categories
2219
+ * @requiredField categories.category
2220
+ * @requiredField categories.category._id
2221
+ * @requiredField categories.category.revision
2222
+ * @requiredField options
2223
+ * @requiredField options.treeReference
2224
+ * @requiredField options.treeReference.appNamespace
2225
+ */
2226
+ export declare function bulkUpdateCategories(categories: MaskedCategory[], options: BulkUpdateCategoriesOptions): Promise<BulkUpdateCategoriesResponse>;
2227
+ export interface BulkUpdateCategoriesOptions {
2228
+ /** A reference to the tree that contains the categories. */
2229
+ treeReference: TreeReference;
2230
+ /** Whether to return the category entity in the response. */
2231
+ returnEntity?: boolean;
2232
+ }
2233
+ /**
2234
+ * Update `visible` field. If visible is set to false, all subcategories will be set to `visible=false`
2235
+ * @param categoryId - ID of category to be updated
2236
+ * @public
2237
+ * @documentationMaturity preview
2238
+ * @requiredField categoryId
2239
+ * @requiredField options
2240
+ * @requiredField options.revision
2241
+ * @requiredField options.treeReference
2242
+ * @requiredField options.treeReference.appNamespace
2243
+ * @requiredField options.visible
2244
+ */
2245
+ export declare function updateCategoryVisibility(categoryId: string, options: UpdateCategoryVisibilityOptions): Promise<UpdateCategoryVisibilityResponse>;
2246
+ export interface UpdateCategoryVisibilityOptions {
2247
+ /** value to set `visible` to */
2248
+ visible: boolean;
2249
+ /** A reference to the tree that contains this category. */
2250
+ treeReference: TreeReference;
2251
+ /** Latest revision of the category. */
2252
+ revision: string | null;
2253
+ }
2254
+ /**
2255
+ * Adds multiple items to single category, fires as many domain events as many items successfully added.
2256
+ * @param categoryId - Category id.
2257
+ * @param items - List of catalog items with reference info.
2258
+ * @public
2259
+ * @documentationMaturity preview
2260
+ * @requiredField categoryId
2261
+ * @requiredField items
2262
+ * @requiredField items.appId
2263
+ * @requiredField items.catalogItemId
2264
+ * @requiredField options
2265
+ * @requiredField options.treeReference
2266
+ * @requiredField options.treeReference.appNamespace
2267
+ */
2268
+ export declare function addItemsToCategory(categoryId: string, items: ItemReference[], options: AddItemsToCategoryOptions): Promise<AddItemsToCategoryResponse>;
2269
+ export interface AddItemsToCategoryOptions {
2270
+ /** A reference to the tree that contains this category. */
2271
+ treeReference: TreeReference;
2272
+ }
2273
+ /**
2274
+ * Adds single item to multiple categories, fires as many domain events as many categories were successfully added.
2275
+ * @param itemReference - Catalog item reference info
2276
+ * @public
2277
+ * @documentationMaturity preview
2278
+ * @requiredField itemReference
2279
+ * @requiredField itemReference.appId
2280
+ * @requiredField itemReference.catalogItemId
2281
+ * @requiredField options
2282
+ * @requiredField options.categoryIds
2283
+ * @requiredField options.treeReference
2284
+ * @requiredField options.treeReference.appNamespace
2285
+ */
2286
+ export declare function addItemToCategories(itemReference: ItemReference, options: AddItemToCategoriesOptions): Promise<AddItemToCategoriesResponse>;
2287
+ export interface AddItemToCategoriesOptions {
2288
+ /** Category ids. */
2289
+ categoryIds: string[];
2290
+ /** A reference to the tree that contains the categories. */
2291
+ treeReference: TreeReference;
2292
+ }
2293
+ /**
2294
+ * Removed multiple items from single category, fires as many domain events as many items successfully removed.
2295
+ * @param categoryId - Category id
2296
+ * @param items - List of catalog items with reference info.
2297
+ * @public
2298
+ * @documentationMaturity preview
2299
+ * @requiredField categoryId
2300
+ * @requiredField items
2301
+ * @requiredField items.appId
2302
+ * @requiredField items.catalogItemId
2303
+ * @requiredField options
2304
+ * @requiredField options.treeReference
2305
+ * @requiredField options.treeReference.appNamespace
2306
+ */
2307
+ export declare function removeItemsFromCategory(categoryId: string, items: ItemReference[], options: RemoveItemsFromCategoryOptions): Promise<RemoveItemsFromCategoryResponse>;
2308
+ export interface RemoveItemsFromCategoryOptions {
2309
+ /** A reference to the tree that contains this category. */
2310
+ treeReference: TreeReference;
2311
+ }
2312
+ /**
2313
+ * Removes single item from multiple categories, fires as many domain events as many categories were successfully removed.
2314
+ * @param itemReference - Catalog item reference info
2315
+ * @public
2316
+ * @documentationMaturity preview
2317
+ * @requiredField itemReference
2318
+ * @requiredField itemReference.appId
2319
+ * @requiredField itemReference.catalogItemId
2320
+ * @requiredField options
2321
+ * @requiredField options.categoryIds
2322
+ * @requiredField options.treeReference
2323
+ * @requiredField options.treeReference.appNamespace
2324
+ */
2325
+ export declare function removeItemFromCategories(itemReference: ItemReference, options: RemoveItemFromCategoriesOptions): Promise<RemoveItemFromCategoriesResponse>;
2326
+ export interface RemoveItemFromCategoriesOptions {
2327
+ /** Category ids. */
2328
+ categoryIds: string[];
2329
+ /** A reference to the tree that contains the categories. */
2330
+ treeReference: TreeReference;
2331
+ }
2332
+ /**
2333
+ * Returns up to 100 items related to requested `category_id` sorted by time when item added to category, descending.
2334
+ * When items added to category in bulk they considered as added at exactly same time so order will be random but always the same.
2335
+ * @param categoryId - ID of category containing items.
2336
+ * @param treeReference - A reference to the tree that contains this category.
2337
+ * @public
2338
+ * @documentationMaturity preview
2339
+ * @requiredField categoryId
2340
+ * @requiredField treeReference
2341
+ * @requiredField treeReference.appNamespace
2342
+ * @applicableIdentity VISITOR
2343
+ */
2344
+ export declare function listItemsInCategory(categoryId: string, treeReference: TreeReference, options?: ListItemsInCategoryOptions): Promise<ListItemsInCategoryResponse>;
2345
+ export interface ListItemsInCategoryOptions {
2346
+ /** Default: `false`. When `true` items arranged by user will be return before all other items. */
2347
+ useCategoryArrangement?: boolean;
2348
+ /** Default: `false`. When `false` only direct items of category will be returned. When `true` response contains also items from all subcategories which current category contains */
2349
+ includeItemsFromSubcategories?: boolean;
2350
+ /** Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `use_category_arrangement` or `include_items_from_subcategories`. */
2351
+ paging?: CursorPaging;
2352
+ }
2353
+ /**
2354
+ * Returns all category IDs that contain the item and their parent category IDs.
2355
+ * @param itemReference - Catalog item reference info.
2356
+ * @public
2357
+ * @documentationMaturity preview
2358
+ * @requiredField itemReference
2359
+ * @requiredField options
2360
+ * @requiredField options.treeReference
2361
+ * @requiredField options.treeReference.appNamespace
2362
+ * @applicableIdentity VISITOR
2363
+ */
2364
+ export declare function listCategoriesForItem(itemReference: ItemReference, options: ListCategoriesForItemOptions): Promise<ListCategoriesForItemResponse>;
2365
+ export interface ListCategoriesForItemOptions {
2366
+ /** A reference to the tree that contains the categories. */
2367
+ treeReference: TreeReference;
2368
+ }
2369
+ /**
2370
+ * Changes position of `item` in category. Will be used when sort items by manual arrangement
2371
+ * @param categoryId - ID of category.
2372
+ * Item must be direct child of this category, otherwise error returned
2373
+ * @param treeReference - A reference to the tree that contains this category.
2374
+ * @public
2375
+ * @documentationMaturity preview
2376
+ * @requiredField categoryId
2377
+ * @requiredField options
2378
+ * @requiredField options.item
2379
+ * @requiredField options.position
2380
+ * @requiredField treeReference
2381
+ * @requiredField treeReference.appNamespace
2382
+ */
2383
+ export declare function moveItemInCategory(categoryId: string, treeReference: TreeReference, options: MoveItemInCategoryOptions): Promise<MoveItemInCategoryResponse>;
2384
+ export interface MoveItemInCategoryOptions {
2385
+ /** Item to move. */
2386
+ item: ItemReference;
2387
+ /**
2388
+ * Where to move item.
2389
+ * `FIRST` - make `item` first item with manual arrangement. If before this operation category already has 100 manually arranged items, the 100th item will be removed from list of items with manual arrangement.
2390
+ * `LAST` - make `item` last item with manual arrangement. If before this operation category already has 100 manually arranged items, moving item will be not last but 100th.
2391
+ * `BEFORE` - requires `before_item`, `item` will be moved before it. If `before_item` was 100th item in category it will be removed from list of items with manual arrangement.
2392
+ * `NONE` - don't use manual arrangement for `item`, it will be shown after all items with manual arrangement according to default sorting.
2393
+ */
2394
+ position: Position;
2395
+ /** Required when `position` is `BEFORE`. `before_item` must be manually arranged item. */
2396
+ beforeItem?: ItemReference;
2397
+ }
2398
+ /**
2399
+ * Set arranged items in category. Will be used when sort items by manual arrangement.
2400
+ * Calling this endpoint overrides existing list of arranged items in category.
2401
+ * @param categoryId - ID of category.
2402
+ * @param treeReference - A reference to the tree that contains this category.
2403
+ * @public
2404
+ * @documentationMaturity preview
2405
+ * @requiredField categoryId
2406
+ * @requiredField treeReference
2407
+ * @requiredField treeReference.appNamespace
2408
+ */
2409
+ export declare function setArrangedItems(categoryId: string, treeReference: TreeReference, options?: SetArrangedItemsOptions): Promise<SetArrangedItemsResponse>;
2410
+ export interface SetArrangedItemsOptions {
2411
+ /**
2412
+ * List of arranged items to set.
2413
+ * All items must be direct children of category with `category_id`, otherwise error returned.
2414
+ */
2415
+ items?: ItemReference[];
2416
+ }
2417
+ /**
2418
+ * Returns arranged items in category
2419
+ * @param categoryId - ID of category.
2420
+ * @param treeReference - A reference to the tree that contains this category.
2421
+ * @public
2422
+ * @documentationMaturity preview
2423
+ * @requiredField categoryId
2424
+ * @requiredField treeReference
2425
+ * @requiredField treeReference.appNamespace
2426
+ * @applicableIdentity VISITOR
2427
+ */
2428
+ export declare function getArrangedItems(categoryId: string, treeReference: TreeReference): Promise<GetArrangedItemsResponse>;
2429
+ export {};