@wix/blog 1.0.113

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 (79) hide show
  1. package/build/cjs/index.d.ts +3 -0
  2. package/build/cjs/index.js +26 -0
  3. package/build/cjs/index.js.map +1 -0
  4. package/build/cjs/src/blog-v3-category.http.d.ts +50 -0
  5. package/build/cjs/src/blog-v3-category.http.js +421 -0
  6. package/build/cjs/src/blog-v3-category.http.js.map +1 -0
  7. package/build/cjs/src/blog-v3-category.public.d.ts +11 -0
  8. package/build/cjs/src/blog-v3-category.public.js +50 -0
  9. package/build/cjs/src/blog-v3-category.public.js.map +1 -0
  10. package/build/cjs/src/blog-v3-category.types.d.ts +391 -0
  11. package/build/cjs/src/blog-v3-category.types.js +22 -0
  12. package/build/cjs/src/blog-v3-category.types.js.map +1 -0
  13. package/build/cjs/src/blog-v3-category.universal.d.ts +582 -0
  14. package/build/cjs/src/blog-v3-category.universal.js +460 -0
  15. package/build/cjs/src/blog-v3-category.universal.js.map +1 -0
  16. package/build/cjs/src/blog-v3-post.http.d.ts +81 -0
  17. package/build/cjs/src/blog-v3-post.http.js +844 -0
  18. package/build/cjs/src/blog-v3-post.http.js.map +1 -0
  19. package/build/cjs/src/blog-v3-post.public.d.ts +11 -0
  20. package/build/cjs/src/blog-v3-post.public.js +86 -0
  21. package/build/cjs/src/blog-v3-post.public.js.map +1 -0
  22. package/build/cjs/src/blog-v3-post.types.d.ts +2227 -0
  23. package/build/cjs/src/blog-v3-post.types.js +464 -0
  24. package/build/cjs/src/blog-v3-post.types.js.map +1 -0
  25. package/build/cjs/src/blog-v3-post.universal.d.ts +2488 -0
  26. package/build/cjs/src/blog-v3-post.universal.js +935 -0
  27. package/build/cjs/src/blog-v3-post.universal.js.map +1 -0
  28. package/build/cjs/src/blog-v3-tag.http.d.ts +45 -0
  29. package/build/cjs/src/blog-v3-tag.http.js +385 -0
  30. package/build/cjs/src/blog-v3-tag.http.js.map +1 -0
  31. package/build/cjs/src/blog-v3-tag.public.d.ts +10 -0
  32. package/build/cjs/src/blog-v3-tag.public.js +44 -0
  33. package/build/cjs/src/blog-v3-tag.public.js.map +1 -0
  34. package/build/cjs/src/blog-v3-tag.types.d.ts +345 -0
  35. package/build/cjs/src/blog-v3-tag.types.js +15 -0
  36. package/build/cjs/src/blog-v3-tag.types.js.map +1 -0
  37. package/build/cjs/src/blog-v3-tag.universal.d.ts +512 -0
  38. package/build/cjs/src/blog-v3-tag.universal.js +390 -0
  39. package/build/cjs/src/blog-v3-tag.universal.js.map +1 -0
  40. package/build/es/index.d.ts +3 -0
  41. package/build/es/index.js +4 -0
  42. package/build/es/index.js.map +1 -0
  43. package/build/es/src/blog-v3-category.http.d.ts +50 -0
  44. package/build/es/src/blog-v3-category.http.js +411 -0
  45. package/build/es/src/blog-v3-category.http.js.map +1 -0
  46. package/build/es/src/blog-v3-category.public.d.ts +11 -0
  47. package/build/es/src/blog-v3-category.public.js +38 -0
  48. package/build/es/src/blog-v3-category.public.js.map +1 -0
  49. package/build/es/src/blog-v3-category.types.d.ts +391 -0
  50. package/build/es/src/blog-v3-category.types.js +19 -0
  51. package/build/es/src/blog-v3-category.types.js.map +1 -0
  52. package/build/es/src/blog-v3-category.universal.d.ts +582 -0
  53. package/build/es/src/blog-v3-category.universal.js +431 -0
  54. package/build/es/src/blog-v3-category.universal.js.map +1 -0
  55. package/build/es/src/blog-v3-post.http.d.ts +81 -0
  56. package/build/es/src/blog-v3-post.http.js +834 -0
  57. package/build/es/src/blog-v3-post.http.js.map +1 -0
  58. package/build/es/src/blog-v3-post.public.d.ts +11 -0
  59. package/build/es/src/blog-v3-post.public.js +38 -0
  60. package/build/es/src/blog-v3-post.public.js.map +1 -0
  61. package/build/es/src/blog-v3-post.types.d.ts +2227 -0
  62. package/build/es/src/blog-v3-post.types.js +461 -0
  63. package/build/es/src/blog-v3-post.types.js.map +1 -0
  64. package/build/es/src/blog-v3-post.universal.d.ts +2488 -0
  65. package/build/es/src/blog-v3-post.universal.js +906 -0
  66. package/build/es/src/blog-v3-post.universal.js.map +1 -0
  67. package/build/es/src/blog-v3-tag.http.d.ts +45 -0
  68. package/build/es/src/blog-v3-tag.http.js +376 -0
  69. package/build/es/src/blog-v3-tag.http.js.map +1 -0
  70. package/build/es/src/blog-v3-tag.public.d.ts +10 -0
  71. package/build/es/src/blog-v3-tag.public.js +33 -0
  72. package/build/es/src/blog-v3-tag.public.js.map +1 -0
  73. package/build/es/src/blog-v3-tag.types.d.ts +345 -0
  74. package/build/es/src/blog-v3-tag.types.js +12 -0
  75. package/build/es/src/blog-v3-tag.types.js.map +1 -0
  76. package/build/es/src/blog-v3-tag.universal.d.ts +512 -0
  77. package/build/es/src/blog-v3-tag.universal.js +362 -0
  78. package/build/es/src/blog-v3-tag.universal.js.map +1 -0
  79. package/package.json +37 -0
@@ -0,0 +1,2488 @@
1
+ export declare const __debug: {
2
+ verboseLogging: {
3
+ on: () => boolean;
4
+ off: () => boolean;
5
+ };
6
+ };
7
+ export interface Post {
8
+ /**
9
+ * Post ID.
10
+ * @readonly
11
+ */
12
+ _id?: string;
13
+ /** Post title. */
14
+ title?: string;
15
+ /**
16
+ * Post excerpt.
17
+ * Can be selected by a site contributor. By default, it is extracted from the content text's first characters.
18
+ *
19
+ * Max: 140 characters.
20
+ */
21
+ excerpt?: string;
22
+ /**
23
+ * The post's content in plain text.
24
+ * @readonly
25
+ */
26
+ contentText?: string | null;
27
+ /** Date the post was first published. */
28
+ firstPublishedDate?: Date;
29
+ /**
30
+ * Date the post was last published.
31
+ * @readonly
32
+ */
33
+ lastPublishedDate?: Date;
34
+ /** Post URL. */
35
+ url?: string;
36
+ /**
37
+ * Part of a post's URL that refers to a specific post.
38
+ *
39
+ *
40
+ * For example, `'https:/example.com/posts/my-post-slug'`.
41
+ *
42
+ */
43
+ slug?: string;
44
+ /** Whether the post is marked as featured. */
45
+ featured?: boolean;
46
+ /** Whether the post is pinned. If `true`, post is placed at the top of the post list. */
47
+ pinned?: boolean;
48
+ /** [Category IDs](https://www.wix.com/velo/reference/wix-blog-backend/category) of the post. */
49
+ categoryIds?: string[];
50
+ /** Post owner's [member ID](https://www.wix.com/velo/reference/wix-members-backend). */
51
+ memberId?: string;
52
+ /**
53
+ * Hashtags that are scraped from post content.
54
+ * @readonly
55
+ */
56
+ hashtags?: string[];
57
+ /** Whether commenting on the post is enabled. */
58
+ commentingEnabled?: boolean;
59
+ /** Estimated reading time. */
60
+ minutesToRead?: number;
61
+ /** Image placed at the top of the blog page. Only displays on mobile devices. */
62
+ heroImage?: string;
63
+ /**
64
+ * IDs of [tags](https://www.wix.com/velo/reference/wix-blog-backend/tags) the post is tagged with.
65
+ * @readonly
66
+ */
67
+ tagIds?: string[];
68
+ /**
69
+ * IDs of posts related to the post.
70
+ * @readonly
71
+ */
72
+ relatedPostIds?: string[];
73
+ /**
74
+ * Pricing plan IDs.
75
+ *
76
+ *
77
+ * If a post is assigned to a specific pricing plan.
78
+ * @readonly
79
+ */
80
+ pricingPlanIds?: string[];
81
+ /** ID of the post's translations when [Wix Multilingual](https://support.wix.com/en/article/wix-multilingual-translating-your-blog) is installed on a site. All translations of a single post will share the same `translationId`. */
82
+ translationId?: string | null;
83
+ /** Language the post is written in. 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */
84
+ language?: string | null;
85
+ /** SEO data. */
86
+ seoData?: SeoSchema;
87
+ /** Post owner's [contact ID](https://www.wix.com/velo/reference/wix-crm-backend/contacts). */
88
+ contactId?: string | null;
89
+ /**
90
+ * Post rich content
91
+ * @readonly
92
+ */
93
+ richContent?: RichContent;
94
+ /**
95
+ * Post moderation details.
96
+ *
97
+ *
98
+ * Only relevant to posts submitted by [guest writers](https://support.wix.com/en/article/wix-blog-moderating-blog-posts-from-your-guest-writers). Guest writers have the ability to write posts but not publish them. These posts can be rejected or approved for publishing by a blog editor or site owner.
99
+ * @readonly
100
+ */
101
+ moderationDetails?: ModerationDetails;
102
+ /** Post cover media. */
103
+ media?: Media;
104
+ }
105
+ export interface CoverMedia extends CoverMediaMediaOneOf {
106
+ /** Whether cover media is displayed. */
107
+ displayed?: boolean;
108
+ /**
109
+ * Whether the cover media is custom.
110
+ *
111
+ * `false` if the cover media is the first image or video in the post. `true` if set to some other image or video.
112
+ */
113
+ custom?: boolean;
114
+ /** Image url. */
115
+ image?: string;
116
+ /** Video url. */
117
+ video?: string;
118
+ }
119
+ /** @oneof */
120
+ export interface CoverMediaMediaOneOf {
121
+ /** Image url. */
122
+ image?: string;
123
+ /** Video url. */
124
+ video?: string;
125
+ }
126
+ export interface PostCountInfo {
127
+ /**
128
+ * Total number of post comments
129
+ * @readonly
130
+ */
131
+ comments?: number;
132
+ /**
133
+ * Total number of post likes
134
+ * @readonly
135
+ */
136
+ likes?: number;
137
+ /**
138
+ * Total number of post views
139
+ * @readonly
140
+ */
141
+ views?: number;
142
+ }
143
+ export interface Metrics {
144
+ /**
145
+ * Total number of post comments.
146
+ * @readonly
147
+ */
148
+ comments?: number;
149
+ /**
150
+ * Total number of post likes.
151
+ * @readonly
152
+ */
153
+ likes?: number;
154
+ /**
155
+ * Total number of post views.
156
+ * @readonly
157
+ */
158
+ views?: number;
159
+ /**
160
+ * Total number of post ratings.
161
+ * @readonly
162
+ */
163
+ ratings?: number;
164
+ /**
165
+ * Average rating of post from 1 to 5.
166
+ * @readonly
167
+ */
168
+ rating?: number;
169
+ }
170
+ /**
171
+ * 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.
172
+ * The search engines use this information for ranking purposes, or to display snippets in the search results.
173
+ * 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.
174
+ */
175
+ export interface SeoSchema {
176
+ /** SEO tags information. */
177
+ tags?: Tag[];
178
+ /** SEO general settings. */
179
+ settings?: Settings;
180
+ }
181
+ export interface Tag {
182
+ /** SEO tag type. Supported values: `title`, `meta`, `script`, `link`. */
183
+ type?: string;
184
+ /** SEO tag attributes/properties (name, content, rel, href). */
185
+ props?: Record<string, any> | null;
186
+ /** Tag meta data, e.g. {height: 300, width: 240}. */
187
+ meta?: Record<string, any> | null;
188
+ /** Tag inner content e.g. `<title> inner content </title>`. */
189
+ children?: string;
190
+ /** Whether the tag is a custom tag. */
191
+ custom?: boolean;
192
+ /** Whether the tag is disabled. */
193
+ disabled?: boolean;
194
+ }
195
+ export interface Settings {
196
+ /** disable auto creation of 301 redirects on slug changes (enabled by default). */
197
+ preventAutoRedirect?: boolean;
198
+ }
199
+ export interface RichContent {
200
+ /** Node objects representing a rich content document. */
201
+ nodes?: Node[];
202
+ /** Object metadata. */
203
+ metadata?: Metadata;
204
+ /** Global styling for header, paragraph, block quote, and code block nodes in the object. */
205
+ documentStyle?: DocumentStyle;
206
+ }
207
+ export interface Node extends NodeDataOneOf {
208
+ /** 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. */
209
+ type?: NodeType;
210
+ /** Node ID. */
211
+ _id?: string;
212
+ /** A list of child nodes. */
213
+ nodes?: Node[];
214
+ /** Padding and background color styling for the node. */
215
+ style?: NodeStyle;
216
+ /** Data for a button node. */
217
+ buttonData?: ButtonData;
218
+ /** Data for a code block node. */
219
+ codeBlockData?: CodeBlockData;
220
+ /** Data for a divider node. */
221
+ dividerData?: DividerData;
222
+ /** Data for a file node. */
223
+ fileData?: FileData;
224
+ /** Data for a gallery node. */
225
+ galleryData?: GalleryData;
226
+ /** Data for a GIF node. */
227
+ gifData?: GIFData;
228
+ /** Data for a heading node. */
229
+ headingData?: HeadingData;
230
+ /** Data for an embedded HTML node. */
231
+ htmlData?: HTMLData;
232
+ /** Data for an image node. */
233
+ imageData?: ImageData;
234
+ /** Data for a link preview node. */
235
+ linkPreviewData?: LinkPreviewData;
236
+ /** Data for a map node. */
237
+ mapData?: MapData;
238
+ /** Data for a paragraph node. */
239
+ paragraphData?: ParagraphData;
240
+ /** Data for a poll node. */
241
+ pollData?: PollData;
242
+ /** Data for a text node. Used to apply decorations to text. */
243
+ textData?: TextData;
244
+ /** Data for an app embed node. */
245
+ appEmbedData?: AppEmbedData;
246
+ /** Data for a video node. */
247
+ videoData?: VideoData;
248
+ /** Data for an oEmbed node. */
249
+ embedData?: EmbedData;
250
+ /** Data for a collapsible list node. */
251
+ collapsibleListData?: CollapsibleListData;
252
+ /** Data for a table node. */
253
+ tableData?: TableData;
254
+ /** Data for a table cell node. */
255
+ tableCellData?: TableCellData;
256
+ /** Data for a custon external node. */
257
+ externalData?: Record<string, any> | null;
258
+ /** Data for an audio node. */
259
+ audioData?: AudioData;
260
+ /** Data for an ordered list node. */
261
+ orderedListData?: OrderedListData;
262
+ /** Data for a bulleted list node. */
263
+ bulletedListData?: BulletedListData;
264
+ /** Data for a block quote node. */
265
+ blockquoteData?: BlockquoteData;
266
+ }
267
+ /** @oneof */
268
+ export interface NodeDataOneOf {
269
+ /** Data for a button node. */
270
+ buttonData?: ButtonData;
271
+ /** Data for a code block node. */
272
+ codeBlockData?: CodeBlockData;
273
+ /** Data for a divider node. */
274
+ dividerData?: DividerData;
275
+ /** Data for a file node. */
276
+ fileData?: FileData;
277
+ /** Data for a gallery node. */
278
+ galleryData?: GalleryData;
279
+ /** Data for a GIF node. */
280
+ gifData?: GIFData;
281
+ /** Data for a heading node. */
282
+ headingData?: HeadingData;
283
+ /** Data for an embedded HTML node. */
284
+ htmlData?: HTMLData;
285
+ /** Data for an image node. */
286
+ imageData?: ImageData;
287
+ /** Data for a link preview node. */
288
+ linkPreviewData?: LinkPreviewData;
289
+ /** Data for a map node. */
290
+ mapData?: MapData;
291
+ /** Data for a paragraph node. */
292
+ paragraphData?: ParagraphData;
293
+ /** Data for a poll node. */
294
+ pollData?: PollData;
295
+ /** Data for a text node. Used to apply decorations to text. */
296
+ textData?: TextData;
297
+ /** Data for an app embed node. */
298
+ appEmbedData?: AppEmbedData;
299
+ /** Data for a video node. */
300
+ videoData?: VideoData;
301
+ /** Data for an oEmbed node. */
302
+ embedData?: EmbedData;
303
+ /** Data for a collapsible list node. */
304
+ collapsibleListData?: CollapsibleListData;
305
+ /** Data for a table node. */
306
+ tableData?: TableData;
307
+ /** Data for a table cell node. */
308
+ tableCellData?: TableCellData;
309
+ /** Data for a custon external node. */
310
+ externalData?: Record<string, any> | null;
311
+ /** Data for an audio node. */
312
+ audioData?: AudioData;
313
+ /** Data for an ordered list node. */
314
+ orderedListData?: OrderedListData;
315
+ /** Data for a bulleted list node. */
316
+ bulletedListData?: BulletedListData;
317
+ /** Data for a block quote node. */
318
+ blockquoteData?: BlockquoteData;
319
+ }
320
+ export declare enum NodeType {
321
+ PARAGRAPH = "PARAGRAPH",
322
+ TEXT = "TEXT",
323
+ HEADING = "HEADING",
324
+ BULLETED_LIST = "BULLETED_LIST",
325
+ ORDERED_LIST = "ORDERED_LIST",
326
+ LIST_ITEM = "LIST_ITEM",
327
+ BLOCKQUOTE = "BLOCKQUOTE",
328
+ CODE_BLOCK = "CODE_BLOCK",
329
+ VIDEO = "VIDEO",
330
+ DIVIDER = "DIVIDER",
331
+ FILE = "FILE",
332
+ GALLERY = "GALLERY",
333
+ GIF = "GIF",
334
+ HTML = "HTML",
335
+ IMAGE = "IMAGE",
336
+ LINK_PREVIEW = "LINK_PREVIEW",
337
+ MAP = "MAP",
338
+ POLL = "POLL",
339
+ APP_EMBED = "APP_EMBED",
340
+ BUTTON = "BUTTON",
341
+ COLLAPSIBLE_LIST = "COLLAPSIBLE_LIST",
342
+ TABLE = "TABLE",
343
+ EMBED = "EMBED",
344
+ COLLAPSIBLE_ITEM = "COLLAPSIBLE_ITEM",
345
+ COLLAPSIBLE_ITEM_TITLE = "COLLAPSIBLE_ITEM_TITLE",
346
+ COLLAPSIBLE_ITEM_BODY = "COLLAPSIBLE_ITEM_BODY",
347
+ TABLE_CELL = "TABLE_CELL",
348
+ TABLE_ROW = "TABLE_ROW",
349
+ EXTERNAL = "EXTERNAL",
350
+ AUDIO = "AUDIO"
351
+ }
352
+ export interface NodeStyle {
353
+ /** The top padding value in pixels. */
354
+ paddingTop?: string | null;
355
+ /** The bottom padding value in pixels. */
356
+ paddingBottom?: string | null;
357
+ /** The background color as a hexadecimal value. */
358
+ backgroundColor?: string | null;
359
+ }
360
+ export interface ButtonData {
361
+ /** Styling for the button's container. */
362
+ containerData?: PluginContainerData;
363
+ /** The button type. */
364
+ type?: Type;
365
+ /** Styling for the button. */
366
+ styles?: Styles;
367
+ /** The text to display on the button. */
368
+ text?: string | null;
369
+ /** Button link details. */
370
+ link?: Link;
371
+ }
372
+ export interface Border {
373
+ /** Border width in pixels. */
374
+ width?: number | null;
375
+ /** Border radius in pixels. */
376
+ radius?: number | null;
377
+ }
378
+ export interface Colors {
379
+ /** The text color as a hexadecimal value. */
380
+ text?: string | null;
381
+ /** The border color as a hexadecimal value. */
382
+ border?: string | null;
383
+ /** The background color as a hexadecimal value. */
384
+ background?: string | null;
385
+ }
386
+ export interface PluginContainerData {
387
+ /** The width of the node when it's displayed. */
388
+ width?: PluginContainerDataWidth;
389
+ /** The node's alignment within its container. */
390
+ alignment?: PluginContainerDataAlignment;
391
+ /** Spoiler cover settings for the node. */
392
+ spoiler?: Spoiler;
393
+ /** The height of the node when it's displayed. */
394
+ height?: Height;
395
+ /** 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. */
396
+ textWrap?: boolean | null;
397
+ }
398
+ export declare enum WidthType {
399
+ /** Width matches the content width */
400
+ CONTENT = "CONTENT",
401
+ /** Small Width */
402
+ SMALL = "SMALL",
403
+ /** Width will match the original asset width */
404
+ ORIGINAL = "ORIGINAL",
405
+ /** coast-to-coast display */
406
+ FULL_WIDTH = "FULL_WIDTH"
407
+ }
408
+ export interface PluginContainerDataWidth extends PluginContainerDataWidthDataOneOf {
409
+ /**
410
+ * One of the following predefined width options:
411
+ * `CONTENT`: The width of the container matches the content width.
412
+ * `SMALL`: Small width.
413
+ * `ORIGINAL`: The width of the container matches the original asset width.
414
+ * `FULL_WIDTH`: Full width.
415
+ */
416
+ size?: WidthType;
417
+ /** A custom width value in pixels. */
418
+ custom?: string | null;
419
+ }
420
+ /** @oneof */
421
+ export interface PluginContainerDataWidthDataOneOf {
422
+ /**
423
+ * One of the following predefined width options:
424
+ * `CONTENT`: The width of the container matches the content width.
425
+ * `SMALL`: Small width.
426
+ * `ORIGINAL`: The width of the container matches the original asset width.
427
+ * `FULL_WIDTH`: Full width.
428
+ */
429
+ size?: WidthType;
430
+ /** A custom width value in pixels. */
431
+ custom?: string | null;
432
+ }
433
+ export declare enum PluginContainerDataAlignment {
434
+ /** Center Alignment */
435
+ CENTER = "CENTER",
436
+ /** Left Alignment */
437
+ LEFT = "LEFT",
438
+ /** Right Alignment */
439
+ RIGHT = "RIGHT"
440
+ }
441
+ export interface Spoiler {
442
+ /** Sets whether the spoiler cover is enabled for this node. */
443
+ enabled?: boolean | null;
444
+ /** The description displayed on top of the spoiler cover. */
445
+ description?: string | null;
446
+ /** The text for the button used to remove the spoiler cover. */
447
+ buttonText?: string | null;
448
+ }
449
+ export interface Height {
450
+ /** A custom height value in pixels. */
451
+ custom?: string | null;
452
+ }
453
+ export declare enum Type {
454
+ /** Regular link button */
455
+ LINK = "LINK",
456
+ /** Triggers custom action that is defined in plugin configuration by the consumer */
457
+ ACTION = "ACTION"
458
+ }
459
+ export interface Styles {
460
+ /** Border attributes. */
461
+ border?: Border;
462
+ /** Color attributes. */
463
+ colors?: Colors;
464
+ }
465
+ export interface Link extends LinkDataOneOf {
466
+ /**
467
+ * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows:
468
+ * `SELF` - Default. Opens the linked document in the same frame as the link.
469
+ * `BLANK` - Opens the linked document in a new browser tab or window.
470
+ * `PARENT` - Opens the linked document in the link's parent frame.
471
+ * `TOP` - Opens the linked document in the full body of the link's browser tab or window.
472
+ */
473
+ target?: Target;
474
+ /** The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */
475
+ rel?: Rel;
476
+ /** A serialized object used for a custom or external link panel. */
477
+ customData?: string | null;
478
+ /** The absolute URL for the linked document. */
479
+ url?: string;
480
+ /** The target node's ID. Used for linking to another node in this object. */
481
+ anchor?: string;
482
+ }
483
+ /** @oneof */
484
+ export interface LinkDataOneOf {
485
+ /** The absolute URL for the linked document. */
486
+ url?: string;
487
+ /** The target node's ID. Used for linking to another node in this object. */
488
+ anchor?: string;
489
+ }
490
+ export declare enum Target {
491
+ /** Opens the linked document in the same frame as it was clicked (this is default) */
492
+ SELF = "SELF",
493
+ /** Opens the linked document in a new window or tab */
494
+ BLANK = "BLANK",
495
+ /** Opens the linked document in the parent frame */
496
+ PARENT = "PARENT",
497
+ /** Opens the linked document in the full body of the window */
498
+ TOP = "TOP"
499
+ }
500
+ export interface Rel {
501
+ /** Indicates to search engine crawlers not to follow the link. */
502
+ nofollow?: boolean | null;
503
+ /** Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. */
504
+ sponsored?: boolean | null;
505
+ /** 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. */
506
+ ugc?: boolean | null;
507
+ /** Indicates that this link protect referral information from being passed to the target website. */
508
+ noreferrer?: boolean | null;
509
+ }
510
+ export interface CodeBlockData {
511
+ /** Styling for the code block's text. */
512
+ textStyle?: TextStyle;
513
+ }
514
+ export interface TextStyle {
515
+ /** Text alignment. Defaults to `AUTO`. */
516
+ textAlignment?: TextAlignment;
517
+ /** A CSS `line-height` value for the text as a unitless ratio. */
518
+ lineHeight?: string | null;
519
+ }
520
+ export declare enum TextAlignment {
521
+ /** browser default, eqivalent to `initial` */
522
+ AUTO = "AUTO",
523
+ /** Left align */
524
+ LEFT = "LEFT",
525
+ /** Right align */
526
+ RIGHT = "RIGHT",
527
+ /** Center align */
528
+ CENTER = "CENTER",
529
+ /** 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 */
530
+ JUSTIFY = "JUSTIFY"
531
+ }
532
+ export interface DividerData {
533
+ /** Styling for the divider's container. */
534
+ containerData?: PluginContainerData;
535
+ /** Divider line style. */
536
+ lineStyle?: LineStyle;
537
+ /** Divider width. */
538
+ width?: Width;
539
+ /** Divider alignment. */
540
+ alignment?: Alignment;
541
+ }
542
+ export declare enum LineStyle {
543
+ /** Single Line */
544
+ SINGLE = "SINGLE",
545
+ /** Double Line */
546
+ DOUBLE = "DOUBLE",
547
+ /** Dashed Line */
548
+ DASHED = "DASHED",
549
+ /** Dotted Line */
550
+ DOTTED = "DOTTED"
551
+ }
552
+ export declare enum Width {
553
+ /** Large line */
554
+ LARGE = "LARGE",
555
+ /** Medium line */
556
+ MEDIUM = "MEDIUM",
557
+ /** Small line */
558
+ SMALL = "SMALL"
559
+ }
560
+ export declare enum Alignment {
561
+ /** Center alignment */
562
+ CENTER = "CENTER",
563
+ /** Left alignment */
564
+ LEFT = "LEFT",
565
+ /** Right alignment */
566
+ RIGHT = "RIGHT"
567
+ }
568
+ export interface FileData {
569
+ /** Styling for the file's container. */
570
+ containerData?: PluginContainerData;
571
+ /** The source for the file's data. */
572
+ src?: FileSource;
573
+ /** File name. */
574
+ name?: string | null;
575
+ /** File type. */
576
+ type?: string | null;
577
+ /** File size in KB. */
578
+ size?: number | null;
579
+ /** Settings for PDF files. */
580
+ pdfSettings?: PDFSettings;
581
+ /** File MIME type. */
582
+ mimeType?: string | null;
583
+ /** File path. */
584
+ path?: string | null;
585
+ }
586
+ export declare enum ViewMode {
587
+ /** No PDF view */
588
+ NONE = "NONE",
589
+ /** Full PDF view */
590
+ FULL = "FULL",
591
+ /** Mini PDF view */
592
+ MINI = "MINI"
593
+ }
594
+ export interface FileSource extends FileSourceDataOneOf {
595
+ /** Indicates whether the file's source is private. */
596
+ private?: boolean | null;
597
+ /** The absolute URL for the file's source. */
598
+ url?: string | null;
599
+ /** Custom ID. Use `id` instead. */
600
+ custom?: string | null;
601
+ /** An ID that's resolved to a URL by a resolver function. */
602
+ _id?: string | null;
603
+ }
604
+ /** @oneof */
605
+ export interface FileSourceDataOneOf {
606
+ /** The absolute URL for the file's source. */
607
+ url?: string | null;
608
+ /** Custom ID. Use `id` instead. */
609
+ custom?: string | null;
610
+ /** An ID that's resolved to a URL by a resolver function. */
611
+ _id?: string | null;
612
+ }
613
+ export interface PDFSettings {
614
+ /**
615
+ * PDF view mode. One of the following:
616
+ * `NONE` : The PDF isn't displayed.
617
+ * `FULL` : A full page view of the PDF is displayed.
618
+ * `MINI` : A mini view of the PDF is displayed.
619
+ */
620
+ viewMode?: ViewMode;
621
+ /** Sets whether the PDF download button is disabled. */
622
+ disableDownload?: boolean | null;
623
+ /** Sets whether the PDF print button is disabled. */
624
+ disablePrint?: boolean | null;
625
+ }
626
+ export interface GalleryData {
627
+ /** Styling for the gallery's container. */
628
+ containerData?: PluginContainerData;
629
+ /** The items in the gallery. */
630
+ items?: Item[];
631
+ /** Options for defining the gallery's appearance. */
632
+ options?: GalleryOptions;
633
+ /** Sets whether the gallery's expand button is disabled. */
634
+ disableExpand?: boolean | null;
635
+ /** Sets whether the gallery's download button is disabled. */
636
+ disableDownload?: boolean | null;
637
+ }
638
+ export interface V1Media {
639
+ /** The source for the media's data. */
640
+ src?: FileSource;
641
+ /** Media width in pixels. */
642
+ width?: number | null;
643
+ /** Media height in pixels. */
644
+ height?: number | null;
645
+ /** Media duration in seconds. Only relevant for audio and video files. */
646
+ duration?: number | null;
647
+ }
648
+ export interface Image {
649
+ /** Image file details. */
650
+ media?: V1Media;
651
+ /** Link details for images that are links. */
652
+ link?: Link;
653
+ }
654
+ export interface Video {
655
+ /** Video file details. */
656
+ media?: V1Media;
657
+ /** Video thumbnail file details. */
658
+ thumbnail?: V1Media;
659
+ }
660
+ export interface Item extends ItemDataOneOf {
661
+ /** Item title. */
662
+ title?: string | null;
663
+ /** Item's alternative text. */
664
+ altText?: string | null;
665
+ /** An image item. */
666
+ image?: Image;
667
+ /** A video item. */
668
+ video?: Video;
669
+ }
670
+ /** @oneof */
671
+ export interface ItemDataOneOf {
672
+ /** An image item. */
673
+ image?: Image;
674
+ /** A video item. */
675
+ video?: Video;
676
+ }
677
+ export interface GalleryOptions {
678
+ /** Gallery layout. */
679
+ layout?: Layout;
680
+ /** Styling for gallery items. */
681
+ item?: ItemStyle;
682
+ /** Styling for gallery thumbnail images. */
683
+ thumbnails?: Thumbnails;
684
+ }
685
+ export declare enum LayoutType {
686
+ /** Collage type */
687
+ COLLAGE = "COLLAGE",
688
+ /** Masonry type */
689
+ MASONRY = "MASONRY",
690
+ /** Grid type */
691
+ GRID = "GRID",
692
+ /** Thumbnail type */
693
+ THUMBNAIL = "THUMBNAIL",
694
+ /** Slider type */
695
+ SLIDER = "SLIDER",
696
+ /** Slideshow type */
697
+ SLIDESHOW = "SLIDESHOW",
698
+ /** Panorama type */
699
+ PANORAMA = "PANORAMA",
700
+ /** Column type */
701
+ COLUMN = "COLUMN",
702
+ /** Magic type */
703
+ MAGIC = "MAGIC",
704
+ /** Fullsize images type */
705
+ FULLSIZE = "FULLSIZE"
706
+ }
707
+ export declare enum Orientation {
708
+ /** Rows Orientation */
709
+ ROWS = "ROWS",
710
+ /** Columns Orientation */
711
+ COLUMNS = "COLUMNS"
712
+ }
713
+ export declare enum Crop {
714
+ /** Crop to fill */
715
+ FILL = "FILL",
716
+ /** Crop to fit */
717
+ FIT = "FIT"
718
+ }
719
+ export declare enum ThumbnailsAlignment {
720
+ /** Top alignment */
721
+ TOP = "TOP",
722
+ /** Right alignment */
723
+ RIGHT = "RIGHT",
724
+ /** Bottom alignment */
725
+ BOTTOM = "BOTTOM",
726
+ /** Left alignment */
727
+ LEFT = "LEFT",
728
+ /** No thumbnail */
729
+ NONE = "NONE"
730
+ }
731
+ export interface Layout {
732
+ /** Gallery layout type. */
733
+ type?: LayoutType;
734
+ /** Sets whether horizontal scroll is enabled. */
735
+ horizontalScroll?: boolean | null;
736
+ /** Gallery orientation. */
737
+ orientation?: Orientation;
738
+ /** The number of columns to display on full size screens. */
739
+ numberOfColumns?: number | null;
740
+ /** The number of columns to display on mobile screens. */
741
+ mobileNumberOfColumns?: number | null;
742
+ }
743
+ export interface ItemStyle {
744
+ /** Desirable dimension for each item in pixels (behvaior changes according to gallery type) */
745
+ targetSize?: number | null;
746
+ /** Item ratio */
747
+ ratio?: number | null;
748
+ /** Sets how item images are cropped. */
749
+ crop?: Crop;
750
+ /** The spacing between items in pixels. */
751
+ spacing?: number | null;
752
+ }
753
+ export interface Thumbnails {
754
+ /** Thumbnail alignment. */
755
+ placement?: ThumbnailsAlignment;
756
+ /** Spacing between thumbnails in pixels. */
757
+ spacing?: number | null;
758
+ }
759
+ export interface GIFData {
760
+ /** Styling for the GIF's container. */
761
+ containerData?: PluginContainerData;
762
+ /** The source of the full size GIF. */
763
+ original?: GIF;
764
+ /** The source of the downsized GIF. */
765
+ downsized?: GIF;
766
+ /** Height in pixels. */
767
+ height?: number;
768
+ /** Width in pixels. */
769
+ width?: number;
770
+ }
771
+ export interface GIF {
772
+ /** GIF format URL. */
773
+ gif?: string | null;
774
+ /** MP4 format URL. */
775
+ mp4?: string | null;
776
+ /** Thumbnail URL. */
777
+ still?: string | null;
778
+ }
779
+ export interface HeadingData {
780
+ /** Heading level from 1-6. */
781
+ level?: number;
782
+ /** Styling for the heading text. */
783
+ textStyle?: TextStyle;
784
+ /** Indentation level from 1-6. */
785
+ indentation?: number | null;
786
+ }
787
+ export interface HTMLData extends HTMLDataDataOneOf {
788
+ /** Styling for the HTML node's container. */
789
+ containerData?: PluginContainerData;
790
+ /** The type of HTML code. */
791
+ source?: Source;
792
+ /** The URL for the HTML code for the node. */
793
+ url?: string;
794
+ /** The HTML code for the node. */
795
+ html?: string;
796
+ /** Whether this is an AdSense element. Use `source` instead. */
797
+ isAdsense?: boolean | null;
798
+ }
799
+ /** @oneof */
800
+ export interface HTMLDataDataOneOf {
801
+ /** The URL for the HTML code for the node. */
802
+ url?: string;
803
+ /** The HTML code for the node. */
804
+ html?: string;
805
+ /** Whether this is an AdSense element. Use `source` instead. */
806
+ isAdsense?: boolean | null;
807
+ }
808
+ export declare enum Source {
809
+ HTML = "HTML",
810
+ ADSENSE = "ADSENSE"
811
+ }
812
+ export interface ImageData {
813
+ /** Styling for the image's container. */
814
+ containerData?: PluginContainerData;
815
+ /** Image file details. */
816
+ image?: V1Media;
817
+ /** Link details for images that are links. */
818
+ link?: Link;
819
+ /** Sets whether the image expands to full screen when clicked. */
820
+ disableExpand?: boolean | null;
821
+ /** Image's alternative text. */
822
+ altText?: string | null;
823
+ /** Image caption. */
824
+ caption?: string | null;
825
+ /** Sets whether the image's download button is disabled. */
826
+ disableDownload?: boolean | null;
827
+ }
828
+ export interface LinkPreviewData {
829
+ /** Styling for the link preview's container. */
830
+ containerData?: PluginContainerData;
831
+ /** Link details. */
832
+ link?: Link;
833
+ /** Preview title. */
834
+ title?: string | null;
835
+ /** Preview thumbnail URL. */
836
+ thumbnailUrl?: string | null;
837
+ /** Preview description. */
838
+ description?: string | null;
839
+ /** The preview content as HTML. */
840
+ html?: string | null;
841
+ }
842
+ export interface MapData {
843
+ /** Styling for the map's container. */
844
+ containerData?: PluginContainerData;
845
+ /** Map settings. */
846
+ mapSettings?: MapSettings;
847
+ }
848
+ export interface MapSettings {
849
+ /** The address to display on the map. */
850
+ address?: string | null;
851
+ /** Sets whether the map is draggable. */
852
+ draggable?: boolean | null;
853
+ /** Sets whether the location marker is visible. */
854
+ marker?: boolean | null;
855
+ /** Sets whether street view control is enabled. */
856
+ streetViewControl?: boolean | null;
857
+ /** Sets whether zoom control is enabled. */
858
+ zoomControl?: boolean | null;
859
+ /** Location latitude. */
860
+ lat?: number | null;
861
+ /** Location longitude. */
862
+ lng?: number | null;
863
+ /** Location name. */
864
+ locationName?: string | null;
865
+ /** Sets whether view mode control is enabled. */
866
+ viewModeControl?: boolean | null;
867
+ /** Initial zoom value. */
868
+ initialZoom?: number | null;
869
+ /** Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */
870
+ mapType?: MapType;
871
+ }
872
+ export declare enum MapType {
873
+ /** Roadmap map type */
874
+ ROADMAP = "ROADMAP",
875
+ /** Satellite map type */
876
+ SATELITE = "SATELITE",
877
+ /** Hybrid map type */
878
+ HYBRID = "HYBRID",
879
+ /** Terrain map type */
880
+ TERRAIN = "TERRAIN"
881
+ }
882
+ export interface ParagraphData {
883
+ /** Styling for the paragraph text. */
884
+ textStyle?: TextStyle;
885
+ /** Indentation level from 1-6. */
886
+ indentation?: number | null;
887
+ }
888
+ export interface PollData {
889
+ /** Styling for the poll's container. */
890
+ containerData?: PluginContainerData;
891
+ /** Poll data. */
892
+ poll?: Poll;
893
+ /** Layout settings for the poll and voting options. */
894
+ layout?: PollDataLayout;
895
+ /** Styling for the poll and voting options. */
896
+ design?: Design;
897
+ }
898
+ export declare enum ViewRole {
899
+ /** Only Poll creator can view the results */
900
+ CREATOR = "CREATOR",
901
+ /** Anyone who voted can see the results */
902
+ VOTERS = "VOTERS",
903
+ /** Anyone can see the results, even if one didn't vote */
904
+ EVERYONE = "EVERYONE"
905
+ }
906
+ export declare enum VoteRole {
907
+ /** Logged in member */
908
+ SITE_MEMBERS = "SITE_MEMBERS",
909
+ /** Anyone */
910
+ ALL = "ALL"
911
+ }
912
+ export interface Permissions {
913
+ /** Sets who can view the poll results. */
914
+ view?: ViewRole;
915
+ /** Sets who can vote. */
916
+ vote?: VoteRole;
917
+ /** Sets whether one voter can vote multiple times. */
918
+ allowMultipleVotes?: boolean | null;
919
+ }
920
+ export interface Option {
921
+ /** Option ID. */
922
+ _id?: string | null;
923
+ /** Option title. */
924
+ title?: string | null;
925
+ /** The image displayed with the option. */
926
+ image?: V1Media;
927
+ }
928
+ export interface PollSettings {
929
+ /** Permissions settings for voting. */
930
+ permissions?: Permissions;
931
+ /** Sets whether voters are displayed in the vote results. */
932
+ showVoters?: boolean | null;
933
+ /** Sets whether the vote count is displayed. */
934
+ showVotesCount?: boolean | null;
935
+ }
936
+ export declare enum PollLayoutType {
937
+ /** List */
938
+ LIST = "LIST",
939
+ /** Grid */
940
+ GRID = "GRID"
941
+ }
942
+ export declare enum PollLayoutDirection {
943
+ /** Left-to-right */
944
+ LTR = "LTR",
945
+ /** Right-to-left */
946
+ RTL = "RTL"
947
+ }
948
+ export interface PollLayout {
949
+ /** The layout for displaying the voting options. */
950
+ type?: PollLayoutType;
951
+ /** The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */
952
+ direction?: PollLayoutDirection;
953
+ /** Sets whether to display the main poll image. */
954
+ enableImage?: boolean | null;
955
+ }
956
+ export interface OptionLayout {
957
+ /** Sets whether to display option images. */
958
+ enableImage?: boolean | null;
959
+ }
960
+ export declare enum BackgroundType {
961
+ /** Color background type */
962
+ COLOR = "COLOR",
963
+ /** Image background type */
964
+ IMAGE = "IMAGE",
965
+ /** Gradiant background type */
966
+ GRADIENT = "GRADIENT"
967
+ }
968
+ export interface Gradient {
969
+ /** The gradient angle in degrees. */
970
+ angle?: number | null;
971
+ /** The start color as a hexademical value. */
972
+ startColor?: string | null;
973
+ /** The end color as a hexademical value. */
974
+ lastColor?: string | null;
975
+ }
976
+ export interface Background extends BackgroundBackgroundOneOf {
977
+ /** Background type. For each option, include the relevant details. */
978
+ type?: BackgroundType;
979
+ /** The background color as a hexademical value. */
980
+ color?: string | null;
981
+ /** An image to use for the background. */
982
+ image?: V1Media;
983
+ /** Details for a gradient background. */
984
+ gradient?: Gradient;
985
+ }
986
+ /** @oneof */
987
+ export interface BackgroundBackgroundOneOf {
988
+ /** The background color as a hexademical value. */
989
+ color?: string | null;
990
+ /** An image to use for the background. */
991
+ image?: V1Media;
992
+ /** Details for a gradient background. */
993
+ gradient?: Gradient;
994
+ }
995
+ export interface PollDesign {
996
+ /** Background styling. */
997
+ background?: Background;
998
+ /** Border radius in pixels. */
999
+ borderRadius?: number | null;
1000
+ }
1001
+ export interface OptionDesign {
1002
+ /** Border radius in pixels. */
1003
+ borderRadius?: number | null;
1004
+ }
1005
+ export interface Poll {
1006
+ /** Poll ID. */
1007
+ _id?: string | null;
1008
+ /** Poll title. */
1009
+ title?: string | null;
1010
+ /** Poll creator ID. */
1011
+ creatorId?: string | null;
1012
+ /** Main poll image. */
1013
+ image?: V1Media;
1014
+ /** Voting options. */
1015
+ options?: Option[];
1016
+ /** The poll's permissions and display settings. */
1017
+ settings?: PollSettings;
1018
+ }
1019
+ export interface PollDataLayout {
1020
+ /** Poll layout settings. */
1021
+ poll?: PollLayout;
1022
+ /** Voting otpions layout settings. */
1023
+ options?: OptionLayout;
1024
+ }
1025
+ export interface Design {
1026
+ /** Styling for the poll. */
1027
+ poll?: PollDesign;
1028
+ /** Styling for voting options. */
1029
+ options?: OptionDesign;
1030
+ }
1031
+ export interface TextData {
1032
+ /** The text to apply decorations to. */
1033
+ text?: string;
1034
+ /** The decorations to apply. */
1035
+ decorations?: Decoration[];
1036
+ }
1037
+ /** Adds appearence changes to text */
1038
+ export interface Decoration extends DecorationDataOneOf {
1039
+ /** The type of decoration to apply. */
1040
+ type?: DecorationType;
1041
+ /** Data for an anchor link decoration. */
1042
+ anchorData?: AnchorData;
1043
+ /** Data for a color decoration. */
1044
+ colorData?: ColorData;
1045
+ /** Data for an external link decoration. */
1046
+ linkData?: LinkData;
1047
+ /** Data for a mention decoration. */
1048
+ mentionData?: MentionData;
1049
+ /** Data for a font size decoration. */
1050
+ fontSizeData?: FontSizeData;
1051
+ /** Font weight for a bold decoration. */
1052
+ fontWeightValue?: number | null;
1053
+ /** Data for an italic decoration. */
1054
+ italicData?: boolean | null;
1055
+ /** Data for an underline decoration. */
1056
+ underlineData?: boolean | null;
1057
+ }
1058
+ /** @oneof */
1059
+ export interface DecorationDataOneOf {
1060
+ /** Data for an anchor link decoration. */
1061
+ anchorData?: AnchorData;
1062
+ /** Data for a color decoration. */
1063
+ colorData?: ColorData;
1064
+ /** Data for an external link decoration. */
1065
+ linkData?: LinkData;
1066
+ /** Data for a mention decoration. */
1067
+ mentionData?: MentionData;
1068
+ /** Data for a font size decoration. */
1069
+ fontSizeData?: FontSizeData;
1070
+ /** Font weight for a bold decoration. */
1071
+ fontWeightValue?: number | null;
1072
+ /** Data for an italic decoration. */
1073
+ italicData?: boolean | null;
1074
+ /** Data for an underline decoration. */
1075
+ underlineData?: boolean | null;
1076
+ }
1077
+ export declare enum DecorationType {
1078
+ BOLD = "BOLD",
1079
+ ITALIC = "ITALIC",
1080
+ UNDERLINE = "UNDERLINE",
1081
+ SPOILER = "SPOILER",
1082
+ ANCHOR = "ANCHOR",
1083
+ MENTION = "MENTION",
1084
+ LINK = "LINK",
1085
+ COLOR = "COLOR",
1086
+ FONT_SIZE = "FONT_SIZE",
1087
+ EXTERNAL = "EXTERNAL"
1088
+ }
1089
+ export interface AnchorData {
1090
+ /** The target node's ID. */
1091
+ anchor?: string;
1092
+ }
1093
+ export interface ColorData {
1094
+ /** The text's background color as a hexadecimal value. */
1095
+ background?: string | null;
1096
+ /** The text's foreground color as a hexadecimal value. */
1097
+ foreground?: string | null;
1098
+ }
1099
+ export interface LinkData {
1100
+ /** Link details. */
1101
+ link?: Link;
1102
+ }
1103
+ export interface MentionData {
1104
+ /** The mentioned user's name. */
1105
+ name?: string;
1106
+ /** The version of the user's name that appears after the `@` character in the mention. */
1107
+ slug?: string;
1108
+ /** Mentioned user's ID. */
1109
+ _id?: string | null;
1110
+ }
1111
+ export interface FontSizeData {
1112
+ /** The units used for the font size. */
1113
+ unit?: FontType;
1114
+ /** Font size value. */
1115
+ value?: number | null;
1116
+ }
1117
+ export declare enum FontType {
1118
+ PX = "PX",
1119
+ EM = "EM"
1120
+ }
1121
+ export interface AppEmbedData extends AppEmbedDataAppDataOneOf {
1122
+ /** The type of Wix App content being embedded. */
1123
+ type?: AppType;
1124
+ /** The ID of the embedded content. */
1125
+ itemId?: string | null;
1126
+ /** The name of the embedded content. */
1127
+ name?: string | null;
1128
+ /** Deprecated: Use `image` instead. */
1129
+ imageSrc?: string | null;
1130
+ /** The URL for the embedded content. */
1131
+ url?: string | null;
1132
+ /** An image for the embedded content. */
1133
+ image?: V1Media;
1134
+ /** Data for embedded Wix Bookings content. */
1135
+ bookingData?: BookingData;
1136
+ /** Data for embedded Wix Events content. */
1137
+ eventData?: EventData;
1138
+ }
1139
+ /** @oneof */
1140
+ export interface AppEmbedDataAppDataOneOf {
1141
+ /** Data for embedded Wix Bookings content. */
1142
+ bookingData?: BookingData;
1143
+ /** Data for embedded Wix Events content. */
1144
+ eventData?: EventData;
1145
+ }
1146
+ export declare enum AppType {
1147
+ PRODUCT = "PRODUCT",
1148
+ EVENT = "EVENT",
1149
+ BOOKING = "BOOKING"
1150
+ }
1151
+ export interface BookingData {
1152
+ /** Booking duration in minutes. */
1153
+ durations?: string | null;
1154
+ }
1155
+ export interface EventData {
1156
+ /** Event schedule. */
1157
+ scheduling?: string | null;
1158
+ /** Event location. */
1159
+ location?: string | null;
1160
+ }
1161
+ export interface VideoData {
1162
+ /** Styling for the video's container. */
1163
+ containerData?: PluginContainerData;
1164
+ /** Video details. */
1165
+ video?: V1Media;
1166
+ /** Video thumbnail details. */
1167
+ thumbnail?: V1Media;
1168
+ /** Sets whether the video's download button is disabled. */
1169
+ disableDownload?: boolean | null;
1170
+ /** Video title. */
1171
+ title?: string | null;
1172
+ }
1173
+ export interface EmbedData {
1174
+ /** Styling for the oEmbed node's container. */
1175
+ containerData?: PluginContainerData;
1176
+ /** An [oEmbed](https://www.oembed.com) object. */
1177
+ oembed?: Oembed;
1178
+ /** Origin asset source. */
1179
+ src?: string | null;
1180
+ }
1181
+ export interface Oembed {
1182
+ /** The resource type. */
1183
+ type?: string | null;
1184
+ /** The width of the resource specified in the `url` property in pixels. */
1185
+ width?: number | null;
1186
+ /** The height of the resource specified in the `url` property in pixels. */
1187
+ height?: number | null;
1188
+ /** Resource title. */
1189
+ title?: string | null;
1190
+ /** The source URL for the resource. */
1191
+ url?: string | null;
1192
+ /** HTML for embedding a video player. The HTML should have no padding or margins. */
1193
+ html?: string | null;
1194
+ /** The name of the author or owner of the resource. */
1195
+ authorName?: string | null;
1196
+ /** The URL for the author or owner of the resource. */
1197
+ authorUrl?: string | null;
1198
+ /** The name of the resource provider. */
1199
+ providerName?: string | null;
1200
+ /** The URL for the resource provider. */
1201
+ providerUrl?: string | null;
1202
+ /** The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */
1203
+ thumbnailUrl?: string | null;
1204
+ /** The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */
1205
+ thumbnailWidth?: string | null;
1206
+ /** The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */
1207
+ thumbnailHeight?: string | null;
1208
+ /** The URL for an embedded viedo. */
1209
+ videoUrl?: string | null;
1210
+ /** The oEmbed version number. This value must be `1.0`. */
1211
+ version?: string | null;
1212
+ }
1213
+ export interface CollapsibleListData {
1214
+ /** Styling for the collapsible list's container. */
1215
+ containerData?: PluginContainerData;
1216
+ /** If `true`, only one item can be expanded at a time. */
1217
+ expandOnlyOne?: boolean | null;
1218
+ /** Sets which items are expanded when the page loads. */
1219
+ initialExpandedItems?: InitialExpandedItems;
1220
+ /** The direction of the text in the list. Either left-to-right or right-to-left. */
1221
+ direction?: Direction;
1222
+ /** If `true`, The collapsible item will appear in search results as an FAQ. */
1223
+ isQapageData?: boolean | null;
1224
+ }
1225
+ export declare enum InitialExpandedItems {
1226
+ /** First item will be expended initally */
1227
+ FIRST = "FIRST",
1228
+ /** All items will expended initally */
1229
+ ALL = "ALL",
1230
+ /** All items collapsed initally */
1231
+ NONE = "NONE"
1232
+ }
1233
+ export declare enum Direction {
1234
+ /** Left-to-right */
1235
+ LTR = "LTR",
1236
+ /** Right-to-left */
1237
+ RTL = "RTL"
1238
+ }
1239
+ export interface TableData {
1240
+ /** Styling for the table's container. */
1241
+ containerData?: PluginContainerData;
1242
+ /** The table's dimensions. */
1243
+ dimensions?: Dimensions;
1244
+ /** Deprecated: Use `rowHeader` and `columnHeader` instead. */
1245
+ header?: boolean | null;
1246
+ /** Sets whether the table's first row is a header. */
1247
+ rowHeader?: boolean | null;
1248
+ /** Sets whether the table's first column is a header. */
1249
+ columnHeader?: boolean | null;
1250
+ }
1251
+ export interface Dimensions {
1252
+ /** An array representing relative width of each column in relation to the other columns. */
1253
+ colsWidthRatio?: number[];
1254
+ /** An array representing the height of each row in pixels. */
1255
+ rowsHeight?: number[];
1256
+ /** An array representing the minimum width of each column in pixels. */
1257
+ colsMinWidth?: number[];
1258
+ }
1259
+ export interface TableCellData {
1260
+ /** Styling for the cell's background color and text alignment. */
1261
+ cellStyle?: CellStyle;
1262
+ /** The cell's border colors. */
1263
+ borderColors?: BorderColors;
1264
+ }
1265
+ export declare enum VerticalAlignment {
1266
+ /** Top alignment */
1267
+ TOP = "TOP",
1268
+ /** Middle alignment */
1269
+ MIDDLE = "MIDDLE",
1270
+ /** Bottom alignment */
1271
+ BOTTOM = "BOTTOM"
1272
+ }
1273
+ export interface CellStyle {
1274
+ /** Vertical alignment for the cell's text. */
1275
+ verticalAlignment?: VerticalAlignment;
1276
+ /** Cell background color as a hexadecimal value. */
1277
+ backgroundColor?: string | null;
1278
+ }
1279
+ export interface BorderColors {
1280
+ /** Left border color as a hexadecimal value. */
1281
+ left?: string | null;
1282
+ /** Right border color as a hexadecimal value. */
1283
+ right?: string | null;
1284
+ /** Top border color as a hexadecimal value. */
1285
+ top?: string | null;
1286
+ /** Bottom border color as a hexadecimal value. */
1287
+ bottom?: string | null;
1288
+ }
1289
+ /**
1290
+ * `NullValue` is a singleton enumeration to represent the null value for the
1291
+ * `Value` type union.
1292
+ *
1293
+ * The JSON representation for `NullValue` is JSON `null`.
1294
+ */
1295
+ export declare enum NullValue {
1296
+ /** Null value. */
1297
+ NULL_VALUE = "NULL_VALUE"
1298
+ }
1299
+ /**
1300
+ * `ListValue` is a wrapper around a repeated field of values.
1301
+ *
1302
+ * The JSON representation for `ListValue` is JSON array.
1303
+ */
1304
+ export interface ListValue {
1305
+ /** Repeated field of dynamically typed values. */
1306
+ values?: any[];
1307
+ }
1308
+ export interface AudioData {
1309
+ /** Styling for the audio node's container. */
1310
+ containerData?: PluginContainerData;
1311
+ /** Audio file details. */
1312
+ audio?: V1Media;
1313
+ /** Sets whether the audio node's download button is disabled. */
1314
+ disableDownload?: boolean | null;
1315
+ /** Cover image. */
1316
+ coverImage?: V1Media;
1317
+ /** Track name. */
1318
+ name?: string | null;
1319
+ /** Author name. */
1320
+ authorName?: string | null;
1321
+ /** An HTML version of the audio node. */
1322
+ html?: string | null;
1323
+ }
1324
+ export interface OrderedListData {
1325
+ /** Indentation level. */
1326
+ indentation?: number;
1327
+ }
1328
+ export interface BulletedListData {
1329
+ /** Indentation level. */
1330
+ indentation?: number;
1331
+ }
1332
+ export interface BlockquoteData {
1333
+ /** Indentation level. */
1334
+ indentation?: number;
1335
+ }
1336
+ export interface Metadata {
1337
+ /** Schema version. */
1338
+ version?: number;
1339
+ /**
1340
+ * When the object was created.
1341
+ * @readonly
1342
+ */
1343
+ createdTimestamp?: Date;
1344
+ /** When the object was most recently updated. */
1345
+ updatedTimestamp?: Date;
1346
+ /** Object ID. */
1347
+ _id?: string | null;
1348
+ }
1349
+ export interface DocumentStyle {
1350
+ /** Styling for H1 nodes. */
1351
+ headerOne?: TextNodeStyle;
1352
+ /** Styling for H2 nodes. */
1353
+ headerTwo?: TextNodeStyle;
1354
+ /** Styling for H3 nodes. */
1355
+ headerThree?: TextNodeStyle;
1356
+ /** Styling for H4 nodes. */
1357
+ headerFour?: TextNodeStyle;
1358
+ /** Styling for H5 nodes. */
1359
+ headerFive?: TextNodeStyle;
1360
+ /** Styling for H6 nodes. */
1361
+ headerSix?: TextNodeStyle;
1362
+ /** Styling for paragraph nodes. */
1363
+ paragraph?: TextNodeStyle;
1364
+ /** Styling for block quote nodes. */
1365
+ blockquote?: TextNodeStyle;
1366
+ /** Styling for code block nodes. */
1367
+ codeBlock?: TextNodeStyle;
1368
+ }
1369
+ export interface TextNodeStyle {
1370
+ /** The decorations to apply to the node. */
1371
+ decorations?: Decoration[];
1372
+ /** Padding and background color for the node. */
1373
+ nodeStyle?: NodeStyle;
1374
+ /** Line height for text in the node. */
1375
+ lineHeight?: string | null;
1376
+ }
1377
+ export interface ModerationDetails {
1378
+ /** Member ID of the person who submitted the post. */
1379
+ submittedBy?: string;
1380
+ /** Date and time the post was submitted for moderation. */
1381
+ submittedDate?: Date;
1382
+ /**
1383
+ * Status indicating whether the submission was approved or rejected by the moderator.
1384
+ *
1385
+ * Supported values: `'APPROVED'`, `'REJECTED'`, `'PENDING'`.
1386
+ */
1387
+ status?: ModerationStatusStatus;
1388
+ /** Member ID of the person who approved or rejected the post. */
1389
+ moderatedBy?: string | null;
1390
+ /** Date and time the post was approved or rejected by a moderator. */
1391
+ moderationDate?: Date;
1392
+ }
1393
+ export declare enum ModerationStatusStatus {
1394
+ UNKNOWN = "UNKNOWN",
1395
+ APPROVED = "APPROVED",
1396
+ REJECTED = "REJECTED"
1397
+ }
1398
+ export interface Media extends MediaMediaOneOf {
1399
+ /** Whether cover media is displayed. */
1400
+ displayed?: boolean;
1401
+ /** Whether cover media is custom, i.e. not resolved as first media item appearing in content. */
1402
+ custom?: boolean;
1403
+ /** Wix Media details. */
1404
+ wixMedia?: WixMedia;
1405
+ /** Embed media details. */
1406
+ embedMedia?: EmbedMedia;
1407
+ }
1408
+ /** @oneof */
1409
+ export interface MediaMediaOneOf {
1410
+ /** Wix Media details. */
1411
+ wixMedia?: WixMedia;
1412
+ /** Embed media details. */
1413
+ embedMedia?: EmbedMedia;
1414
+ }
1415
+ export interface WixMedia {
1416
+ /** Thumbnail or image details. */
1417
+ image?: string;
1418
+ /** Video details. Optional */
1419
+ videoV2?: string;
1420
+ }
1421
+ export interface VideoResolution {
1422
+ /** Video URL. */
1423
+ url?: string;
1424
+ /** Video height. */
1425
+ height?: number;
1426
+ /** Video width. */
1427
+ width?: number;
1428
+ /** Video format for example, mp4, hls. */
1429
+ format?: string;
1430
+ }
1431
+ export interface EmbedMedia {
1432
+ /** Thumbnail details. */
1433
+ thumbnail?: EmbedThumbnail;
1434
+ /** Video details. */
1435
+ video?: EmbedVideo;
1436
+ }
1437
+ export interface EmbedThumbnail {
1438
+ /** Thumbnail url. */
1439
+ url?: string;
1440
+ /** Thumbnail width. */
1441
+ width?: number;
1442
+ /** Thumbnail height. */
1443
+ height?: number;
1444
+ }
1445
+ export interface EmbedVideo {
1446
+ /** Video url. */
1447
+ url?: string;
1448
+ /** Video width. */
1449
+ width?: number;
1450
+ /** Video height. */
1451
+ height?: number;
1452
+ }
1453
+ export interface ListTemplatesRequest {
1454
+ /** Filter post templates by given template category ids */
1455
+ categoryIds?: string[];
1456
+ /** Filter post templates by provided language */
1457
+ language?: string | null;
1458
+ /** Returns post template categories when set to TRUE */
1459
+ listTemplateCategories?: boolean;
1460
+ /** Sort order by ascending/descending publish date. Default is ascending publish date sort */
1461
+ sort?: GetPostTemplatesSort;
1462
+ /** Pagination options. */
1463
+ paging?: BlogPaging;
1464
+ }
1465
+ export declare enum GetPostTemplatesSort {
1466
+ /** Sorting by publishing date ascending */
1467
+ PUBLISHED_DATE_ASC = "PUBLISHED_DATE_ASC",
1468
+ /** Sorting by publishing date descending */
1469
+ PUBLISHED_DATE_DESC = "PUBLISHED_DATE_DESC"
1470
+ }
1471
+ export interface BlogPaging {
1472
+ /** Number of items to skip in the current sort order. */
1473
+ offset?: number;
1474
+ /**
1475
+ * Number of items to return.
1476
+ *
1477
+ *
1478
+ * Default:`50`.
1479
+ */
1480
+ limit?: number;
1481
+ /** Pointer to the next or previous page in the list of results. */
1482
+ cursor?: string | null;
1483
+ }
1484
+ export interface ListTemplatesResponse {
1485
+ /** Available post templates */
1486
+ postTemplates?: Post[];
1487
+ /** Details on the paged set of posts templates returned. */
1488
+ postTemplatesMetaData?: MetaData;
1489
+ /** Post template categories. This value is returned empty unless asked explicitly */
1490
+ templateCategories?: Category[];
1491
+ }
1492
+ export interface MetaData {
1493
+ /** Number of items returned in this response. */
1494
+ count?: number;
1495
+ /**
1496
+ * Number of items skipped in the current sort order.
1497
+ *
1498
+ *
1499
+ */
1500
+ offset?: number;
1501
+ /** Total number of items that match the query. */
1502
+ total?: number;
1503
+ /** Pointer to the next or previous page in the list of results. */
1504
+ cursor?: string | null;
1505
+ }
1506
+ export interface Category {
1507
+ /**
1508
+ * Category ID.
1509
+ * @readonly
1510
+ */
1511
+ _id?: string;
1512
+ /** Category label. Displayed in the Category Menu. */
1513
+ label?: string;
1514
+ /**
1515
+ * Number of posts in the category.
1516
+ * @readonly
1517
+ */
1518
+ postCount?: number;
1519
+ /**
1520
+ * Category URL.
1521
+ * @readonly
1522
+ */
1523
+ url?: string;
1524
+ /** Category description. */
1525
+ description?: string | null;
1526
+ /** Category title. */
1527
+ title?: string;
1528
+ /**
1529
+ * __Deprecated.__ Use `displayPosition` instead.
1530
+ * This property will be removed on March 2, 2023.
1531
+ *
1532
+ * Category position in sequence.
1533
+ */
1534
+ rank?: number | null;
1535
+ /**
1536
+ * Category position in sequence. Categories with lower display position are displayed first. A position of `-1` will be at the end of the sequence.
1537
+ *
1538
+ * Default: `-1`
1539
+ */
1540
+ displayPosition?: number | null;
1541
+ /** ID of the category's translations. All translations of a single category will share the same `translationId`. */
1542
+ translationId?: string | null;
1543
+ /** Category language.Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */
1544
+ language?: string;
1545
+ /** Category slug. For example, 'category-slug'. */
1546
+ slug?: string;
1547
+ /** SEO data. */
1548
+ seoData?: SeoSchema;
1549
+ /** Category cover image. */
1550
+ coverImage?: string;
1551
+ }
1552
+ export interface GetTemplateRequest {
1553
+ /** Post template id */
1554
+ postTemplateId?: string;
1555
+ }
1556
+ export interface GetTemplateResponse {
1557
+ /** Post template */
1558
+ postTemplate?: Post;
1559
+ }
1560
+ export interface CreateDraftPostFromTemplateRequest {
1561
+ /** Post template id */
1562
+ postTemplateId?: string;
1563
+ }
1564
+ export interface CreateDraftPostFromTemplateResponse {
1565
+ /** Created draft post */
1566
+ draftPost?: DraftPost;
1567
+ }
1568
+ export interface DraftPost {
1569
+ /**
1570
+ * Post ID.
1571
+ * @readonly
1572
+ */
1573
+ _id?: string;
1574
+ /** Post title. */
1575
+ title?: string;
1576
+ /**
1577
+ * Post excerpt.
1578
+ * Can be selected by site owner or extracted from the post's text.
1579
+ */
1580
+ excerpt?: string | null;
1581
+ /** Whether the post is marked as featured. */
1582
+ featured?: boolean | null;
1583
+ /** IDs of categories this post belongs to. */
1584
+ categoryIds?: string[];
1585
+ /** Post owner's member ID. */
1586
+ memberId?: string | null;
1587
+ /** Hashtags extracted from the post's content. */
1588
+ hashtags?: string[];
1589
+ /** Whether commenting on the post is enabled. */
1590
+ commentingEnabled?: boolean | null;
1591
+ /**
1592
+ * Estimated reading time (calculated automatically).
1593
+ * @readonly
1594
+ */
1595
+ minutesToRead?: number;
1596
+ /** Hero image, as displayed at the top of the blog page. */
1597
+ heroImage?: string;
1598
+ /** IDs of tags the post is tagged with. */
1599
+ tagIds?: string[];
1600
+ /** IDs of posts that are related to this post. */
1601
+ relatedPostIds?: string[];
1602
+ /** Pricing plans IDs. */
1603
+ pricingPlanIds?: string[];
1604
+ /** ID of the post's translations. Translations of a single post into multiple languages will all share the same `translationId`. */
1605
+ translationId?: string | null;
1606
+ /** Language the post is written in. */
1607
+ language?: string | null;
1608
+ /**
1609
+ * Origin on how the current draft post state was created.
1610
+ * @readonly
1611
+ */
1612
+ changeOrigin?: Origin;
1613
+ /** Post rich content. */
1614
+ richContent?: RichContent;
1615
+ /**
1616
+ * Post status.
1617
+ * @readonly
1618
+ */
1619
+ status?: Status;
1620
+ /** Details about post moderation. Relevant only to posts submitted by guest writers. */
1621
+ moderationDetails?: ModerationDetails;
1622
+ /**
1623
+ * Indicates if draft post have changes that are not yet published to the public.
1624
+ * @readonly
1625
+ */
1626
+ hasUnpublishedChanges?: boolean;
1627
+ /**
1628
+ * Last edited date
1629
+ * @readonly
1630
+ */
1631
+ editedDate?: Date;
1632
+ /**
1633
+ * Scheduled publish date
1634
+ * @readonly
1635
+ */
1636
+ scheduledPublishDate?: Date;
1637
+ /** Date the post was first published. */
1638
+ firstPublishedDate?: Date;
1639
+ /** SEO data. */
1640
+ seoData?: SeoSchema;
1641
+ /**
1642
+ * Draft post preview URL (how URL will look like when post will be published).
1643
+ * @readonly
1644
+ */
1645
+ url?: string;
1646
+ /**
1647
+ * Date the post was created.
1648
+ * @readonly
1649
+ */
1650
+ _createdDate?: Date;
1651
+ /** SEO slug. */
1652
+ seoSlug?: string | null;
1653
+ /** Post cover media. */
1654
+ media?: Media;
1655
+ /** Number of paragraphs to show in paid content preview for non-paying users. */
1656
+ previewTextParagraph?: number | null;
1657
+ /**
1658
+ * List of draft post translations.
1659
+ * @readonly
1660
+ */
1661
+ translations?: DraftPostTranslation[];
1662
+ }
1663
+ export declare enum Origin {
1664
+ UNKNOWN = "UNKNOWN",
1665
+ /** Changed by admin */
1666
+ ADMIN = "ADMIN",
1667
+ /** Categories were changed */
1668
+ ADD_CATEGORIES = "ADD_CATEGORIES",
1669
+ /** Saved automatically */
1670
+ AUTO_SAVE = "AUTO_SAVE",
1671
+ /** Copied from template */
1672
+ COPY_TEMPLATE = "COPY_TEMPLATE",
1673
+ /** Imported */
1674
+ IMPORT = "IMPORT",
1675
+ /** Imported in bulk */
1676
+ IMPORT_BULK = "IMPORT_BULK",
1677
+ /** Imported with html import */
1678
+ IMPORT_HTML = "IMPORT_HTML",
1679
+ /** Patch import */
1680
+ IMPORT_PATCH = "IMPORT_PATCH",
1681
+ /** Changed language */
1682
+ LANGUAGE_CHANGE = "LANGUAGE_CHANGE",
1683
+ /** Saved manually */
1684
+ MANUAL_SAVE = "MANUAL_SAVE",
1685
+ /** Affected by migration */
1686
+ MIGRATION = "MIGRATION",
1687
+ /** Affected by moderation */
1688
+ MODERATION = "MODERATION",
1689
+ /** Moved to trash */
1690
+ MOVE_TO_TRASH = "MOVE_TO_TRASH",
1691
+ /** Pricing plans were changed */
1692
+ PRICING_PLANS_CHANGE = "PRICING_PLANS_CHANGE",
1693
+ /** Was provisioned */
1694
+ PROVISION = "PROVISION",
1695
+ /** Was published */
1696
+ PUBLISH = "PUBLISH",
1697
+ /** Owner was reassigned */
1698
+ REASSIGN_OWNER = "REASSIGN_OWNER",
1699
+ /** Was reblogged */
1700
+ REBLOG = "REBLOG",
1701
+ /** Was restored */
1702
+ RESTORE = "RESTORE",
1703
+ /** Reverted to draft */
1704
+ REVERT_TO_DRAFT = "REVERT_TO_DRAFT",
1705
+ /** Was translated */
1706
+ TRANSLATION = "TRANSLATION",
1707
+ /** Was unpublished */
1708
+ UNPUBLISH = "UNPUBLISH",
1709
+ /** Was unscheduled */
1710
+ UNSCHEDULE = "UNSCHEDULE",
1711
+ /** New edit session started which updated editing_session_id id */
1712
+ NEW_EDIT_SESSION = "NEW_EDIT_SESSION",
1713
+ /** Was scheduled by Later */
1714
+ SCHEDULING_SERVICE_SCHEDULE = "SCHEDULING_SERVICE_SCHEDULE",
1715
+ /** Was unscheduled by Later */
1716
+ SCHEDULING_SERVICE_UNSCHEDULE = "SCHEDULING_SERVICE_UNSCHEDULE",
1717
+ /** Was published by Later */
1718
+ SCHEDULING_SERVICE_PUBLISH = "SCHEDULING_SERVICE_PUBLISH",
1719
+ /** Was scheduled */
1720
+ SCHEDULE = "SCHEDULE",
1721
+ /** Was removed from moderation */
1722
+ REMOVE_FROM_MODERATION = "REMOVE_FROM_MODERATION",
1723
+ /** Was rejected from moderation */
1724
+ REJECT_FROM_MODERATION = "REJECT_FROM_MODERATION",
1725
+ /** Was approved in moderation */
1726
+ APPROVE_IN_MODERATION = "APPROVE_IN_MODERATION",
1727
+ /** Tag was deleted */
1728
+ DELETE_TAG = "DELETE_TAG"
1729
+ }
1730
+ export declare enum Status {
1731
+ UNKNOWN = "UNKNOWN",
1732
+ /** Status indicating the draft post is published. */
1733
+ PUBLISHED = "PUBLISHED",
1734
+ /** Status indicating the draft post is unpublished. */
1735
+ UNPUBLISHED = "UNPUBLISHED",
1736
+ /** Status indicating the draft post is scheduled for publication. */
1737
+ SCHEDULED = "SCHEDULED",
1738
+ /** Status indicating the draft post is deleted. */
1739
+ DELETED = "DELETED",
1740
+ /** Deprecated. Use `IN_REVIEW` instead. Status indicating the draft post is in review. */
1741
+ IN_MODERATION = "IN_MODERATION",
1742
+ /** Status indicating the draft post is in review. */
1743
+ IN_REVIEW = "IN_REVIEW"
1744
+ }
1745
+ export interface DraftPostTranslation {
1746
+ /** Post ID. */
1747
+ _id?: string;
1748
+ /** Post status. */
1749
+ status?: Status;
1750
+ /** Language the post is written in. */
1751
+ language?: string | null;
1752
+ /** Post slug. For example, 'post-slug'. */
1753
+ slug?: string | null;
1754
+ /** SEO data. */
1755
+ seoData?: SeoSchema;
1756
+ /** Post URL. */
1757
+ url?: string;
1758
+ }
1759
+ export interface GetTotalLikesPerMemberRequest {
1760
+ /** Member ID. */
1761
+ memberId?: string;
1762
+ }
1763
+ export interface GetTotalLikesPerMemberResponse {
1764
+ /** The total number of likes of the member. */
1765
+ total?: number;
1766
+ }
1767
+ export interface PostLiked extends PostLikedInitiatorOneOf {
1768
+ /** ID of the liked post. */
1769
+ postId?: string;
1770
+ /** Member ID of person who liked a post (returned if the member was logged in when liking the post) */
1771
+ memberId?: string | null;
1772
+ /** Visitor ID if person that liked the post is not logged in */
1773
+ anonymousVisitorId?: string | null;
1774
+ }
1775
+ /** @oneof */
1776
+ export interface PostLikedInitiatorOneOf {
1777
+ /** Member ID of person who liked a post (returned if the member was logged in when liking the post) */
1778
+ memberId?: string | null;
1779
+ /** Visitor ID if person that liked the post is not logged in */
1780
+ anonymousVisitorId?: string | null;
1781
+ }
1782
+ export interface PostUnliked extends PostUnlikedInitiatorOneOf {
1783
+ /** ID of the unliked post. */
1784
+ postId?: string;
1785
+ /** Member ID of person who unliked a post (returned if the member was logged in when unliking the post) */
1786
+ memberId?: string | null;
1787
+ /** Visitor ID if person that unliked the post is not logged in */
1788
+ anonymousVisitorId?: string | null;
1789
+ }
1790
+ /** @oneof */
1791
+ export interface PostUnlikedInitiatorOneOf {
1792
+ /** Member ID of person who unliked a post (returned if the member was logged in when unliking the post) */
1793
+ memberId?: string | null;
1794
+ /** Visitor ID if person that unliked the post is not logged in */
1795
+ anonymousVisitorId?: string | null;
1796
+ }
1797
+ export interface PostCountersUpdated extends PostCountersUpdatedInitiatorOneOf {
1798
+ /** ID of the post which counters were updated. */
1799
+ postId?: string;
1800
+ /** Field of the updated counter. */
1801
+ updatedCounterField?: Field;
1802
+ /** New counter value. */
1803
+ counter?: number;
1804
+ /** Member ID of person who triggered the counter update */
1805
+ memberId?: string | null;
1806
+ /** Visitor ID if person that liked the post is not logged in */
1807
+ anonymousVisitorId?: string | null;
1808
+ }
1809
+ /** @oneof */
1810
+ export interface PostCountersUpdatedInitiatorOneOf {
1811
+ /** Member ID of person who triggered the counter update */
1812
+ memberId?: string | null;
1813
+ /** Visitor ID if person that liked the post is not logged in */
1814
+ anonymousVisitorId?: string | null;
1815
+ }
1816
+ export declare enum Field {
1817
+ UNKNOWN = "UNKNOWN",
1818
+ /** Total comments field. */
1819
+ TOTAL_COMMENTS = "TOTAL_COMMENTS",
1820
+ /** Like count field. */
1821
+ LIKE_COUNT = "LIKE_COUNT",
1822
+ /** View count field. */
1823
+ VIEW_COUNT = "VIEW_COUNT",
1824
+ /** Rating count field */
1825
+ RATING_COUNT = "RATING_COUNT"
1826
+ }
1827
+ export interface PostOwnerChanged {
1828
+ /** ID of the post which owner was updated. */
1829
+ postId?: string;
1830
+ }
1831
+ export interface GetPostRequest {
1832
+ /** Post ID. */
1833
+ postId: string;
1834
+ /**
1835
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
1836
+ *
1837
+ * Supported Values:
1838
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
1839
+ */
1840
+ fieldsets?: PostFieldField[];
1841
+ }
1842
+ export declare enum PostFieldField {
1843
+ UNKNOWN = "UNKNOWN",
1844
+ /** Deprecated use `METRICS` instead */
1845
+ COUNTERS = "COUNTERS",
1846
+ /** Includes Post url when present */
1847
+ URL = "URL",
1848
+ /** Includes Post content text string when present */
1849
+ CONTENT_TEXT = "CONTENT_TEXT",
1850
+ /** Includes Post metrics when present */
1851
+ METRICS = "METRICS",
1852
+ /** Includes SEO data */
1853
+ SEO = "SEO",
1854
+ /**
1855
+ * Includes Post content as a stringified DraftJS document
1856
+ * Reserved for internal use
1857
+ */
1858
+ CONTENT = "CONTENT",
1859
+ /**
1860
+ * Includes internal id field
1861
+ * Reserved for internal use
1862
+ */
1863
+ INTERNAL_ID = "INTERNAL_ID",
1864
+ /** Includes post owners Contact Id */
1865
+ CONTACT_ID = "CONTACT_ID",
1866
+ /** Includes post rich content */
1867
+ RICH_CONTENT = "RICH_CONTENT"
1868
+ }
1869
+ export interface GetPostResponse {
1870
+ /** Post info. */
1871
+ post?: Post;
1872
+ }
1873
+ export interface GetPostBySlugRequest {
1874
+ /** Slug of the post to retrieve. */
1875
+ slug: string;
1876
+ /**
1877
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
1878
+ *
1879
+ * Supported Values:
1880
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
1881
+ */
1882
+ fieldsets?: PostFieldField[];
1883
+ }
1884
+ export interface GetPostBySlugResponse {
1885
+ /** Post info. */
1886
+ post?: Post;
1887
+ }
1888
+ export interface ListPostsRequest {
1889
+ /** Whether to return only featured posts. */
1890
+ featured?: boolean;
1891
+ /**
1892
+ * Hashtag filter.
1893
+ * Pass an array of hashtags to return posts with any of the provided hashtags (anywhere in the post content).
1894
+ */
1895
+ hashtags?: string[];
1896
+ /**
1897
+ * Category filter.
1898
+ * Pass an array of category IDs to return posts with any of the provided categories.
1899
+ */
1900
+ categoryIds?: string[];
1901
+ /**
1902
+ * Tag filter.
1903
+ * Pass an array of tag IDs to return posts with any of the provided tags.
1904
+ */
1905
+ tagIds?: string[];
1906
+ /** Sort order by descending view count, ascending or descending publish date, or default to descending by publish date with pinned posts first. */
1907
+ sort?: GetPostsSort;
1908
+ /** Pagination options. */
1909
+ paging?: BlogPaging;
1910
+ /**
1911
+ * Language filter.
1912
+ *
1913
+ *
1914
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
1915
+ */
1916
+ language?: string | null;
1917
+ /** Post owner's member ID. */
1918
+ memberId?: string | null;
1919
+ /**
1920
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
1921
+ *
1922
+ * Supported Values:
1923
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
1924
+ */
1925
+ fieldsets?: PostFieldField[];
1926
+ }
1927
+ export declare enum GetPostsSort {
1928
+ /** Sorting by publishing date descending with pinned posts first. The default value */
1929
+ FEED = "FEED",
1930
+ /** Sorting by publishing date ascending */
1931
+ PUBLISHED_DATE_ASC = "PUBLISHED_DATE_ASC",
1932
+ /** Sorting by publishing date descending */
1933
+ PUBLISHED_DATE_DESC = "PUBLISHED_DATE_DESC",
1934
+ /** Sorting by view count descending */
1935
+ VIEW_COUNT = "VIEW_COUNT",
1936
+ /** Sorting by like count descending */
1937
+ LIKE_COUNT = "LIKE_COUNT",
1938
+ /** Sorting by title ascending */
1939
+ TITLE_ASC = "TITLE_ASC",
1940
+ /** Sorting by title descending */
1941
+ TITLE_DESC = "TITLE_DESC",
1942
+ /** Sorting by post rating descending. */
1943
+ RATING = "RATING"
1944
+ }
1945
+ export interface ListPostsResponse {
1946
+ /** List of posts. */
1947
+ posts?: Post[];
1948
+ /** Details on the paged set of results returned. */
1949
+ metaData?: MetaData;
1950
+ }
1951
+ export interface QueryPostsRequest {
1952
+ /** Query options. */
1953
+ query?: PlatformQuery;
1954
+ /**
1955
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
1956
+ *
1957
+ * Supported Values:
1958
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
1959
+ */
1960
+ fieldsets?: PostFieldField[];
1961
+ }
1962
+ export interface Sorting {
1963
+ /** Name of the field to sort by. */
1964
+ fieldName?: string;
1965
+ /** Sort order. */
1966
+ order?: SortOrder;
1967
+ }
1968
+ export declare enum SortOrder {
1969
+ ASC = "ASC",
1970
+ DESC = "DESC"
1971
+ }
1972
+ export interface PlatformQuery extends PlatformQueryPagingMethodOneOf {
1973
+ /**
1974
+ * Filter object in the following format:
1975
+ * `"filter" : {
1976
+ * "fieldName1": "value1",
1977
+ * "fieldName2":{"$operator":"value2"}
1978
+ * }`
1979
+ * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains`
1980
+ */
1981
+ filter?: Record<string, any> | null;
1982
+ /**
1983
+ * Sort object in the following format:
1984
+ * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]`
1985
+ */
1986
+ sort?: Sorting[];
1987
+ /** Paging options to limit and skip the number of items. */
1988
+ paging?: Paging;
1989
+ /** 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`. */
1990
+ cursorPaging?: CursorPaging;
1991
+ }
1992
+ /** @oneof */
1993
+ export interface PlatformQueryPagingMethodOneOf {
1994
+ /** Paging options to limit and skip the number of items. */
1995
+ paging?: Paging;
1996
+ /** 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`. */
1997
+ cursorPaging?: CursorPaging;
1998
+ }
1999
+ export interface Paging {
2000
+ /** Number of items to load. */
2001
+ limit?: number | null;
2002
+ /** Number of items to skip in the current sort order. */
2003
+ offset?: number | null;
2004
+ }
2005
+ export interface CursorPaging {
2006
+ /** Number of items to load. */
2007
+ limit?: number | null;
2008
+ /**
2009
+ * Pointer to the next or previous page in the list of results.
2010
+ *
2011
+ * You can get the relevant cursor token
2012
+ * from the `pagingMetadata` object in the previous call's response.
2013
+ * Not relevant for the first request.
2014
+ */
2015
+ cursor?: string | null;
2016
+ }
2017
+ export interface QueryPostsResponse {
2018
+ /** List of posts. */
2019
+ posts?: Post[];
2020
+ /** Details on the paged set of results returned. */
2021
+ pagingMetadata?: PagingMetadataV2;
2022
+ }
2023
+ export interface PagingMetadataV2 {
2024
+ /** Number of items returned in the response. */
2025
+ count?: number | null;
2026
+ /** Offset that was requested. */
2027
+ offset?: number | null;
2028
+ /** Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */
2029
+ total?: number | null;
2030
+ /** Flag that indicates the server failed to calculate the `total` field. */
2031
+ tooManyToCount?: boolean | null;
2032
+ /** Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */
2033
+ cursors?: Cursors;
2034
+ }
2035
+ export interface Cursors {
2036
+ /** Cursor pointing to next page in the list of results. */
2037
+ next?: string | null;
2038
+ /** Cursor pointing to previous page in the list of results. */
2039
+ prev?: string | null;
2040
+ }
2041
+ export interface GetPostMetricsRequest {
2042
+ /** Post ID. */
2043
+ postId: string;
2044
+ }
2045
+ export interface GetPostMetricsResponse {
2046
+ /** Post metrics. */
2047
+ metrics?: Metrics;
2048
+ }
2049
+ export interface BulkGetPostMetricsRequest {
2050
+ /** Post IDs. */
2051
+ postIds?: string[];
2052
+ }
2053
+ export interface BulkGetPostMetricsResponse {
2054
+ /** Map of post.id to metrics */
2055
+ metrics?: Record<string, Metrics>;
2056
+ }
2057
+ export interface BulkGetPostReactionsRequest {
2058
+ /** Post IDs. */
2059
+ postIds?: string[];
2060
+ }
2061
+ export interface BulkGetPostReactionsResponse {
2062
+ /** Map of post.id to reactions */
2063
+ reactionsMap?: Record<string, Reactions>;
2064
+ }
2065
+ export interface Reactions {
2066
+ /**
2067
+ * Is post liked by the current user
2068
+ * @readonly
2069
+ */
2070
+ liked?: boolean;
2071
+ }
2072
+ export interface OldBlogMigratedEvent {
2073
+ /** Instance id of new version of blog */
2074
+ newBlogInstanceId?: string;
2075
+ /** Instance id of old version of blog */
2076
+ oldBlogInstanceId?: string;
2077
+ }
2078
+ export interface ListMigratedPostsRequest {
2079
+ /** New blog version instance id */
2080
+ instanceId?: string;
2081
+ /** Cursor pointing to page of results */
2082
+ paging?: BlogCursorPaging;
2083
+ }
2084
+ export interface BlogCursorPaging {
2085
+ /** Number of items to load. */
2086
+ limit?: number | null;
2087
+ /** Pointer to the next or previous page in the list of results. */
2088
+ cursor?: string | null;
2089
+ }
2090
+ export interface ListMigratedPostsResponse {
2091
+ /** List of posts */
2092
+ posts?: Post[];
2093
+ /** Data of post in old blog by post id */
2094
+ postsMigrationMeta?: Record<string, PostMigrationMetaData>;
2095
+ /** Pagination */
2096
+ pagingMetaData?: CursorMetaData;
2097
+ }
2098
+ export interface PostMigrationMetaData {
2099
+ /** Old blog instance id */
2100
+ instanceId?: string;
2101
+ /** Post id in old blog */
2102
+ postId?: string;
2103
+ /** Post author in old blog */
2104
+ author?: string | null;
2105
+ /** Post slug in old blog */
2106
+ slug?: string | null;
2107
+ }
2108
+ export interface CursorMetaData {
2109
+ /** Cursor pointing to next result page. */
2110
+ next?: string | null;
2111
+ }
2112
+ /** Get Blog Publications Count Stats request */
2113
+ export interface QueryPublicationsCountStatsRequest {
2114
+ /** Start of time range to return, in ISO 8601 date and time format. */
2115
+ rangeStart?: Date;
2116
+ /** Non-inclusive end of time range to return, in ISO 8601 date and time format. */
2117
+ rangeEnd?: Date;
2118
+ /** Order of the returned results. */
2119
+ order?: QueryPublicationsCountStatsRequestOrder;
2120
+ /** Number of months to include in the response. */
2121
+ months?: number;
2122
+ /** Language filter */
2123
+ language?: string | null;
2124
+ /** Timezone of the client */
2125
+ timeZone?: string | null;
2126
+ }
2127
+ export declare enum QueryPublicationsCountStatsRequestOrder {
2128
+ UNKNOWN = "UNKNOWN",
2129
+ OLDEST = "OLDEST",
2130
+ NEWEST = "NEWEST"
2131
+ }
2132
+ /** Get Blog Publications Count Stats response */
2133
+ export interface QueryPublicationsCountStatsResponse {
2134
+ /** Chronologically ordered list of publications. */
2135
+ stats?: PeriodPublicationsCount[];
2136
+ }
2137
+ /** Publications count for a specific time period */
2138
+ export interface PeriodPublicationsCount {
2139
+ /** Start of time range in ISO 8601 date and time format. */
2140
+ periodStart?: Date;
2141
+ /** Number of posts published during this month. */
2142
+ publicationsCount?: number;
2143
+ }
2144
+ /** Get Blog Post Count Stats request */
2145
+ export interface QueryPostCountStatsRequest {
2146
+ /** Start of time range to return, in ISO 8601 date and time format. */
2147
+ rangeStart?: Date;
2148
+ /** Order of returned results. */
2149
+ order?: Order;
2150
+ /** Number of months to include in response. */
2151
+ months?: number;
2152
+ /**
2153
+ * Language filter.
2154
+ *
2155
+ *
2156
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
2157
+ */
2158
+ language?: string | null;
2159
+ /** Time zone of the client. */
2160
+ timeZone?: string | null;
2161
+ }
2162
+ export declare enum Order {
2163
+ UNKNOWN = "UNKNOWN",
2164
+ OLDEST = "OLDEST",
2165
+ NEWEST = "NEWEST"
2166
+ }
2167
+ /** Get Blog Post Count Stats response */
2168
+ export interface QueryPostCountStatsResponse {
2169
+ /** List of posts in specified order. */
2170
+ stats?: PeriodPostCount[];
2171
+ }
2172
+ /** Post count for a specific time period */
2173
+ export interface PeriodPostCount {
2174
+ /** Start of time range in ISO 8601 date and time format. */
2175
+ periodStart?: Date;
2176
+ /** Number of posts published during this month. */
2177
+ postCount?: number;
2178
+ }
2179
+ export interface GetTotalPublicationsRequest {
2180
+ /** Language filter */
2181
+ language?: string | null;
2182
+ }
2183
+ export interface GetTotalPublicationsResponse {
2184
+ /** Total amount of publications. */
2185
+ total?: number;
2186
+ }
2187
+ export interface GetTotalPostsRequest {
2188
+ /**
2189
+ * Language filter.
2190
+ *
2191
+ *
2192
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
2193
+ */
2194
+ language?: string | null;
2195
+ }
2196
+ export interface GetTotalPostsResponse {
2197
+ /** Total amount of published posts. */
2198
+ total?: number;
2199
+ }
2200
+ export interface SendActionEventRequest extends SendActionEventRequestActionOneOf {
2201
+ entityId?: string;
2202
+ postLikedAction?: PostLiked;
2203
+ postCountersUpdated?: PostCountersUpdated;
2204
+ }
2205
+ /** @oneof */
2206
+ export interface SendActionEventRequestActionOneOf {
2207
+ postLikedAction?: PostLiked;
2208
+ postCountersUpdated?: PostCountersUpdated;
2209
+ }
2210
+ export interface SendActionEventResponse {
2211
+ }
2212
+ /**
2213
+ * Gets a post by the specified ID.
2214
+ *
2215
+ *
2216
+ * The `getPost()` function returns a Promise that resolves to a post whose ID matches the given ID.
2217
+ *
2218
+ * @param postId - Post ID.
2219
+ * @public
2220
+ * @requiredField postId
2221
+ * @param options - Options specifying which fields to return.
2222
+ * @returns Fulfilled - The requested post.
2223
+ */
2224
+ export declare function getPost(postId: string, options?: GetPostOptions): Promise<GetPostResponse>;
2225
+ export interface GetPostOptions {
2226
+ /**
2227
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
2228
+ *
2229
+ * Supported Values:
2230
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
2231
+ */
2232
+ fieldsets?: PostFieldField[];
2233
+ }
2234
+ /**
2235
+ * Gets a post by the provided slug.
2236
+ *
2237
+ *
2238
+ * The `getPostBySlug()` function returns a Promise that resolves to a post whose slug matches the given slug.
2239
+ *
2240
+ * The `slug` is the end of a post's URL that refers to a specific post. For example, if a post's URL is `https:/example.com/blog/post/my-post-slug`, the slug is `my-post-slug`. The slug is case-sensitive, and is generally derived from the post title, unless specified otherwise.
2241
+ * @public
2242
+ * @requiredField GetPostBySlugRequest
2243
+ * @requiredField slug
2244
+ * @param options - Options specifying which fields to return.
2245
+ * @param slug - Slug of the post to retrieve.
2246
+ *
2247
+ * The end of a post's URL, for example, `https:/example.com/blog/post/my-post-slug`. Case sensitive and generally based on the post title if not specified.
2248
+ * @returns Fulfilled - The requested post.
2249
+ */
2250
+ export declare function getPostBySlug(slug: string, options?: GetPostBySlugOptions): Promise<GetPostBySlugResponse>;
2251
+ export interface GetPostBySlugOptions {
2252
+ /**
2253
+ * List of post fields to be included in the response. By default, any fields not passed are not returned.
2254
+ *
2255
+ * Supported Values:
2256
+ * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`.
2257
+ */
2258
+ fieldsets?: PostFieldField[];
2259
+ }
2260
+ /**
2261
+ * Retrieves a list of published posts.
2262
+ *
2263
+ *
2264
+ * The `listPosts()` function returns a Promise that resolves to a list of up to 100 published posts.
2265
+ *
2266
+ * Using the `options` parameter, you can filter your list of posts, set the amount of posts to be returned, and sort your list in a specified order.
2267
+ *
2268
+ * By default, the list is sorted by `firstPublishedDate` in descending order, and the amount of posts returned is 50.
2269
+ * @public
2270
+ * @param options - Sort, filter, and paging options.
2271
+ * @returns Fulfilled - List of retrieved posts.
2272
+ */
2273
+ export declare function listPosts(options?: ListPostsOptions): Promise<ListPostsResponse>;
2274
+ export interface ListPostsOptions {
2275
+ /** Featured filter. Whether to return only featured posts. */
2276
+ featured?: boolean;
2277
+ /**
2278
+ * List of hashtags to filter for.
2279
+ *
2280
+ *
2281
+ * Default: All hashtags
2282
+ */
2283
+ hashtags?: string[];
2284
+ /**
2285
+ * List of category IDs to filter for.
2286
+ *
2287
+ *
2288
+ * Default: All categories
2289
+ */
2290
+ categoryIds?: string[];
2291
+ /**
2292
+ * List of tag IDs to filter for.
2293
+ *
2294
+ *
2295
+ * Default: All tags
2296
+ */
2297
+ tagIds?: string[];
2298
+ /**
2299
+ * Sort order.
2300
+ *
2301
+ * Sort by one of the following:
2302
+ * > - `'VIEW_COUNT'` descending view count
2303
+ * > - `'LIKE_COUNT'` descending like count
2304
+ * > - `'PUBLISHED_DATE_ASC'` ascending published date
2305
+ * > - `'PUBLISHED_DATE_DESC'` (default) descending published date
2306
+ * > - `'TITLE_ASC'` ascending title
2307
+ * > - `'TITLE_DESC'` descending title
2308
+ */
2309
+ sort?: GetPostsSort;
2310
+ /** Pagination options. */
2311
+ paging?: BlogPaging;
2312
+ /**
2313
+ * Language filter.
2314
+ *
2315
+ *
2316
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
2317
+ */
2318
+ language?: string | null;
2319
+ /**
2320
+ * Member ID to filter for.
2321
+ *
2322
+ *
2323
+ * Default: All members
2324
+ */
2325
+ memberId?: string | null;
2326
+ /**
2327
+ * List of post fields to be included in the response.
2328
+ *
2329
+ *
2330
+ *
2331
+ */
2332
+ fieldsets?: PostFieldField[];
2333
+ }
2334
+ /**
2335
+ * Creates a query to retrieve a list of posts.
2336
+ *
2337
+ *
2338
+ * The `queryPosts()` function builds a query to retrieve a list of up to 100 posts, and returns a [`PostsQueryBuilder`](https://www.wix.com/velo/reference/wix-blog-backend/post/postsquerybuilder) object.
2339
+ *
2340
+ * The returned object contains the query definition which is typically used to run the query using the [`find()`](https://www.wix.com/velo/reference/wix-blog-backend/post/postsquerybuilder/find) function.
2341
+ *
2342
+ * You can refine the query by chaining `PostsQueryBuilder` functions onto the query. `PostsQueryBuilder` functions enable you to sort, filter, and control the results that `queryPosts()` returns.
2343
+ *
2344
+ * `queryPosts()` runs with these `PostsQueryBuilder` defaults that can be overridden:
2345
+ * + `limit(50)`
2346
+ * + `descending('firstPublishedDate')`
2347
+ *
2348
+ * Note that the default limit is `'50'`, but the max limit is `'100'`.
2349
+ *
2350
+ * To learn how to query posts, refer to the table below.
2351
+ *
2352
+ * The following `PostsQueryBuilder` functions are supported for the `queryPosts()` function. For a full description of the Posts object, see the object returned for the `items` property in `PostsQueryResult`.
2353
+ * @public */
2354
+ export declare function queryPosts(): PostsQueryBuilder;
2355
+ interface QueryOffsetResult {
2356
+ currentPage: number;
2357
+ totalPages: number;
2358
+ totalCount: number;
2359
+ hasNext: () => boolean;
2360
+ hasPrev: () => boolean;
2361
+ length: number;
2362
+ pageSize: number;
2363
+ }
2364
+ export interface PostsQueryResult extends QueryOffsetResult {
2365
+ items: Post[];
2366
+ query: PostsQueryBuilder;
2367
+ next: () => Promise<PostsQueryResult>;
2368
+ prev: () => Promise<PostsQueryResult>;
2369
+ }
2370
+ export interface PostsQueryBuilder {
2371
+ /** @param propertyName - Property whose value is compared with `value`.
2372
+ * @param value - Value to compare against.
2373
+ */
2374
+ eq: (propertyName: string, value: any) => PostsQueryBuilder;
2375
+ /** @param propertyName - Property whose value is compared with `value`.
2376
+ * @param value - Value to compare against.
2377
+ */
2378
+ ne: (propertyName: string, value: any) => PostsQueryBuilder;
2379
+ /** @param propertyName - Property whose value is compared with `value`.
2380
+ * @param value - Value to compare against.
2381
+ */
2382
+ ge: (propertyName: string, value: any) => PostsQueryBuilder;
2383
+ /** @param propertyName - Property whose value is compared with `value`.
2384
+ * @param value - Value to compare against.
2385
+ */
2386
+ gt: (propertyName: string, value: any) => PostsQueryBuilder;
2387
+ /** @param propertyName - Property whose value is compared with `value`.
2388
+ * @param value - Value to compare against.
2389
+ */
2390
+ le: (propertyName: string, value: any) => PostsQueryBuilder;
2391
+ /** @param propertyName - Property whose value is compared with `value`.
2392
+ * @param value - Value to compare against.
2393
+ */
2394
+ lt: (propertyName: string, value: any) => PostsQueryBuilder;
2395
+ /** @param propertyName - Property whose value is compared with `string`.
2396
+ * @param string - String to compare against. Case-insensitive.
2397
+ */
2398
+ startsWith: (propertyName: string, value: string) => PostsQueryBuilder;
2399
+ /** @param propertyName - Property whose value is compared with `values`.
2400
+ * @param values - List of values to compare against.
2401
+ */
2402
+ hasSome: (propertyName: string, value: any[]) => PostsQueryBuilder;
2403
+ /** @param propertyName - Property whose value is compared with `values`.
2404
+ * @param values - List of values to compare against.
2405
+ */
2406
+ hasAll: (propertyName: string, value: any[]) => PostsQueryBuilder;
2407
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
2408
+ ascending: (...propertyNames: string[]) => PostsQueryBuilder;
2409
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments. */
2410
+ descending: (...propertyNames: string[]) => PostsQueryBuilder;
2411
+ /** @param limit - Number of items to return, which is also the `pageSize` of the results object. */
2412
+ limit: (limit: number) => PostsQueryBuilder;
2413
+ /** @param skip - Number of items to skip in the query results before returning the results. */
2414
+ skip: (skip: number) => PostsQueryBuilder;
2415
+ find: () => Promise<PostsQueryResult>;
2416
+ }
2417
+ /**
2418
+ * Gets a specified post's metrics.
2419
+ *
2420
+ *
2421
+ * The `getPostMetrics()` function returns a Promise that resolves to the specified post's metrics.
2422
+ *
2423
+ * A post's metrics include the comments, likes, and views the post receives.
2424
+ * @param postId - Post ID.
2425
+ * @public
2426
+ * @requiredField postId
2427
+ * @returns Fulfilled - Post metrics.
2428
+ */
2429
+ export declare function getPostMetrics(postId: string): Promise<GetPostMetricsResponse>;
2430
+ /**
2431
+ * Retrieves the number of published posts per month within a specified time range.
2432
+ *
2433
+ *
2434
+ * The `queryPostCountStats()` function returns a Promise that resolves to the number of posts per month within the specified time range.
2435
+ *
2436
+ * You can set the time range using the `rangeStart` and `months` properties. The time range always starts on the 1st of the month set in `rangeStart`. It includes the number of `months` following `rangeStart`. For example, if `rangeStart` is set to `'2022-03-13'` and `months` is set to `4`, the time range will be from `'2022-03-01'` until `'2022-06-30'`. Notice that the time range ends on the last of the month.
2437
+ *
2438
+ * >**Note:** If there are no published posts in a specific month, that month is not included in the response. For example, let's say a blog has `0` posts dated in February 2022. `months` and `rangeStart` are set to `3` and `'2022-01-01'` respectively. Your result will only include the `postCount` from January and March.
2439
+ * @public
2440
+ * @param options - Options specifying time frame, sort, and filter.
2441
+ * @returns Fulfilled - Post count stats.
2442
+ */
2443
+ export declare function queryPostCountStats(options?: QueryPostCountStatsOptions): Promise<QueryPostCountStatsResponse>;
2444
+ export interface QueryPostCountStatsOptions {
2445
+ /** Start of time range to return, in ISO 8601 date and time format. */
2446
+ rangeStart?: Date;
2447
+ /**
2448
+ * Sort order.
2449
+ * Use `'ASC'` for ascending order or `'DESC'` for descending order.
2450
+ *
2451
+ * Default: `ASC`
2452
+ */
2453
+ order?: Order;
2454
+ /** Number of months to include in response. */
2455
+ months?: number;
2456
+ /**
2457
+ * Language filter.
2458
+ *
2459
+ *
2460
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
2461
+ */
2462
+ language?: string | null;
2463
+ /** Time zone of the client. */
2464
+ timeZone?: string | null;
2465
+ }
2466
+ /**
2467
+ * Gets the total amount of published posts on the blog.
2468
+ *
2469
+ *
2470
+ * The `getTotalPosts()` function returns a Promise that resolves to the total amount of published posts on your blog's site.
2471
+ *
2472
+ *
2473
+ * You can use the `language` option to filter posts for a specified language.
2474
+ * @public
2475
+ * @param options - Language Options.
2476
+ * @returns Fulfilled - Total number of posts.
2477
+ */
2478
+ export declare function getTotalPosts(options?: GetTotalPostsOptions): Promise<GetTotalPostsResponse>;
2479
+ export interface GetTotalPostsOptions {
2480
+ /**
2481
+ * Language filter.
2482
+ *
2483
+ *
2484
+ * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format.
2485
+ */
2486
+ language?: string | null;
2487
+ }
2488
+ export {};