/** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.html#) */ declare module 'wix-blog-backend' { /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.html#categories) */ const categories: Categories; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.html#posts) */ const posts: Posts; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.html#tags) */ const tags: Tags; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#) */ interface Categories { /** * Gets a category by the specified ID. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#getCategory) */ getCategory(categoryId: string, options: Categories.GetCategoryOptions): Promise; /** * Gets a category by the specified slug. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#getCategoryBySlug) */ getCategoryBySlug(slug: string, options: Categories.GetCategoryBySlugOptions): Promise; /** * Retrieves a list of categories. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#listCategories) */ listCategories(options: Categories.ListCategoriesOptions): Promise; /** * Creates a query to retrieve a list of categories. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#queryCategories) */ queryCategories(): Categories.CategoriesQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#) */ interface Events { /** * An event that is triggered when a category is created. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onCategoryCreated) */ onCategoryCreated(event: Events.blogV3CategoryCategoryCreated): void; /** * An event that is triggered when a category is deleted. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onCategoryDeleted) */ onCategoryDeleted(event: Events.blogV3CategoryCategoryDeleted): void; /** * An event that is triggered when a category is updated. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onCategoryUpdated) */ onCategoryUpdated(event: Events.blogV3CategoryCategoryUpdated): void; /** * An event that is triggered when a post is created. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onPostCreated) */ onPostCreated(event: Events.blogV3PostPostCreated): void; /** * An event that is triggered when a post is deleted. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onPostDeleted) */ onPostDeleted(event: Events.blogV3PostPostDeleted): void; /** * An event that is triggered when a post is liked. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onPostLiked) */ onPostLiked(event: Events.blogV3PostPostLikedEvent): void; /** * An event that is triggered when a post is unliked. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onPostUnliked) */ onPostUnliked(event: Events.blogV3PostPostUnlikedEvent): void; /** * An event that triggers when a post is updated. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onPostUpdated) */ onPostUpdated(event: Events.blogV3PostPostUpdated): void; /** * An event that is triggered when a tag is created. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onTagCreated) */ onTagCreated(event: Events.blogV3TagTagCreated): void; /** * An event that is triggered when a tag is deleted. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onTagDeleted) */ onTagDeleted(event: Events.blogV3TagTagDeleted): void; /** * Triggered when a tag is updated. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#onTagUpdated) */ onTagUpdated(event: Events.blogV3TagTagUpdated): void; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#) */ interface Posts { /** * Gets a post by the specified ID. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#getPost) */ getPost(postId: string, options: Posts.GetPostOptions): Promise; /** * Gets a post by the provided slug. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#getPostBySlug) */ getPostBySlug(slug: string, options: Posts.GetPostBySlugOptions): Promise; /** * Gets a specified post's metrics. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#getPostMetrics) */ getPostMetrics(postId: string): Promise; /** * Gets the total amount of published posts on the blog. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#getTotalPosts) */ getTotalPosts(options: Posts.GetTotalPostsOptions): Promise; /** * Retrieves a list of published posts. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#listPosts) */ listPosts(options: Posts.ListPostsOptions): Promise; /** * Retrieves the number of published posts per month within a specified time range. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#queryPostCountStats) */ queryPostCountStats(options: Posts.QueryPostCountStatsOptions): Promise; /** * Creates a query to retrieve a list of posts. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#queryPosts) */ queryPosts(): Posts.PostsQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#) */ interface Tags { /** * Gets a tag by the specified ID. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#getTag) */ getTag(tagId: string, options: Tags.GetTagOptions): Promise; /** * Gets a tag by the specified label. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#getTagByLabel) */ getTagByLabel(label: string, options: Tags.GetTagByLabelOptions): Promise; /** * Gets a tag by the specified slug. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#getTagBySlug) */ getTagBySlug(slug: string, options: Tags.GetTagBySlugOptions): Promise; /** * Creates a query to retrieve a list of tags. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#queryTags) */ queryTags(): Tags.TagsQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.html#) */ namespace Categories { type ApplicationError = { code?: string; data?: Object; description?: string; }; type BlogPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to return. * * Default: `50` * * Max: `100` */ limit?: number; /** * Number of categories to skip in the list. */ offset?: number; }; type BulkActionMetadata = { /** * Number of items that couldn't be processed. */ totalFailures?: number; /** * Number of items that were successfully processed. */ totalSuccesses?: number; /** * Number of failures without details because detailed failure threshold was exceeded. */ undetailedFailures?: number; }; type BulkCategoryResult = { /** * Optional created category. */ item?: Categories.Category; /** * Bulk actions metadata for category. */ itemMetadata?: Categories.ItemMetadata; }; type BulkCreateCategoriesOptions = { /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type BulkCreateCategoriesRequest = { /** * Categories to create. */ categories: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type BulkCreateCategoriesResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Categories.BulkActionMetadata; /** * Categories created by bulk action. */ results?: Array; }; type BulkUpdateCategoriesOptions = { /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of category fields to be included in the response if the entities are present. * Base default fieldset returns all core category properties (all properties that are not a supported fieldset value). * For example, when `URL` fieldset is selected, returned category will include the set of base properties and the category's preview url. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type BulkUpdateCategoriesRequest = { /** * Categories to update. */ categories: Array; /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of category fields to be included in the response if the entities are present. * Base default fieldset returns all core category properties (all properties that are not a supported fieldset value). * For example, when `URL` fieldset is selected, returned category will include the set of base properties and the category's preview url. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type BulkUpdateCategoriesResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Categories.BulkActionMetadata; /** * Categories updated by bulk action. */ results?: Array; }; type Category = { /** * Category ID. */ _id?: string; /** * Category cover image. */ coverImage?: string; /** * Reserved for internal use. */ coverMedia?: Categories.CoverMedia; /** * Category description. */ description?: string; /** * Position of the category in the [Category Menu](https://support.wix.com/en/article/wix-blog-adding-and-customizing-a-category-menu). Categories with lower display position are displayed first. */ displayPosition?: number; /** * Reserved for internal use. */ internalId?: string; /** * Category label. Displayed in the Category Menu. */ label?: string; /** * Category Language. * * 2-letter language code in [ISO 639-1 format](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes). */ language?: string; /** * Reserved for internal use. */ oldRank?: number; /** * Number of posts in the category. */ postCount?: number; /** * Reserved for internal use. */ rank?: number; /** * SEO data. */ seoData?: Categories.SeoSchema; /** * Part of a category's URL that refers to a specific category. * * For example, `'https:/example.com/blog/category/{my-category-slug}'`. */ slug?: string; /** * Category title. */ title?: string; /** * ID of the category's translations when [Wix Multilingual](https://wix.wixanswers.com/app/kb/article/36837a9d-5d22-4fa1-9a80-1b99b7f82b5e/en) is installed on a site. All translations of a single category will share the same `translationId`. */ translationId?: string; /** * Category URL. * * The `url` directs you to a page that lists every post with the specified category. */ url?: string; }; type CoverMedia = { /** * If `false`, the cover image is the first media item appearing in the content. */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Is cover media enabled. * Selected by user whether to display cover media on the feed */ enabled?: boolean; /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type CoverMediaMediaOneOf = { /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type CreateCategoryOptions = { /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type CreateCategoryRequest = { /** * Category info. */ category: Categories.Category; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type CreateCategoryResponse = { /** * Category info. */ category?: Categories.Category; }; type CursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type Cursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type DeleteCategoryRequest = { /** * Category ID. */ categoryId: string; }; type DeleteCategoryResponse = {}; type GetCategoryBySlugOptions = { /** * List of category fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"SEO"` and `"URL"`. */ fieldsets?: Array; }; type GetCategoryBySlugRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * * This parameter will be removed on June 30, 2023. * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Slug of the category to retrieve. */ slug: string; }; type GetCategoryBySlugResponse = { /** * Category info. */ category?: Categories.Category; }; type GetCategoryOptions = { /** * List of category fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"SEO"` and `"URL"`. */ fieldsets?: Array; }; type GetCategoryRequest = { /** * Category ID. */ categoryId: string; /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type GetCategoryResponse = { /** * Category info. */ category?: Categories.Category; }; type InitialCategoriesCopied = { /** * Number of categories copied. */ count?: number; }; type ItemMetadata = { /** * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */ _id?: string; /** * Details about the error in case of failure. */ error?: Categories.ApplicationError; /** * Index of the item within the request array. Allows for correlation between request and response items. */ originalIndex?: number; /** * Whether the requested action was successful for this item. When `false`, the `error` field is populated. */ success?: boolean; }; type ListCategoriesOptions = { /** * List of category fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"SEO"` and `"URL"`. */ fieldsets?: Array; /** * Pagination options. */ paging?: Categories.BlogPaging; }; type ListCategoriesRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Pagination options. */ paging?: Categories.BlogPaging; }; type ListCategoriesResponse = { /** * List of categories. */ categories?: Array; /** * Details on the paged set of results returned. */ metaData?: Categories.MetaData; }; type MetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items skipped. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type Paging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type PagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Categories.Cursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type PlatformQuery = { /** * 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`. */ cursorPaging?: Categories.CursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Categories.Paging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type PlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Categories.CursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Categories.Paging; }; type QueryCategoriesOptions = {}; type QueryCategoriesRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Categories.BlogPaging; /** * Query options. */ query?: Categories.PlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 3, 2023. * * Sorting options. */ sort?: Array; }; type QueryCategoriesResponse = { /** * List of categories. */ categories?: Array; /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Categories.MetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Categories.PagingMetadataV2; }; type SeoSchema = { /** * SEO general settings. */ settings?: Categories.Settings; /** * SEO tag information. */ tags?: Array; }; type Settings = { /** * Whether the auto redirects feature creating `301 redirects` on a slug change is enabled. * * Default: enabled */ preventAutoRedirect?: boolean; }; type Sorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type Tag = { /** * SEO tag inner content. For example, ` inner content `. */ children?: string; /** * Whether the tag is a custom tag. */ custom?: boolean; /** * Whether the tag is disabled. */ disabled?: boolean; /** * SEO tag meta data. For example, `{height: 300, width: 240}`. */ meta?: Object; /** * A `{'key':'value'} pair object where each SEO tag property (`'name'`, `'content'`, `'rel'`, `'href'`) contains a value. * For example: `{'name': 'description', 'content': 'the description itself'}`. */ props?: Object; /** * SEO tag type. * * Supported values: `title`, `meta`, `script`, `link`. */ type?: string; }; type UpdateCategory = { /** * Category ID. */ _id?: string; /** * Category cover image. */ coverImage?: string; /** * Reserved for internal use. */ coverMedia?: Categories.CoverMedia; /** * Category description. */ description?: string; /** * Position of the category in the [Category Menu](https://support.wix.com/en/article/wix-blog-adding-and-customizing-a-category-menu). Categories with lower display position are displayed first. */ displayPosition?: number; /** * Reserved for internal use. */ internalId?: string; /** * Category label. Displayed in the Category Menu. */ label?: string; /** * Category Language. * * 2-letter language code in [ISO 639-1 format](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes). */ language?: string; /** * Reserved for internal use. */ oldRank?: number; /** * Number of posts in the category. */ postCount?: number; /** * Reserved for internal use. */ rank?: number; /** * SEO data. */ seoData?: Categories.SeoSchema; /** * Part of a category's URL that refers to a specific category. * * For example, `'https:/example.com/blog/category/{my-category-slug}'`. */ slug?: string; /** * Category title. */ title?: string; /** * ID of the category's translations when [Wix Multilingual](https://wix.wixanswers.com/app/kb/article/36837a9d-5d22-4fa1-9a80-1b99b7f82b5e/en) is installed on a site. All translations of a single category will share the same `translationId`. */ translationId?: string; /** * Category URL. * * The `url` directs you to a page that lists every post with the specified category. */ url?: string; }; type UpdateCategoryOptions = { /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type UpdateCategoryRequest = { /** * Category info. */ category: Categories.Category; /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type UpdateCategoryResponse = { /** * Category info. */ category?: Categories.Category; }; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#) */ interface CategoriesQueryBuilder { /** * Adds a sort to a query, sorting by the specified properties in ascending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#ascending) */ ascending(propertyNames: Array): Categories.CategoriesQueryBuilder; /** * Adds a sort to a query, sorting by the specified properties in descending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#descending) */ descending(propertyNames: Array): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property equals the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#eq) */ eq(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Returns the filtered query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#find) */ find(): Promise; /** * Refines a query to match items where the specified property is greater than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#ge) */ ge(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property is greater than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#gt) */ gt(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Refines a query to match items whose specified property contains any of the specified values. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#hasSome) */ hasSome(propertyName: string, value: Array): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property is less than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#le) */ le(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Limits the number of items the query returns. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#limit) */ limit(limit: number): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property is less than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#lt) */ lt(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property doesn't equal the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#ne) */ ne(propertyName: string, value: any): Categories.CategoriesQueryBuilder; /** * Sets the number of items to skip before returning query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#skip) */ skip(skip: number): Categories.CategoriesQueryBuilder; /** * Refines a query to match items where the specified property starts with the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#startsWith) */ startsWith(propertyName: string, value: string): Categories.CategoriesQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#) */ interface CategoriesQueryResult { /** * Returns the index of the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#currentPage) */ currentPage: number; /** * Returns an array of `categories` items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#items) */ items: Array; /** * Returns the number of items in the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#length) */ length: number; /** * Returns the requested page size. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#pageSize) */ pageSize: number; /** * Returns the `CategorysQueryBuilder` object used to get the current results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#query) */ query: Categories.CategoriesQueryBuilder; /** * Returns the total number of items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#totalCount) */ totalCount: number; /** * Returns the total number of pages the query produced. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#totalPages) */ totalPages: number; /** * Indicates whether the query has more results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#hasNext) */ hasNext(): boolean; /** * Indicates whether the query has previous results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#hasPrev) */ hasPrev(): boolean; /** * Retrieves the next page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#next) */ next(): Promise; /** * Retrieves the previous page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#prev) */ prev(): Promise; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryBuilder.html#) */ namespace CategoriesQueryBuilder { } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Categories.CategoriesQueryResult.html#) */ namespace CategoriesQueryResult { } } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Events.html#) */ namespace Events { type blogV3CategoryApplicationError = { code?: string; data?: Object; description?: string; }; type blogV3CategoryBackendEventMetadata = { /** * ID of the entity associated with the event. */ entityId: string; /** * Event timestamp. */ eventTime: string; /** * Event ID. */ id: string; /** * Whether the event was triggered as a result of a privacy regulation application (for example, [GDPR](https://support.wix.com/en/article/gdpr-frequently-asked-questions)). For advanced users. */ triggeredByAnonymizeRequest: boolean; }; type blogV3CategoryBlogPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to return. * * Default:`50` */ limit?: number; /** * Number of items to skip in the current sort order. * * Default: `0` */ offset?: number; }; type blogV3CategoryBulkActionMetadata = { /** * Number of items that couldn't be processed. */ totalFailures?: number; /** * Number of items that were successfully processed. */ totalSuccesses?: number; /** * Number of failures without details because detailed failure threshold was exceeded. */ undetailedFailures?: number; }; type blogV3CategoryBulkCategoryResult = { /** * Optional created category. */ item?: Events.blogV3CategoryCategory; /** * Bulk actions metadata for category. */ itemMetadata?: Events.blogV3CategoryItemMetadata; }; type blogV3CategoryBulkCreateCategoriesRequest = { /** * Categories to create. */ categories: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type blogV3CategoryBulkCreateCategoriesResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Events.blogV3CategoryBulkActionMetadata; /** * Categories created by bulk action. */ results?: Array; }; type blogV3CategoryBulkUpdateCategoriesRequest = { /** * Categories to update. */ categories: Array; /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of category fields to be included in the response if the entities are present. * Base default fieldset returns all core category properties (all properties that are not a supported fieldset value). * For example, when `URL` fieldset is selected, returned category will include the set of base properties and the category's preview url. */ fieldsets?: Array; /** * Whether to return the full created category entities in the response. */ returnFullEntity?: boolean; }; type blogV3CategoryBulkUpdateCategoriesResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Events.blogV3CategoryBulkActionMetadata; /** * Categories updated by bulk action. */ results?: Array; }; type blogV3CategoryCategory = { /** * Category ID. */ _id?: string; /** * Category cover image. */ coverImage?: string; /** * __Deprecated.__ Use `coverImage` instead. * This property will be removed on June 30, 2023. * * Category cover image or video. */ coverMedia?: Events.blogV3CategoryCoverMedia; /** * Category description. */ description?: string; /** * Category position in sequence. Categories with a lower display position are displayed first. Categories with a position of `-1` appear at the end of the sequence. * * Default: `-1` */ displayPosition?: number; /** * Reserved for internal use. */ internalId?: string; /** * Category label. Displayed in the Category Menu. */ label?: string; /** * Category language. * * Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Reserved for internal use. */ oldRank?: number; /** * Number of posts in the category. */ postCount?: number; /** * __Deprecated.__ Use `displayPosition` instead. * This property will be removed on June 30, 2023. * * Category position in sequence. */ rank?: number; /** * SEO data. */ seoData?: Events.blogV3CategorySeoSchema; /** * Category slug. For example, `'category-slug'`. */ slug?: string; /** * Category title. */ title?: string; /** * ID of the category's translations. All translations of a single category share the same `translationId`. */ translationId?: string; /** * Category URL. */ url?: string; }; type blogV3CategoryCategoryCreated = { /** * Created category. */ entity: Events.blogV3CategoryCategory; /** * Event metadata. */ metadata: Events.blogV3CategoryBackendEventMetadata; }; type blogV3CategoryCategoryDeleted = { /** * Event metadata. */ metadata: Events.blogV3CategoryBackendEventMetadata; }; type blogV3CategoryCategoryUpdated = { /** * Updated category. */ entity: Events.blogV3CategoryCategory; /** * Event metadata. */ metadata: Events.blogV3CategoryBackendEventMetadata; }; type blogV3CategoryCoverMedia = { /** * Whether cover media is custom. If `false` the cover image is set to the first media item that appears in the content. */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Is cover media enabled. * Selected by user whether to display cover media on the feed */ enabled?: boolean; /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type blogV3CategoryCoverMediaMediaOneOf = { /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type blogV3CategoryCreateCategoryRequest = { /** * Category info. */ category: Events.blogV3CategoryCategory; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type blogV3CategoryCreateCategoryResponse = { /** * Category info. */ category?: Events.blogV3CategoryCategory; }; type blogV3CategoryCursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type blogV3CategoryCursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type blogV3CategoryDeleteCategoryRequest = { /** * Category ID. */ categoryId: string; }; type blogV3CategoryDeleteCategoryResponse = {}; type blogV3CategoryGetCategoryBySlugRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * * This parameter will be removed on June 30, 2023. * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Slug of the category to retrieve. */ slug: string; }; type blogV3CategoryGetCategoryBySlugResponse = { /** * Category info. */ category?: Events.blogV3CategoryCategory; }; type blogV3CategoryGetCategoryRequest = { /** * Category ID. */ categoryId: string; /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type blogV3CategoryGetCategoryResponse = { /** * Category info. */ category?: Events.blogV3CategoryCategory; }; type blogV3CategoryInitialCategoriesCopied = { /** * Number of categories copied. */ count?: number; }; type blogV3CategoryItemMetadata = { /** * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */ _id?: string; /** * Details about the error in case of failure. */ error?: Events.blogV3CategoryApplicationError; /** * Index of the item within the request array. Allows for correlation between request and response items. */ originalIndex?: number; /** * Whether the requested action was successful for this item. When `false`, the `error` field is populated. */ success?: boolean; }; type blogV3CategoryListCategoriesRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * Pagination options. */ paging?: Events.blogV3CategoryBlogPaging; }; type blogV3CategoryListCategoriesResponse = { /** * List of categories. */ categories?: Array; /** * Details on the paged set of results returned. */ metaData?: Events.blogV3CategoryMetaData; }; type blogV3CategoryMetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Requested offset. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type blogV3CategoryPaging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type blogV3CategoryPagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Events.blogV3CategoryCursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type blogV3CategoryPlatformQuery = { /** * 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`. */ cursorPaging?: Events.blogV3CategoryCursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3CategoryPaging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type blogV3CategoryPlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Events.blogV3CategoryCursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3CategoryPaging; }; type blogV3CategoryQueryCategoriesRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of category fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Events.blogV3CategoryBlogPaging; /** * Query options. */ query?: Events.blogV3CategoryPlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 3, 2023. * * Sorting options. */ sort?: Array; }; type blogV3CategoryQueryCategoriesResponse = { /** * List of categories. */ categories?: Array; /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Events.blogV3CategoryMetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Events.blogV3CategoryPagingMetadataV2; }; type blogV3CategorySeoSchema = { /** * SEO general settings. */ settings?: Events.blogV3CategorySettings; /** * SEO tags information. */ tags?: Array; }; type blogV3CategorySettings = { /** * Whether the auto redirects feature creating `301 redirects` on a slug change is enabled. * * Default: enabled */ preventAutoRedirect?: boolean; }; type blogV3CategorySorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type blogV3CategoryTag = { /** * SEO tag inner content. For example, ` inner content `. */ children?: string; /** * Whether the tag is a custom tag. */ custom?: boolean; /** * Whether the tag is disabled. */ disabled?: boolean; /** * SEO tag meta data. For example, `{height: 300, width: 240}`. */ meta?: Object; /** * A `{'key':'value'} pair object where each SEO tag property (`'name'`, `'content'`, `'rel'`, `'href'`) contains a value. * For example: `{'name': 'description', 'content': 'the description itself'}`. */ props?: Object; /** * SEO tag type. * * Supported values: `title`, `meta`, `script`, `link`. */ type?: string; }; type blogV3CategoryUpdateCategoryRequest = { /** * Category info. */ category: Events.blogV3CategoryCategory; /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of additional category fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the category’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the category’s base fields are returned. */ fieldsets?: Array; }; type blogV3CategoryUpdateCategoryResponse = { /** * Category info. */ category?: Events.blogV3CategoryCategory; }; type blogV3PostAnchorData = { /** * The target node's ID. */ anchor?: string; }; type blogV3PostAppEmbedData = { /** * Data for embedded Wix Bookings content. */ bookingData?: Events.blogV3PostBookingData; /** * Data for embedded Wix Events content. */ eventData?: Events.blogV3PostEventData; /** * An image for the embedded content. */ image?: Events.blogV3PostMedia; /** * Deprecated: Use `image` instead. */ imageSrc?: string; /** * The ID of the embedded content. */ itemId?: string; /** * The name of the embedded content. */ name?: string; /** * The type of Wix App content being embedded. */ type?: string; /** * The URL for the embedded content. */ url?: string; }; type blogV3PostAppEmbedDataAppDataOneOf = { /** * Data for embedded Wix Bookings content. */ bookingData?: Events.blogV3PostBookingData; /** * Data for embedded Wix Events content. */ eventData?: Events.blogV3PostEventData; }; type blogV3PostAudioData = { /** * Audio file details. */ audio?: Events.blogV3PostMedia; /** * Author name. */ authorName?: string; /** * Styling for the audio node's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Cover image. */ coverImage?: Events.blogV3PostMedia; /** * Sets whether the audio node's download button is disabled. */ disableDownload?: boolean; /** * An HTML version of the audio node. */ html?: string; /** * Track name. */ name?: string; }; type blogV3PostBackendEventMetadata = { /** * ID of the entity associated with the event. */ entityId: string; /** * Event timestamp. */ eventTime: string; /** * Event ID. */ id: string; /** * Whether the event was triggered as a result of a privacy regulation application (for example, [GDPR](https://support.wix.com/en/article/gdpr-frequently-asked-questions)). For advanced users. */ triggeredByAnonymizeRequest: boolean; }; type blogV3PostBackground = { /** * The background color as a hexademical value. */ color?: string; /** * Details for a gradient background. */ gradient?: Events.blogV3PostGradient; /** * An image to use for the background. */ image?: Events.blogV3PostMedia; /** * Background type. For each option, include the relevant details. */ type?: string; }; type blogV3PostBackgroundBackgroundOneOf = { /** * The background color as a hexademical value. */ color?: string; /** * Details for a gradient background. */ gradient?: Events.blogV3PostGradient; /** * An image to use for the background. */ image?: Events.blogV3PostMedia; }; type blogV3PostBlockquoteData = { /** * Indentation level. */ indentation?: number; }; type blogV3PostBlogCursorPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type blogV3PostBlogMedia = { /** * Whether custom cover media has been specified. If `false`, the first media item in the post's content serves as cover media. */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Embed media details. */ embedMedia?: Events.blogV3PostEmbedMedia; /** * Wix Media details. */ wixMedia?: Events.blogV3PostWixMedia; }; type blogV3PostBlogMediaMediaOneOf = { /** * Embed media details. */ embedMedia?: Events.blogV3PostEmbedMedia; /** * Wix Media details. */ wixMedia?: Events.blogV3PostWixMedia; }; type blogV3PostBlogPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to return. * * Default:`50` */ limit?: number; /** * Number of items to skip in the current sort order. * * Default: `0` */ offset?: number; }; type blogV3PostBookingData = { /** * Booking duration in minutes. */ durations?: string; }; type blogV3PostBorder = { /** * Border radius in pixels. */ radius?: number; /** * Border width in pixels. */ width?: number; }; type blogV3PostBorderColors = { /** * Bottom border color as a hexadecimal value. */ bottom?: string; /** * Left border color as a hexadecimal value. */ left?: string; /** * Right border color as a hexadecimal value. */ right?: string; /** * Top border color as a hexadecimal value. */ top?: string; }; type blogV3PostBulkGetPostMetricsRequest = { /** * Post IDs. */ postIds: Array; }; type blogV3PostBulkGetPostMetricsResponse = { /** * Map of post.id to metrics */ metrics?: Record; }; type blogV3PostBulkGetPostReactionsRequest = { /** * Post IDs. */ postIds: Array; }; type blogV3PostBulkGetPostReactionsResponse = { /** * Map of post.id to reactions */ reactionsMap?: Record; }; type blogV3PostBulletedListData = { /** * Indentation level. */ indentation?: number; }; type blogV3PostButtonData = { /** * Styling for the button's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Button link details. */ link?: Events.blogV3PostLink; /** * Styling for the button. */ styles?: Events.blogV3PostStyles; /** * The text to display on the button. */ text?: string; /** * The button type. */ type?: string; }; type blogV3PostCategory = { /** * Category ID. */ _id?: string; /** * Category cover image. */ coverImage?: string; /** * __Deprecated.__ Use `coverImage` instead. * This property will be removed on June 30, 2023. * * Category cover image or video. */ coverMedia?: Events.blogV3PostCoverMedia; /** * Category description. */ description?: string; /** * Category position in sequence. Categories with a lower display position are displayed first. Categories with a position of `-1` appear at the end of the sequence. * * Default: `-1` */ displayPosition?: number; /** * Reserved for internal use. */ internalId?: string; /** * Category label. Displayed in the Category Menu. */ label?: string; /** * Category language. * * Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Reserved for internal use. */ oldRank?: number; /** * Number of posts in the category. */ postCount?: number; /** * __Deprecated.__ Use `displayPosition` instead. * This property will be removed on June 30, 2023. * * Category position in sequence. */ rank?: number; /** * SEO data. */ seoData?: Events.blogV3PostSeoSchema; /** * Category slug. For example, `'category-slug'`. */ slug?: string; /** * Category title. */ title?: string; /** * ID of the category's translations. All translations of a single category share the same `translationId`. */ translationId?: string; /** * Category URL. */ url?: string; }; type blogV3PostCellStyle = { /** * Cell background color as a hexadecimal value. */ backgroundColor?: string; /** * Vertical alignment for the cell's text. */ verticalAlignment?: string; }; type blogV3PostCodeBlockData = { /** * Styling for the code block's text. */ textStyle?: Events.blogV3PostTextStyle; }; type blogV3PostCollapsibleListData = { /** * Styling for the collapsible list's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * The direction of the text in the list. Either left-to-right or right-to-left. */ direction?: string; /** * If `true`, only one item can be expanded at a time. */ expandOnlyOne?: boolean; /** * Sets which items are expanded when the page loads. */ initialExpandedItems?: string; /** * If `true`, The collapsible item will appear in search results as an FAQ. */ isQapageData?: boolean; }; type blogV3PostColorData = { /** * The text's background color as a hexadecimal value. */ background?: string; /** * The text's foreground color as a hexadecimal value. */ foreground?: string; }; type blogV3PostColors = { /** * The background color as a hexadecimal value. */ background?: string; /** * The border color as a hexadecimal value. */ border?: string; /** * The text color as a hexadecimal value. */ text?: string; }; type blogV3PostCoverMedia = { /** * Whether cover media is custom. If `false` the cover image is set to the first media item that appears in the content. */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Is cover media enabled. * Selected by user whether to display cover media on the feed */ enabled?: boolean; /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type blogV3PostCoverMediaMediaOneOf = { /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type blogV3PostCreateDraftPostFromTemplateRequest = { /** * Post template id */ postTemplateId: string; }; type blogV3PostCreateDraftPostFromTemplateResponse = { /** * Created draft post */ draftPost?: Events.blogV3PostDraftPost; }; type blogV3PostCursorMetaData = { /** * Cursor pointing to next result page. */ next?: string; }; type blogV3PostCursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type blogV3PostCursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type blogV3PostDecoration = { /** * Data for an anchor link decoration. */ anchorData?: Events.blogV3PostAnchorData; /** * Data for a color decoration. */ colorData?: Events.blogV3PostColorData; /** * Data for a font size decoration. */ fontSizeData?: Events.blogV3PostFontSizeData; /** * Font weight for a bold decoration. */ fontWeightValue?: number; /** * Data for an italic decoration. */ italicData?: boolean; /** * Data for an external link decoration. */ linkData?: Events.blogV3PostLinkData; /** * Data for a mention decoration. */ mentionData?: Events.blogV3PostMentionData; /** * The type of decoration to apply. */ type?: string; /** * Data for an underline decoration. */ underlineData?: boolean; }; type blogV3PostDecorationDataOneOf = { /** * Data for an anchor link decoration. */ anchorData?: Events.blogV3PostAnchorData; /** * Data for a color decoration. */ colorData?: Events.blogV3PostColorData; /** * Data for a font size decoration. */ fontSizeData?: Events.blogV3PostFontSizeData; /** * Font weight for a bold decoration. */ fontWeightValue?: number; /** * Data for an italic decoration. */ italicData?: boolean; /** * Data for an external link decoration. */ linkData?: Events.blogV3PostLinkData; /** * Data for a mention decoration. */ mentionData?: Events.blogV3PostMentionData; /** * Data for an underline decoration. */ underlineData?: boolean; }; type blogV3PostDesign = { /** * Styling for voting options. */ options?: Events.blogV3PostOptionDesign; /** * Styling for the poll. */ poll?: Events.blogV3PostPollDesign; }; type blogV3PostDimensions = { /** * An array representing the minimum width of each column in pixels. */ colsMinWidth?: Array; /** * An array representing relative width of each column in relation to the other columns. */ colsWidthRatio?: Array; /** * An array representing the height of each row in pixels. */ rowsHeight?: Array; }; type blogV3PostDividerData = { /** * Divider alignment. */ alignment?: string; /** * Styling for the divider's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Divider line style. */ lineStyle?: string; /** * Divider width. */ width?: string; }; type blogV3PostDocumentStyle = { /** * Styling for block quote nodes. */ blockquote?: Events.blogV3PostTextNodeStyle; /** * Styling for code block nodes. */ codeBlock?: Events.blogV3PostTextNodeStyle; /** * Styling for H5 nodes. */ headerFive?: Events.blogV3PostTextNodeStyle; /** * Styling for H4 nodes. */ headerFour?: Events.blogV3PostTextNodeStyle; /** * Styling for H1 nodes. */ headerOne?: Events.blogV3PostTextNodeStyle; /** * Styling for H6 nodes. */ headerSix?: Events.blogV3PostTextNodeStyle; /** * Styling for H3 nodes. */ headerThree?: Events.blogV3PostTextNodeStyle; /** * Styling for H2 nodes. */ headerTwo?: Events.blogV3PostTextNodeStyle; /** * Styling for paragraph nodes. */ paragraph?: Events.blogV3PostTextNodeStyle; }; type blogV3PostDraftPost = { /** * Date the draft post was first created. */ _createdDate?: Date; /** * Draft post ID. */ _id?: string; /** * Category IDs of the draft post. */ categoryIds?: Array; /** * Reserved for internal use. */ changeOrigin?: string; /** * Whether commenting on the draft post is enabled. */ commentingEnabled?: boolean; /** * Reserved for internal use. */ content?: Object; /** * Reserved for internal use. */ contentId?: string; /** * Date the draft post was last edited. */ editedDate?: Date; /** * Reserved for internal use. */ editingSessionId?: string; /** * Draft post excerpt. * * If no excerpt has been manually set, an excerpt is automatically generated from the post's text. * This can be retrieved using the `GENERATED_EXCERPT` fieldset. */ excerpt?: string; /** * Whether the draft post is marked as featured. */ featured?: boolean; /** * Date the post was first published. */ firstPublishedDate?: Date; /** * Indicates if there are changes made to the draft post that have not yet been published. */ hasUnpublishedChanges?: boolean; /** * Hashtags in the post. */ hashtags?: Array; /** * Image placed at the top of the blog page. */ heroImage?: string; /** * Reserved for internal use. */ internalId?: string; /** * Language the draft 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. */ language?: string; /** * Post cover media. */ media?: Events.blogV3PostBlogMedia; /** * Draft post owner's member ID. */ memberId?: string; /** * Estimated reading time of the draft post (calculated automatically). */ minutesToRead?: number; /** * Details of the draft post in review. Only relevant to posts submitted by guest writers. */ moderationDetails?: Events.blogV3PostModerationDetails; /** * Reserved for internal use. */ mostRecentContributorId?: string; /** * Reserved for internal use. */ paidContentParagraph?: number; /** * Number of paragraphs to display in a paid content preview for non-paying users. */ previewTextParagraph?: number; /** * [Pricing plan IDs](https://dev.wix.com/api/rest/wix-pricing-plans). Only relevant if a post is assigned to a specific pricing plan. */ pricingPlanIds?: Array; /** * IDs of posts related to this draft post. */ relatedPostIds?: Array; /** * Draft Post rich content. */ richContent?: Events.blogV3PostRichContent; /** * Date the draft post is scheduled to be published. */ scheduledPublishDate?: Date; /** * SEO data. */ seoData?: Events.blogV3PostSeoSchema; /** * SEO slug. */ seoSlug?: string; /** * Reserved for internal use. */ slugs?: Array; /** * Status of the draft post. */ status?: string; /** * Tag IDs the draft post is tagged with. */ tagIds?: Array; /** * Draft post title. */ title?: string; /** * ID of the draft post's translations. * * All translations of a single post share the same `translationId`. */ translationId?: string; /** * Draft post URL preview. What the URL will look like once the post is published. */ url?: string; }; type blogV3PostDraftPostTranslation = { /** * Post ID. */ _id?: string; /** * Language the post is written in. */ language?: string; /** * SEO data. */ seoData?: Events.blogV3PostSeoSchema; /** * Post slug. For example, 'post-slug'. */ slug?: string; /** * Post status. */ status?: string; /** * Post URL. */ url?: string; }; type blogV3PostEmbedData = { /** * Styling for the oEmbed node's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * An [oEmbed](https://www.oembed.com) object. */ oembed?: Events.blogV3PostOembed; /** * Origin asset source. */ src?: string; }; type blogV3PostEmbedMedia = { /** * Thumbnail details. */ thumbnail?: Events.blogV3PostEmbedThumbnail; /** * Video details. */ video?: Events.blogV3PostEmbedVideo; }; type blogV3PostEmbedThumbnail = { /** * Thumbnail height. */ height?: number; /** * Thumbnail url. */ url?: string; /** * Thumbnail width. */ width?: number; }; type blogV3PostEmbedVideo = { /** * Video height. */ height?: number; /** * Video url. */ url?: string; /** * Video width. */ width?: number; }; type blogV3PostEventData = { /** * Event location. */ location?: string; /** * Event schedule. */ scheduling?: string; }; type blogV3PostFileData = { /** * Styling for the file's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * File MIME type. */ mimeType?: string; /** * File name. */ name?: string; /** * File path. */ path?: string; /** * Settings for PDF files. */ pdfSettings?: Events.blogV3PostPdfSettings; /** * File size in KB. */ size?: number; /** * The source for the file's data. */ src?: Events.blogV3PostFileSource; /** * File type. */ type?: string; }; type blogV3PostFileSource = { /** * An ID that's resolved to a URL by a resolver function. */ _id?: string; /** * Custom ID. Use `id` instead. */ custom?: string; /** * Indicates whether the file's source is private. */ private?: boolean; /** * The absolute URL for the file's source. */ url?: string; }; type blogV3PostFileSourceDataOneOf = { /** * An ID that's resolved to a URL by a resolver function. */ _id?: string; /** * Custom ID. Use `id` instead. */ custom?: string; /** * The absolute URL for the file's source. */ url?: string; }; type blogV3PostFontSizeData = { /** * The units used for the font size. */ unit?: string; /** * Font size value. */ value?: number; }; type blogV3PostGalleryData = { /** * Styling for the gallery's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Sets whether the gallery's download button is disabled. */ disableDownload?: boolean; /** * Sets whether the gallery's expand button is disabled. */ disableExpand?: boolean; /** * The items in the gallery. */ items?: Array; /** * Options for defining the gallery's appearance. */ options?: Events.blogV3PostGalleryOptions; }; type blogV3PostGalleryOptions = { /** * Styling for gallery items. */ item?: Events.blogV3PostItemStyle; /** * Gallery layout. */ layout?: Events.blogV3PostLayout; /** * Styling for gallery thumbnail images. */ thumbnails?: Events.blogV3PostThumbnails; }; type blogV3PostGetPostBySlugRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of post fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional post fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the post’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the post’s base fields are returned. */ fieldsets?: Array; /** * Slug of the post to retrieve. */ slug: string; }; type blogV3PostGetPostBySlugResponse = { /** * Post info. */ post?: Events.blogV3PostPost; }; type blogV3PostGetPostMetricsRequest = { /** * Post ID. */ postId: string; }; type blogV3PostGetPostMetricsResponse = { /** * Post metrics. */ metrics?: Events.blogV3PostMetrics; }; type blogV3PostGetPostRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of post fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional post fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the post’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the post’s base fields are returned. */ fieldsets?: Array; /** * Post ID. */ postId: string; }; type blogV3PostGetPostResponse = { /** * Post info. */ post?: Events.blogV3PostPost; }; type blogV3PostGetTemplateRequest = { /** * Post template id */ postTemplateId: string; }; type blogV3PostGetTemplateResponse = { /** * Post template */ postTemplate?: Events.blogV3PostPost; }; type blogV3PostGetTotalLikesPerMemberRequest = { /** * Member ID. */ memberId: string; }; type blogV3PostGetTotalLikesPerMemberResponse = { /** * The total number of likes of the member. */ total?: number; }; type blogV3PostGetTotalPostsRequest = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * Pass a language to receive the total amount of posts in that specified language. */ language?: string; }; type blogV3PostGetTotalPostsResponse = { /** * Total amount of published posts. */ total?: number; }; type blogV3PostGetTotalPublicationsRequest = { /** * Language filter */ language?: string; }; type blogV3PostGetTotalPublicationsResponse = { /** * Total amount of publications. */ total?: number; }; type blogV3PostGif = { /** * GIF format URL. */ gif?: string; /** * MP4 format URL. */ mp4?: string; /** * Thumbnail URL. */ still?: string; }; type blogV3PostGifData = { /** * Styling for the GIF's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * The source of the downsized GIF. */ downsized?: Events.blogV3PostGif; /** * Height in pixels. */ height?: number; /** * The source of the full size GIF. */ original?: Events.blogV3PostGif; /** * Width in pixels. */ width?: number; }; type blogV3PostGradient = { /** * The gradient angle in degrees. */ angle?: number; /** * The end color as a hexademical value. */ lastColor?: string; /** * The start color as a hexademical value. */ startColor?: string; }; type blogV3PostHeadingData = { /** * Indentation level from 1-6. */ indentation?: number; /** * Heading level from 1-6. */ level?: number; /** * Styling for the heading text. */ textStyle?: Events.blogV3PostTextStyle; }; type blogV3PostHeight = { /** * A custom height value in pixels. */ custom?: string; }; type blogV3PostHtmlData = { /** * Styling for the HTML node's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * The HTML code for the node. */ html?: string; /** * Whether this is an AdSense element. Use `source` instead. */ isAdsense?: boolean; /** * The type of HTML code. */ source?: string; /** * The URL for the HTML code for the node. */ url?: string; }; type blogV3PostHtmlDataDataOneOf = { /** * The HTML code for the node. */ html?: string; /** * Whether this is an AdSense element. Use `source` instead. */ isAdsense?: boolean; /** * The URL for the HTML code for the node. */ url?: string; }; type blogV3PostImage = { /** * Link details for images that are links. */ link?: Events.blogV3PostLink; /** * Image file details. */ media?: Events.blogV3PostMedia; }; type blogV3PostImageData = { /** * Image's alternative text. */ altText?: string; /** * Image caption. */ caption?: string; /** * Styling for the image's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Sets whether the image's download button is disabled. */ disableDownload?: boolean; /** * Sets whether the image expands to full screen when clicked. */ disableExpand?: boolean; /** * Image file details. */ image?: Events.blogV3PostMedia; /** * Link details for images that are links. */ link?: Events.blogV3PostLink; }; type blogV3PostInitialPostsCopied = { /** * Number of posts copied. */ count?: number; }; type blogV3PostItem = { /** * Item's alternative text. */ altText?: string; /** * An image item. */ image?: Events.blogV3PostImage; /** * Item title. */ title?: string; /** * A video item. */ video?: Events.blogV3PostItemVideo; }; type blogV3PostItemDataOneOf = { /** * An image item. */ image?: Events.blogV3PostImage; /** * A video item. */ video?: Events.blogV3PostItemVideo; }; type blogV3PostItemStyle = { /** * Sets how item images are cropped. */ crop?: string; /** * Item ratio */ ratio?: number; /** * The spacing between items in pixels. */ spacing?: number; /** * Desirable dimension for each item in pixels (behvaior changes according to gallery type) */ targetSize?: number; }; type blogV3PostItemVideo = { /** * Video file details. */ media?: Events.blogV3PostMedia; /** * Video thumbnail file details. */ thumbnail?: Events.blogV3PostMedia; }; type blogV3PostLayout = { /** * Sets whether horizontal scroll is enabled. */ horizontalScroll?: boolean; /** * The number of columns to display on mobile screens. */ mobileNumberOfColumns?: number; /** * The number of columns to display on full size screens. */ numberOfColumns?: number; /** * Gallery orientation. */ orientation?: string; /** * Gallery layout type. */ type?: string; }; type blogV3PostLink = { /** * The target node's ID. Used for linking to another node in this object. */ anchor?: string; /** * A serialized object used for a custom or external link panel. */ customData?: string; /** * The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */ rel?: Events.blogV3PostRel; /** * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows: * `SELF` - Default. Opens the linked document in the same frame as the link. * `BLANK` - Opens the linked document in a new browser tab or window. * `PARENT` - Opens the linked document in the link's parent frame. * `TOP` - Opens the linked document in the full body of the link's browser tab or window. */ target?: string; /** * The absolute URL for the linked document. */ url?: string; }; type blogV3PostLinkData = { /** * Link details. */ link?: Events.blogV3PostLink; }; type blogV3PostLinkDataOneOf = { /** * The target node's ID. Used for linking to another node in this object. */ anchor?: string; /** * The absolute URL for the linked document. */ url?: string; }; type blogV3PostLinkPreviewData = { /** * Styling for the link preview's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Preview description. */ description?: string; /** * The preview content as HTML. */ html?: string; /** * Link details. */ link?: Events.blogV3PostLink; /** * Preview thumbnail URL. */ thumbnailUrl?: string; /** * Preview title. */ title?: string; }; type blogV3PostListMigratedPostsRequest = { /** * New blog version instance id */ instanceId: string; /** * Cursor pointing to page of results */ paging?: Events.blogV3PostBlogCursorPaging; }; type blogV3PostListMigratedPostsResponse = { /** * Pagination */ pagingMetaData?: Events.blogV3PostCursorMetaData; /** * List of posts */ posts?: Array; /** * Data of post in old blog by post id */ postsMigrationMeta?: Record; }; type blogV3PostListPostsRequest = { /** * Category filter. * * Pass an array of category IDs to return only posts with any of the provided categories. * If omitted, all posts with or without associated categories are returned. */ categoryIds?: Array; /** * Whether to return only featured posts. * * Default: `false` */ featured?: boolean; /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of post fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional post fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the post’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the post’s base fields are returned. */ fieldsets?: Array; /** * Hashtag filter. * * Pass an array of hashtags to return only posts containing any of the provided hashtags. * If omitted, all posts with or without hashtags are returned. */ hashtags?: Array; /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * Pass a language to only receive posts that are in that language. * If omitted, posts in all languages are returned. */ language?: string; /** * Post owner's member ID. */ memberId?: string; /** * Pagination options. */ paging?: Events.blogV3PostBlogPaging; /** * Sorting options. * * - `FEED`: Ordered by `firstPublishedDate` in descending order with pinned posts first. * - `VIEW_COUNT`: Ordered by total number of views in descending order. * - `LIKE_COUNT`: Ordered by total number of likes in descending order. * - `PUBLISHED_DATE_ASC`: Ordered by `firstPublishedDate` in ascending order. * - `PUBLISHED_DATE_DESC`: Ordered by `firstPublishedDate` in descending order. * - `TITLE_ASC`: Ordered by `title` in ascening order. * - `TITLE_DESC`: Ordered by `title` in descending order. * - `RATING`: reserved for internal use. * * Default: `FEED` */ sort?: string; /** * Tag filter. * * Pass an array of tag IDs to return only posts with any of the provided tags. * If omitted, all posts with or without tags are returned. */ tagIds?: Array; }; type blogV3PostListPostsResponse = { /** * Details on the paged set of results returned. */ metaData?: Events.blogV3PostMetaData; /** * List of posts. */ posts?: Array; }; type blogV3PostListTemplatesRequest = { /** * Filter post templates by given template category ids */ categoryIds?: Array; /** * Filter post templates by provided language */ language?: string; /** * Returns post template categories when set to TRUE */ listTemplateCategories?: boolean; /** * Pagination options. */ paging?: Events.blogV3PostBlogPaging; /** * Sort order by ascending/descending publish date. Default is ascending publish date sort */ sort?: string; }; type blogV3PostListTemplatesResponse = { /** * Available post templates */ postTemplates?: Array; /** * Details on the paged set of posts templates returned. */ postTemplatesMetaData?: Events.blogV3PostMetaData; /** * Post template categories. This value is returned empty unless asked explicitly */ templateCategories?: Array; }; type blogV3PostListValue = { /** * Repeated field of dynamically typed values. */ values?: Array; }; type blogV3PostMapData = { /** * Styling for the map's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Map settings. */ mapSettings?: Events.blogV3PostMapSettings; }; type blogV3PostMapSettings = { /** * The address to display on the map. */ address?: string; /** * Sets whether the map is draggable. */ draggable?: boolean; /** * Initial zoom value. */ initialZoom?: number; /** * Location latitude. */ lat?: number; /** * Location longitude. */ lng?: number; /** * Location name. */ locationName?: string; /** * Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */ mapType?: string; /** * Sets whether the location marker is visible. */ marker?: boolean; /** * Sets whether street view control is enabled. */ streetViewControl?: boolean; /** * Sets whether view mode control is enabled. */ viewModeControl?: boolean; /** * Sets whether zoom control is enabled. */ zoomControl?: boolean; }; type blogV3PostMedia = { /** * Media duration in seconds. Only relevant for audio and video files. */ duration?: number; /** * Media height in pixels. */ height?: number; /** * The source for the media's data. */ src?: Events.blogV3PostFileSource; /** * Media width in pixels. */ width?: number; }; type blogV3PostMentionData = { /** * Mentioned user's ID. */ _id?: string; /** * The mentioned user's name. */ name?: string; /** * The version of the user's name that appears after the `@` character in the mention. */ slug?: string; }; type blogV3PostMetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Requested offset. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type blogV3PostMetadata = { /** * Object ID. */ _id?: string; /** * When the object was created. */ createdTimestamp?: Date; /** * When the object was most recently updated. */ updatedTimestamp?: Date; /** * Schema version. */ version?: number; }; type blogV3PostMetrics = { /** * Total number of post comments. */ comments?: number; /** * Total number of post likes. */ likes?: number; /** * Total number of post views. */ views?: number; }; type blogV3PostModerationDetails = { /** * Member ID of the person who approved or rejected the post. */ moderatedBy?: string; /** * Date the post was approved or rejected. */ moderationDate?: Date; /** * Status indicating whether the submission was approved or rejected by the moderator. */ status?: string; /** * Member ID of the person submitting the draft post for review. */ submittedBy?: string; /** * Date the post was submitted for review. */ submittedDate?: Date; }; type blogV3PostNode = { /** * Node ID. */ _id?: string; /** * Data for an app embed node. */ appEmbedData?: Events.blogV3PostAppEmbedData; /** * Data for an audio node. */ audioData?: Events.blogV3PostAudioData; /** * Data for a block quote node. */ blockquoteData?: Events.blogV3PostBlockquoteData; /** * Data for a bulleted list node. */ bulletedListData?: Events.blogV3PostBulletedListData; /** * Data for a button node. */ buttonData?: Events.blogV3PostButtonData; /** * Data for a code block node. */ codeBlockData?: Events.blogV3PostCodeBlockData; /** * Data for a collapsible list node. */ collapsibleListData?: Events.blogV3PostCollapsibleListData; /** * Data for a divider node. */ dividerData?: Events.blogV3PostDividerData; /** * Data for an oEmbed node. */ embedData?: Events.blogV3PostEmbedData; /** * Data for a custon external node. */ externalData?: Object; /** * Data for a file node. */ fileData?: Events.blogV3PostFileData; /** * Data for a gallery node. */ galleryData?: Events.blogV3PostGalleryData; /** * Data for a GIF node. */ gifData?: Events.blogV3PostGifData; /** * Data for a heading node. */ headingData?: Events.blogV3PostHeadingData; /** * Data for an embedded HTML node. */ htmlData?: Events.blogV3PostHtmlData; /** * Data for an image node. */ imageData?: Events.blogV3PostImageData; /** * Data for a link preview node. */ linkPreviewData?: Events.blogV3PostLinkPreviewData; /** * Data for a map node. */ mapData?: Events.blogV3PostMapData; /** * A list of child nodes. */ nodes?: Array; /** * Data for an ordered list node. */ orderedListData?: Events.blogV3PostOrderedListData; /** * Data for a paragraph node. */ paragraphData?: Events.blogV3PostParagraphData; /** * Data for a poll node. */ pollData?: Events.blogV3PostPollData; /** * Padding and background color styling for the node. */ style?: Events.blogV3PostNodeStyle; /** * Data for a table cell node. */ tableCellData?: Events.blogV3PostTableCellData; /** * Data for a table node. */ tableData?: Events.blogV3PostTableData; /** * Data for a text node. Used to apply decorations to text. */ textData?: Events.blogV3PostTextData; /** * 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. */ type?: string; /** * Data for a video node. */ videoData?: Events.blogV3PostVideoData; }; type blogV3PostNodeDataOneOf = { /** * Data for an app embed node. */ appEmbedData?: Events.blogV3PostAppEmbedData; /** * Data for an audio node. */ audioData?: Events.blogV3PostAudioData; /** * Data for a block quote node. */ blockquoteData?: Events.blogV3PostBlockquoteData; /** * Data for a bulleted list node. */ bulletedListData?: Events.blogV3PostBulletedListData; /** * Data for a button node. */ buttonData?: Events.blogV3PostButtonData; /** * Data for a code block node. */ codeBlockData?: Events.blogV3PostCodeBlockData; /** * Data for a collapsible list node. */ collapsibleListData?: Events.blogV3PostCollapsibleListData; /** * Data for a divider node. */ dividerData?: Events.blogV3PostDividerData; /** * Data for an oEmbed node. */ embedData?: Events.blogV3PostEmbedData; /** * Data for a custon external node. */ externalData?: Object; /** * Data for a file node. */ fileData?: Events.blogV3PostFileData; /** * Data for a gallery node. */ galleryData?: Events.blogV3PostGalleryData; /** * Data for a GIF node. */ gifData?: Events.blogV3PostGifData; /** * Data for a heading node. */ headingData?: Events.blogV3PostHeadingData; /** * Data for an embedded HTML node. */ htmlData?: Events.blogV3PostHtmlData; /** * Data for an image node. */ imageData?: Events.blogV3PostImageData; /** * Data for a link preview node. */ linkPreviewData?: Events.blogV3PostLinkPreviewData; /** * Data for a map node. */ mapData?: Events.blogV3PostMapData; /** * Data for an ordered list node. */ orderedListData?: Events.blogV3PostOrderedListData; /** * Data for a paragraph node. */ paragraphData?: Events.blogV3PostParagraphData; /** * Data for a poll node. */ pollData?: Events.blogV3PostPollData; /** * Data for a table cell node. */ tableCellData?: Events.blogV3PostTableCellData; /** * Data for a table node. */ tableData?: Events.blogV3PostTableData; /** * Data for a text node. Used to apply decorations to text. */ textData?: Events.blogV3PostTextData; /** * Data for a video node. */ videoData?: Events.blogV3PostVideoData; }; type blogV3PostNodeStyle = { /** * The background color as a hexadecimal value. */ backgroundColor?: string; /** * The bottom padding value in pixels. */ paddingBottom?: string; /** * The top padding value in pixels. */ paddingTop?: string; }; type blogV3PostOembed = { /** * The name of the author or owner of the resource. */ authorName?: string; /** * The URL for the author or owner of the resource. */ authorUrl?: string; /** * The height of the resource specified in the `url` property in pixels. */ height?: number; /** * HTML for embedding a video player. The HTML should have no padding or margins. */ html?: string; /** * The name of the resource provider. */ providerName?: string; /** * The URL for the resource provider. */ providerUrl?: string; /** * The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */ thumbnailHeight?: string; /** * The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */ thumbnailUrl?: string; /** * The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */ thumbnailWidth?: string; /** * Resource title. */ title?: string; /** * The resource type. */ type?: string; /** * The source URL for the resource. */ url?: string; /** * The oEmbed version number. This value must be `1.0`. */ version?: string; /** * The URL for an embedded viedo. */ videoUrl?: string; /** * The width of the resource specified in the `url` property in pixels. */ width?: number; }; type blogV3PostOldBlogMigratedEvent = { /** * Instance id of new version of blog */ newBlogInstanceId?: string; /** * Instance id of old version of blog */ oldBlogInstanceId?: string; }; type blogV3PostOption = { /** * Option ID. */ _id?: string; /** * The image displayed with the option. */ image?: Events.blogV3PostMedia; /** * Option title. */ title?: string; }; type blogV3PostOptionDesign = { /** * Border radius in pixels. */ borderRadius?: number; }; type blogV3PostOptionLayout = { /** * Sets whether to display option images. */ enableImage?: boolean; }; type blogV3PostOrderedListData = { /** * Indentation level. */ indentation?: number; }; type blogV3PostPaging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type blogV3PostPagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Events.blogV3PostCursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type blogV3PostParagraphData = { /** * Indentation level from 1-6. */ indentation?: number; /** * Styling for the paragraph text. */ textStyle?: Events.blogV3PostTextStyle; }; type blogV3PostPdfSettings = { /** * Sets whether the PDF download button is disabled. */ disableDownload?: boolean; /** * Sets whether the PDF print button is disabled. */ disablePrint?: boolean; /** * PDF view mode. One of the following: * `NONE` : The PDF isn't displayed. * `FULL` : A full page view of the PDF is displayed. * `MINI` : A mini view of the PDF is displayed. */ viewMode?: string; }; type blogV3PostPeriodPostCount = { /** * Start of time range in ISO 8601 date and time format. */ periodStart?: Date; /** * Number of posts published during this month. */ postCount?: number; }; type blogV3PostPeriodPublicationsCount = { /** * Start of time range in ISO 8601 date and time format. */ periodStart?: Date; /** * Number of posts published during this month. */ publicationsCount?: number; }; type blogV3PostPermissions = { /** * Sets whether one voter can vote multiple times. */ allowMultipleVotes?: boolean; /** * Sets who can view the poll results. */ view?: string; /** * Sets who can vote. */ vote?: string; }; type blogV3PostPlatformQuery = { /** * 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`. */ cursorPaging?: Events.blogV3PostCursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3PostPaging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type blogV3PostPlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Events.blogV3PostCursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3PostPaging; }; type blogV3PostPlaybackOptions = { /** * Sets whether the media will automatically start playing. */ autoPlay?: boolean; /** * Sets whether media's will be looped. */ playInLoop?: boolean; /** * Sets whether media's controls will be shown. */ showControls?: boolean; }; type blogV3PostPluginContainerData = { /** * The node's alignment within its container. */ alignment?: string; /** * The height of the node when it's displayed. */ height?: Events.blogV3PostHeight; /** * Spoiler cover settings for the node. */ spoiler?: Events.blogV3PostSpoiler; /** * 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. */ textWrap?: boolean; /** * The width of the node when it's displayed. */ width?: Events.blogV3PostPluginContainerDataWidth; }; type blogV3PostPluginContainerDataWidth = { /** * A custom width value in pixels. */ custom?: string; /** * One of the following predefined width options: * `CONTENT`: The width of the container matches the content width. * `SMALL`: Small width. * `ORIGINAL`: The width of the container matches the original asset width. * `FULL_WIDTH`: Full width. */ size?: string; }; type blogV3PostPluginContainerDataWidthDataOneOf = { /** * A custom width value in pixels. */ custom?: string; /** * One of the following predefined width options: * `CONTENT`: The width of the container matches the content width. * `SMALL`: Small width. * `ORIGINAL`: The width of the container matches the original asset width. * `FULL_WIDTH`: Full width. */ size?: string; }; type blogV3PostPoll = { /** * Poll ID. */ _id?: string; /** * Poll creator ID. */ creatorId?: string; /** * Main poll image. */ image?: Events.blogV3PostMedia; /** * Voting options. */ options?: Array; /** * The poll's permissions and display settings. */ settings?: Events.blogV3PostPollSettings; /** * Poll title. */ title?: string; }; type blogV3PostPollData = { /** * Styling for the poll's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Styling for the poll and voting options. */ design?: Events.blogV3PostDesign; /** * Layout settings for the poll and voting options. */ layout?: Events.blogV3PostPollDataLayout; /** * Poll data. */ poll?: Events.blogV3PostPoll; }; type blogV3PostPollDataLayout = { /** * Voting otpions layout settings. */ options?: Events.blogV3PostOptionLayout; /** * Poll layout settings. */ poll?: Events.blogV3PostPollLayout; }; type blogV3PostPollDesign = { /** * Background styling. */ background?: Events.blogV3PostBackground; /** * Border radius in pixels. */ borderRadius?: number; }; type blogV3PostPollLayout = { /** * The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */ direction?: string; /** * Sets whether to display the main poll image. */ enableImage?: boolean; /** * The layout for displaying the voting options. */ type?: string; }; type blogV3PostPollSettings = { /** * Permissions settings for voting. */ permissions?: Events.blogV3PostPermissions; /** * Sets whether voters are displayed in the vote results. */ showVoters?: boolean; /** * Sets whether the vote count is displayed. */ showVotesCount?: boolean; }; type blogV3PostPost = { /** * Post ID. */ _id?: string; /** * [Category IDs](https://dev.wix.com/api/rest/wix-blog/blog/categories) of the post. */ categoryIds?: Array; /** * Whether commenting on the post is enabled. */ commentingEnabled?: boolean; /** * Post owner's [contact ID](https://dev.wix.com/api/rest/contacts). */ contactId?: string; /** * Reserved for internal use. */ content?: string; /** * Reserved for internal use. */ contentId?: string; /** * The post's content in plain text. */ contentText?: string; /** * __Deprecated.__ Use `media` instead. * This property will be removed on June 30, 2023. * * Post cover media. */ coverMedia?: Events.blogV3PostCoverMedia; /** * Post excerpt. * Can be selected by a site contributor. By default, it is extracted from the content text's first characters. * * Max: 140 characters */ excerpt?: string; /** * Whether the post is marked as featured. */ featured?: boolean; /** * Date the post was first published. */ firstPublishedDate?: Date; /** * Hashtags in the post. */ hashtags?: Array; /** * Image placed at the top of the blog page. */ heroImage?: string; /** * Reserved for internal use. */ internalCategoryIds?: Array; /** * Reserved for internal use. */ internalId?: string; /** * Reserved for internal use. */ internalRelatedPostIds?: Array; /** * 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. */ language?: string; /** * Date the post was last published. */ lastPublishedDate?: Date; /** * Post cover media. */ media?: Events.blogV3PostBlogMedia; /** * Post owner's [member ID](https://dev.wix.com/api/rest/members). */ memberId?: string; /** * Estimated reading time (calculated automatically). */ minutesToRead?: number; /** * Post moderation details. Only relevant to posts submitted by [guest writers](https://support.wix.com/en/article/wix-blog-moderating-blog-posts-from-your-guest-writers). */ moderationDetails?: Events.blogV3PostModerationDetails; /** * Reserved for internal use. */ mostRecentContributorId?: string; /** * Whether the post is pinned. If `true`, the post is placed at the top of the post list. */ pinned?: boolean; /** * [Pricing plan IDs](https://dev.wix.com/api/rest/wix-pricing-plans). Only relevant if a post is assigned to a specific pricing plan. */ pricingPlanIds?: Array; /** * IDs of posts related to the post. */ relatedPostIds?: Array; /** * Post rich content */ richContent?: Events.blogV3PostRichContent; /** * SEO data. */ seoData?: Events.blogV3PostSeoSchema; /** * Post slug. Part of a posts's URL, for example, `'https:/example.com/posts/{my-post-slug}'`. */ slug?: string; /** * IDs of [tags](https://dev.wix.com/api/rest/wix-blog/blog/tags) the post is tagged with. */ tagIds?: Array; /** * Post title. */ title?: string; /** * ID of the translations of this post. All translations of a single post share the same `translationId`. */ translationId?: string; /** * Post URL. */ url?: string; }; type blogV3PostPostCountInfo = { /** * Total number of post comments */ comments?: number; /** * Total number of post likes */ likes?: number; /** * Total number of post views */ views?: number; }; type blogV3PostPostCountersUpdated = { /** * Visitor ID if person that liked the post is not logged in */ anonymousVisitorId?: string; /** * New counter value. */ counter?: number; /** * Member ID of person who triggered the counter update */ memberId?: string; /** * ID of the post whose counters were updated. */ postId?: string; /** * Field of the updated counter. */ updatedCounterField?: string; }; type blogV3PostPostCountersUpdatedInitiatorOneOf = { /** * Visitor ID if person that liked the post is not logged in */ anonymousVisitorId?: string; /** * Member ID of person who triggered the counter update */ memberId?: string; }; type blogV3PostPostCreated = { /** * Created post. */ entity: Events.blogV3PostPost; /** * Event metadata. */ metadata: Events.blogV3PostBackendEventMetadata; }; type blogV3PostPostDeleted = { /** * Event metadata. */ metadata: Events.blogV3PostBackendEventMetadata; }; type blogV3PostPostLiked = { /** * ID of the site visitor (not logged in) who liked the post. */ anonymousVisitorId?: string; /** * ID of the member (logged in) who liked the post. */ memberId?: string; /** * ID of the liked post. */ postId?: string; }; type blogV3PostPostLikedEvent = { /** * Information about the liked post. */ data: Events.blogV3PostPostLiked; /** * Event metadata. */ metadata: Events.blogV3PostBackendEventMetadata; }; type blogV3PostPostLikedInitiatorOneOf = { /** * Visitor ID of person who liked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who liked the post (only returned when the member was logged in when liking the post). */ memberId?: string; }; type blogV3PostPostMigrationMetaData = { /** * Post author in old blog */ author?: string; /** * Old blog instance id */ instanceId?: string; /** * Post id in old blog */ postId?: string; /** * Post slug in old blog */ slug?: string; }; type blogV3PostPostOwnerChanged = {}; type blogV3PostPostUnliked = { /** * Visitor ID of person who unliked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who unliked the post (returned when the member was logged in when unliking the post). */ memberId?: string; /** * ID of the unliked post. */ postId?: string; }; type blogV3PostPostUnlikedEvent = { /** * Information about the unliked post. */ data: Events.blogV3PostPostUnliked; /** * Event metadata. */ metadata: Events.blogV3PostBackendEventMetadata; }; type blogV3PostPostUnlikedInitiatorOneOf = { /** * Visitor ID of person who unliked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who unliked the post (returned when the member was logged in when unliking the post). */ memberId?: string; }; type blogV3PostPostUpdated = { /** * Updated post. */ entity: Events.blogV3PostPost; /** * Event metadata. */ metadata: Events.blogV3PostBackendEventMetadata; }; type blogV3PostQueryPostCountStatsRequest = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * Pass a language to only receive the period post count for that specified language. */ language?: string; /** * Number of months to include in response. */ months?: number; /** * Order of returned results. * * - `OLDEST`: posts by date in ascending order. * - `NEWEST`: posts by date in descending order. * * Default: `OLDEST` */ order?: string; /** * __Deprecated.__ Use `months` instead. * This property will be removed on June 30, 2023. * * Non-inclusive end of time range to return, in ISO 8601 date and time format. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Time zone to use when calculating the start of the month. * * [UTC timezone offset](https://en.wikipedia.org/wiki/List_of_UTC_offsets) format. For example, New York time zone is `-05`. */ timeZone?: string; }; type blogV3PostQueryPostCountStatsResponse = { /** * List of published post counts by month. */ stats?: Array; }; type blogV3PostQueryPostsRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of post fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional post fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the post’s base fields. Base fields don’t include any of the supported fieldset values. By default * only the post’s base fields are returned. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Events.blogV3PostBlogPaging; /** * Query options. */ query?: Events.blogV3PostPlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/wix-blog/blog/filter-and-sort). */ sort?: Array; }; type blogV3PostQueryPostsResponse = { /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Events.blogV3PostMetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Events.blogV3PostPagingMetadataV2; /** * List of posts. */ posts?: Array; }; type blogV3PostQueryPublicationsCountStatsRequest = { /** * Language filter * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of months to include in the response. */ months?: number; /** * Order of the returned results. */ order?: string; /** * Non-inclusive end of time range to return, in ISO 8601 date and time format. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Timezone of the client. */ timeZone?: string; }; type blogV3PostQueryPublicationsCountStatsResponse = { /** * Chronologically ordered list of publications. */ stats?: Array; }; type blogV3PostReactions = { /** * Is post liked by the current user */ liked?: boolean; }; type blogV3PostRel = { /** * Indicates to search engine crawlers not to follow the link. */ nofollow?: boolean; /** * Indicates that this link protect referral information from being passed to the target website. */ noreferrer?: boolean; /** * Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. */ sponsored?: boolean; /** * 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. */ ugc?: boolean; }; type blogV3PostRichContent = { /** * Global styling for header, paragraph, block quote, and code block nodes in the object. */ documentStyle?: Events.blogV3PostDocumentStyle; /** * Object metadata. */ metadata?: Events.blogV3PostMetadata; /** * Node objects representing a rich content document. */ nodes?: Array; }; type blogV3PostSendActionEventRequest = { entityId?: string; postCountersUpdated?: Events.blogV3PostPostCountersUpdated; postLikedAction?: Events.blogV3PostPostLiked; }; type blogV3PostSendActionEventRequestActionOneOf = { postCountersUpdated?: Events.blogV3PostPostCountersUpdated; postLikedAction?: Events.blogV3PostPostLiked; }; type blogV3PostSendActionEventResponse = {}; type blogV3PostSeoSchema = { /** * SEO general settings. */ settings?: Events.blogV3PostSettings; /** * SEO tags information. */ tags?: Array; }; type blogV3PostSettings = { /** * Whether the auto redirects feature creating `301 redirects` on a slug change is enabled. * * Default: enabled */ preventAutoRedirect?: boolean; }; type blogV3PostSorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type blogV3PostSpoiler = { /** * The text for the button used to remove the spoiler cover. */ buttonText?: string; /** * The description displayed on top of the spoiler cover. */ description?: string; /** * Sets whether the spoiler cover is enabled for this node. */ enabled?: boolean; }; type blogV3PostStyles = { /** * Border attributes. */ border?: Events.blogV3PostBorder; /** * Color attributes. */ colors?: Events.blogV3PostColors; }; type blogV3PostTableCellData = { /** * The cell's border colors. */ borderColors?: Events.blogV3PostBorderColors; /** * Styling for the cell's background color and text alignment. */ cellStyle?: Events.blogV3PostCellStyle; }; type blogV3PostTableData = { /** * Sets whether the table's first column is a header. */ columnHeader?: boolean; /** * Styling for the table's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * The table's dimensions. */ dimensions?: Events.blogV3PostDimensions; /** * Deprecated: Use `rowHeader` and `columnHeader` instead. */ header?: boolean; /** * Sets whether the table's first row is a header. */ rowHeader?: boolean; }; type blogV3PostTag = { /** * SEO tag inner content. For example, ` inner content `. */ children?: string; /** * Whether the tag is a custom tag. */ custom?: boolean; /** * Whether the tag is disabled. */ disabled?: boolean; /** * SEO tag meta data. For example, `{height: 300, width: 240}`. */ meta?: Object; /** * A `{'key':'value'} pair object where each SEO tag property (`'name'`, `'content'`, `'rel'`, `'href'`) contains a value. * For example: `{'name': 'description', 'content': 'the description itself'}`. */ props?: Object; /** * SEO tag type. * * Supported values: `title`, `meta`, `script`, `link`. */ type?: string; }; type blogV3PostTextData = { /** * The decorations to apply. */ decorations?: Array; /** * The text to apply decorations to. */ text?: string; }; type blogV3PostTextNodeStyle = { /** * The decorations to apply to the node. */ decorations?: Array; /** * Line height for text in the node. */ lineHeight?: string; /** * Padding and background color for the node. */ nodeStyle?: Events.blogV3PostNodeStyle; }; type blogV3PostTextStyle = { /** * A CSS `line-height` value for the text as a unitless ratio. */ lineHeight?: string; /** * Text alignment. Defaults to `AUTO`. */ textAlignment?: string; }; type blogV3PostThumbnails = { /** * Thumbnail alignment. */ placement?: string; /** * Spacing between thumbnails in pixels. */ spacing?: number; }; type blogV3PostVideoData = { /** * Styling for the video's container. */ containerData?: Events.blogV3PostPluginContainerData; /** * Sets whether the video's download button is disabled. */ disableDownload?: boolean; /** * Video options. */ options?: Events.blogV3PostPlaybackOptions; /** * Video thumbnail details. */ thumbnail?: Events.blogV3PostMedia; /** * Video title. */ title?: string; /** * Video details. */ video?: Events.blogV3PostMedia; }; type blogV3PostVideoResolution = { /** * Video format for example, mp4, hls. */ format?: string; /** * Video height. */ height?: number; /** * Video URL. */ url?: string; /** * Video width. */ width?: number; }; type blogV3PostWixMedia = { /** * Thumbnail or image details. */ image?: string; /** * Video details. Optional */ videoV2?: string; }; type blogV3TagApplicationError = { code?: string; data?: Object; description?: string; }; type blogV3TagBackendEventMetadata = { /** * ID of the entity associated with the event. */ entityId: string; /** * Event timestamp. */ eventTime: string; /** * Event ID. */ id: string; /** * Whether the event was triggered as a result of a privacy regulation application (for example, [GDPR](https://support.wix.com/en/article/gdpr-frequently-asked-questions)). For advanced users. */ triggeredByAnonymizeRequest: boolean; }; type blogV3TagBulkActionMetadata = { /** * Number of items that couldn't be processed. */ totalFailures?: number; /** * Number of items that were successfully processed. */ totalSuccesses?: number; /** * Number of failures without details because detailed failure threshold was exceeded. */ undetailedFailures?: number; }; type blogV3TagBulkCreateTagsRequest = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Whether to return the full created tag entities in the response. */ returnFullEntity?: boolean; /** * Tags to create. */ tags: Array; }; type blogV3TagBulkCreateTagsResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Events.blogV3TagBulkActionMetadata; /** * Tags created by bulk action. */ results?: Array; }; type blogV3TagBulkTagResult = { /** * Optional created tag. */ item?: Events.blogV3TagTag; /** * Bulk actions metadata for tag. */ itemMetadata?: Events.blogV3TagItemMetadata; }; type blogV3TagCreateTagRequest = { /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag label. The label for each tag in a blog must be unique. */ label: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Preferred tag slug. For example, `'tag-slug'`. */ slug?: string; }; type blogV3TagCreateTagResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagCursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type blogV3TagCursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type blogV3TagDeleteTagRequest = { /** * Tag ID. */ tagId: string; }; type blogV3TagDeleteTagResponse = {}; type blogV3TagGetOrCreateTagRequest = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Tag name. Unique per blog. */ label: string; /** * Tag language. */ language?: string; }; type blogV3TagGetOrCreateTagResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagGetTagByLabelRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag label. */ label: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * If omitted, tags in all languages are returned. */ language?: string; }; type blogV3TagGetTagByLabelResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagGetTagBySlugRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Slug of the tag to retrieve. */ slug: string; }; type blogV3TagGetTagBySlugResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagGetTagRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag ID. */ tagId: string; }; type blogV3TagGetTagResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagInitialTagsCopied = { /** * Number of tags copied. */ count?: number; }; type blogV3TagItemMetadata = { /** * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */ _id?: string; /** * Details about the error in case of failure. */ error?: Events.blogV3TagApplicationError; /** * Index of the item within the request array. Allows for correlation between request and response items. */ originalIndex?: number; /** * Whether the requested action was successful for this item. When `false`, the `error` field is populated. */ success?: boolean; }; type blogV3TagListTagsRequest = { /** * Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `sort`. */ cursorPaging?: Events.blogV3TagCursorPaging; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3TagPaging; /** * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ sort?: Array; }; type blogV3TagListTagsRequestPagingMethodOneOf = { /** * Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `sort`. */ cursorPaging?: Events.blogV3TagCursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3TagPaging; }; type blogV3TagListTagsResponse = { /** * Details on the paged set of results returned. */ metaData?: Events.blogV3TagMetaData; /** * List of tags. */ tags?: Array; }; type blogV3TagMetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Requested offset. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type blogV3TagPaging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type blogV3TagPagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Events.blogV3TagCursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type blogV3TagPlatformQuery = { /** * 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`. */ cursorPaging?: Events.blogV3TagCursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3TagPaging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type blogV3TagPlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Events.blogV3TagCursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Events.blogV3TagPaging; }; type blogV3TagQueryTagsRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. * For a detailed list of supported filters, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Events.blogV3TagPaging; /** * Query options. */ query?: Events.blogV3TagPlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ sort?: Array; }; type blogV3TagQueryTagsResponse = { /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Events.blogV3TagMetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Events.blogV3TagPagingMetadataV2; /** * List of tags. */ tags?: Array; }; type blogV3TagSorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type blogV3TagTag = { /** * Date the tag was created. */ _createdDate?: Date; /** * Tag ID. */ _id?: string; /** * Date the tag was last updated. */ _updatedDate?: Date; /** * Tag label. * * A blog can't have two tags with the same label. */ label?: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of posts with this tag, including unpublished draft posts. */ postCount?: number; /** * Reserved for internal use. */ publicationCount?: number; /** * Number of published posts with this tag. */ publishedPostCount?: number; /** * Part of a tag's URL. For example, `'https:/example.com/blog/tags/{my-tag-slug}'`. */ slug?: string; /** * ID of the tag translations. * * All translations of a single tag share the same `translationId`. */ translationId?: string; /** * Tag URL. */ url?: string; }; type blogV3TagTagCreated = { /** * Created tag. */ entity: Events.blogV3TagTag; /** * Event metadata. */ metadata: Events.blogV3TagBackendEventMetadata; }; type blogV3TagTagDeleted = { /** * Event metadata. */ metadata: Events.blogV3TagBackendEventMetadata; }; type blogV3TagTagUpdated = { entity: Events.blogV3TagTag; metadata: Events.blogV3TagBackendEventMetadata; }; type blogV3TagTagsFieldSet = { /** * Includes tag URL when TRUE. Defaults to FALSE. */ includeUrl?: boolean; }; type blogV3TagUpdateTagRequest = { /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Tag info. */ tag?: Events.blogV3TagTag; }; type blogV3TagUpdateTagResponse = { /** * Tag info. */ tag?: Events.blogV3TagTag; }; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.html#) */ namespace Posts { type AnchorData = { /** * The target node's ID. */ anchor?: string; }; type AppEmbedData = { /** * Data for embedded Wix Bookings content. */ bookingData?: Posts.BookingData; /** * Data for embedded Wix Events content. */ eventData?: Posts.EventData; /** * An image for the embedded content. */ image?: Posts.Media; /** * Deprecated: Use `image` instead. */ imageSrc?: string; /** * The ID of the embedded content. */ itemId?: string; /** * The name of the embedded content. */ name?: string; /** * The type of Wix App content being embedded. */ type?: string; /** * The URL for the embedded content. */ url?: string; }; type AppEmbedDataAppDataOneOf = { /** * Data for embedded Wix Bookings content. */ bookingData?: Posts.BookingData; /** * Data for embedded Wix Events content. */ eventData?: Posts.EventData; }; type AudioData = { /** * Audio file details. */ audio?: Posts.Media; /** * Author name. */ authorName?: string; /** * Styling for the audio node's container. */ containerData?: Posts.PluginContainerData; /** * Cover image. */ coverImage?: Posts.Media; /** * Sets whether the audio node's download button is disabled. */ disableDownload?: boolean; /** * An HTML version of the audio node. */ html?: string; /** * Track name. */ name?: string; }; type Background = { /** * The background color as a hexademical value. */ color?: string; /** * Details for a gradient background. */ gradient?: Posts.Gradient; /** * An image to use for the background. */ image?: Posts.Media; /** * Background type. For each option, include the relevant details. */ type?: string; }; type BackgroundBackgroundOneOf = { /** * The background color as a hexademical value. */ color?: string; /** * Details for a gradient background. */ gradient?: Posts.Gradient; /** * An image to use for the background. */ image?: Posts.Media; }; type BlockquoteData = { /** * Indentation level. */ indentation?: number; }; type BlogCursorPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type BlogMedia = { /** * Whether the media is custom. * * `false` if the media is the first image or video in the post. `true` if set to some other image or video.", */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Embed media details. */ embedMedia?: Posts.EmbedMedia; /** * Wix Media details. */ wixMedia?: Posts.WixMedia; }; type BlogMediaMediaOneOf = { /** * Embed media details. */ embedMedia?: Posts.EmbedMedia; /** * Wix Media details. */ wixMedia?: Posts.WixMedia; }; type BlogPaging = { /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items to return. * * Default:`50` */ limit?: number; /** * Number of items to skip in the current sort order. * * Default: `0` */ offset?: number; }; type BookingData = { /** * Booking duration in minutes. */ durations?: string; }; type Border = { /** * Border radius in pixels. */ radius?: number; /** * Border width in pixels. */ width?: number; }; type BorderColors = { /** * Bottom border color as a hexadecimal value. */ bottom?: string; /** * Left border color as a hexadecimal value. */ left?: string; /** * Right border color as a hexadecimal value. */ right?: string; /** * Top border color as a hexadecimal value. */ top?: string; }; type BulkGetPostMetricsRequest = { /** * Post IDs. */ postIds: Array; }; type BulkGetPostMetricsResponse = { /** * Map of post.id to metrics */ metrics?: Record; }; type BulkGetPostReactionsRequest = { /** * Post IDs. */ postIds: Array; }; type BulkGetPostReactionsResponse = { /** * Map of post.id to reactions */ reactionsMap?: Record; }; type BulletedListData = { /** * Indentation level. */ indentation?: number; }; type ButtonData = { /** * Styling for the button's container. */ containerData?: Posts.PluginContainerData; /** * Button link details. */ link?: Posts.Link; /** * Styling for the button. */ styles?: Posts.Styles; /** * The text to display on the button. */ text?: string; /** * The button type. */ type?: string; }; type Category = { /** * Category ID. */ _id?: string; /** * Category cover image. */ coverImage?: string; /** * __Deprecated.__ Use `coverImage` instead. * This property will be removed on June 30, 2023. * * Category cover image or video. */ coverMedia?: Posts.CoverMedia; /** * Category description. */ description?: string; /** * Category position in sequence. Categories with a lower display position are displayed first. Categories with a position of `-1` appear at the end of the sequence. * * Default: `-1` */ displayPosition?: number; /** * Reserved for internal use. */ internalId?: string; /** * Category label. Displayed in the Category Menu. */ label?: string; /** * Category language. * * Two-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Reserved for internal use. */ oldRank?: number; /** * Number of posts in the category. */ postCount?: number; /** * __Deprecated.__ Use `displayPosition` instead. * This property will be removed on June 30, 2023. * * Category position in sequence. */ rank?: number; /** * SEO data. */ seoData?: Posts.SeoSchema; /** * Category slug. For example, `'category-slug'`. */ slug?: string; /** * Category title. */ title?: string; /** * ID of the category's translations. All translations of a single category share the same `translationId`. */ translationId?: string; /** * Category URL. */ url?: string; }; type CellStyle = { /** * Cell background color as a hexadecimal value. */ backgroundColor?: string; /** * Vertical alignment for the cell's text. */ verticalAlignment?: string; }; type CodeBlockData = { /** * Styling for the code block's text. */ textStyle?: Posts.TextStyle; }; type CollapsibleListData = { /** * Styling for the collapsible list's container. */ containerData?: Posts.PluginContainerData; /** * The direction of the text in the list. Either left-to-right or right-to-left. */ direction?: string; /** * If `true`, only one item can be expanded at a time. */ expandOnlyOne?: boolean; /** * Sets which items are expanded when the page loads. */ initialExpandedItems?: string; /** * If `true`, The collapsible item will appear in search results as an FAQ. */ isQapageData?: boolean; }; type ColorData = { /** * The text's background color as a hexadecimal value. */ background?: string; /** * The text's foreground color as a hexadecimal value. */ foreground?: string; }; type Colors = { /** * The background color as a hexadecimal value. */ background?: string; /** * The border color as a hexadecimal value. */ border?: string; /** * The text color as a hexadecimal value. */ text?: string; }; type CoverMedia = { /** * Whether the cover media is custom. * * `false` if the cover media is the first image or video in the post. `true` if set to some other image or video. */ custom?: boolean; /** * Whether cover media is displayed. */ displayed?: boolean; /** * Is cover media enabled. * Selected by user whether to display cover media on the feed */ enabled?: boolean; /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type CoverMediaMediaOneOf = { /** * Image url. */ image?: string; /** * Video url. */ video?: string; }; type CreateDraftPostFromTemplateRequest = { /** * Post template id */ postTemplateId: string; }; type CreateDraftPostFromTemplateResponse = { /** * Created draft post */ draftPost?: Posts.DraftPost; }; type CursorMetaData = { /** * Cursor pointing to next result page. */ next?: string; }; type CursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type Cursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type Decoration = { /** * Data for an anchor link decoration. */ anchorData?: Posts.AnchorData; /** * Data for a color decoration. */ colorData?: Posts.ColorData; /** * Data for a font size decoration. */ fontSizeData?: Posts.FontSizeData; /** * Font weight for a bold decoration. */ fontWeightValue?: number; /** * Data for an italic decoration. */ italicData?: boolean; /** * Data for an external link decoration. */ linkData?: Posts.LinkData; /** * Data for a mention decoration. */ mentionData?: Posts.MentionData; /** * The type of decoration to apply. */ type?: string; /** * Data for an underline decoration. */ underlineData?: boolean; }; type DecorationDataOneOf = { /** * Data for an anchor link decoration. */ anchorData?: Posts.AnchorData; /** * Data for a color decoration. */ colorData?: Posts.ColorData; /** * Data for a font size decoration. */ fontSizeData?: Posts.FontSizeData; /** * Font weight for a bold decoration. */ fontWeightValue?: number; /** * Data for an italic decoration. */ italicData?: boolean; /** * Data for an external link decoration. */ linkData?: Posts.LinkData; /** * Data for a mention decoration. */ mentionData?: Posts.MentionData; /** * Data for an underline decoration. */ underlineData?: boolean; }; type Design = { /** * Styling for voting options. */ options?: Posts.OptionDesign; /** * Styling for the poll. */ poll?: Posts.PollDesign; }; type Dimensions = { /** * An array representing the minimum width of each column in pixels. */ colsMinWidth?: Array; /** * An array representing relative width of each column in relation to the other columns. */ colsWidthRatio?: Array; /** * An array representing the height of each row in pixels. */ rowsHeight?: Array; }; type DividerData = { /** * Divider alignment. */ alignment?: string; /** * Styling for the divider's container. */ containerData?: Posts.PluginContainerData; /** * Divider line style. */ lineStyle?: string; /** * Divider width. */ width?: string; }; type DocumentStyle = { /** * Styling for block quote nodes. */ blockquote?: Posts.TextNodeStyle; /** * Styling for code block nodes. */ codeBlock?: Posts.TextNodeStyle; /** * Styling for H5 nodes. */ headerFive?: Posts.TextNodeStyle; /** * Styling for H4 nodes. */ headerFour?: Posts.TextNodeStyle; /** * Styling for H1 nodes. */ headerOne?: Posts.TextNodeStyle; /** * Styling for H6 nodes. */ headerSix?: Posts.TextNodeStyle; /** * Styling for H3 nodes. */ headerThree?: Posts.TextNodeStyle; /** * Styling for H2 nodes. */ headerTwo?: Posts.TextNodeStyle; /** * Styling for paragraph nodes. */ paragraph?: Posts.TextNodeStyle; }; type DraftPost = { /** * Date the draft post was first created. */ _createdDate?: Date; /** * Draft post ID. */ _id?: string; /** * Category IDs of the draft post. */ categoryIds?: Array; /** * Reserved for internal use. */ changeOrigin?: string; /** * Whether commenting on the draft post is enabled. */ commentingEnabled?: boolean; /** * Reserved for internal use. */ content?: Object; /** * Reserved for internal use. */ contentId?: string; /** * Date the draft post was last edited. */ editedDate?: Date; /** * Reserved for internal use. */ editingSessionId?: string; /** * Draft post excerpt. * * If no excerpt has been manually set, an excerpt is automatically generated from the post's text. * This can be retrieved using the `GENERATED_EXCERPT` fieldset. */ excerpt?: string; /** * Whether the draft post is marked as featured. */ featured?: boolean; /** * Date the post was first published. */ firstPublishedDate?: Date; /** * Indicates if there are changes made to the draft post that have not yet been published. */ hasUnpublishedChanges?: boolean; /** * Hashtags in the post. */ hashtags?: Array; /** * Image placed at the top of the blog page. */ heroImage?: string; /** * Reserved for internal use. */ internalId?: string; /** * Language the draft 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. */ language?: string; /** * Post cover media. */ media?: Posts.BlogMedia; /** * Draft post owner's member ID. */ memberId?: string; /** * Estimated reading time of the draft post (calculated automatically). */ minutesToRead?: number; /** * Details of the draft post in review. Only relevant to posts submitted by guest writers. */ moderationDetails?: Posts.ModerationDetails; /** * Reserved for internal use. */ mostRecentContributorId?: string; /** * Reserved for internal use. */ paidContentParagraph?: number; /** * Number of paragraphs to display in a paid content preview for non-paying users. */ previewTextParagraph?: number; /** * [Pricing plan IDs](https://dev.wix.com/api/rest/wix-pricing-plans). Only relevant if a post is assigned to a specific pricing plan. */ pricingPlanIds?: Array; /** * IDs of posts related to this draft post. */ relatedPostIds?: Array; /** * Draft Post rich content. */ richContent?: Posts.RichContent; /** * Date the draft post is scheduled to be published. */ scheduledPublishDate?: Date; /** * SEO data. */ seoData?: Posts.SeoSchema; /** * SEO slug. */ seoSlug?: string; /** * Reserved for internal use. */ slugs?: Array; /** * Status of the draft post. */ status?: string; /** * Tag IDs the draft post is tagged with. */ tagIds?: Array; /** * Draft post title. */ title?: string; /** * ID of the draft post's translations. * * All translations of a single post share the same `translationId`. */ translationId?: string; /** * Draft post URL preview. What the URL will look like once the post is published. */ url?: string; }; type DraftPostTranslation = { /** * Post ID. */ _id?: string; /** * Language the post is written in. */ language?: string; /** * SEO data. */ seoData?: Posts.SeoSchema; /** * Post slug. For example, 'post-slug'. */ slug?: string; /** * Post status. */ status?: string; /** * Post URL. */ url?: string; }; type EmbedData = { /** * Styling for the oEmbed node's container. */ containerData?: Posts.PluginContainerData; /** * An [oEmbed](https://www.oembed.com) object. */ oembed?: Posts.Oembed; /** * Origin asset source. */ src?: string; }; type EmbedMedia = { /** * Thumbnail details. */ thumbnail?: Posts.EmbedThumbnail; /** * Video details. */ video?: Posts.EmbedVideo; }; type EmbedThumbnail = { /** * Thumbnail height. */ height?: number; /** * Thumbnail url. */ url?: string; /** * Thumbnail width. */ width?: number; }; type EmbedVideo = { /** * Video height. */ height?: number; /** * Video url. */ url?: string; /** * Video width. */ width?: number; }; type EventData = { /** * Event location. */ location?: string; /** * Event schedule. */ scheduling?: string; }; type FileData = { /** * Styling for the file's container. */ containerData?: Posts.PluginContainerData; /** * File MIME type. */ mimeType?: string; /** * File name. */ name?: string; /** * File path. */ path?: string; /** * Settings for PDF files. */ pdfSettings?: Posts.PDFSettings; /** * File size in KB. */ size?: number; /** * The source for the file's data. */ src?: Posts.FileSource; /** * File type. */ type?: string; }; type FileSource = { /** * An ID that's resolved to a URL by a resolver function. */ _id?: string; /** * Custom ID. Use `id` instead. */ custom?: string; /** * Indicates whether the file's source is private. */ private?: boolean; /** * The absolute URL for the file's source. */ url?: string; }; type FileSourceDataOneOf = { /** * An ID that's resolved to a URL by a resolver function. */ _id?: string; /** * Custom ID. Use `id` instead. */ custom?: string; /** * The absolute URL for the file's source. */ url?: string; }; type FontSizeData = { /** * The units used for the font size. */ unit?: string; /** * Font size value. */ value?: number; }; type GIF = { /** * GIF format URL. */ gif?: string; /** * MP4 format URL. */ mp4?: string; /** * Thumbnail URL. */ still?: string; }; type GIFData = { /** * Styling for the GIF's container. */ containerData?: Posts.PluginContainerData; /** * The source of the downsized GIF. */ downsized?: Posts.GIF; /** * Height in pixels. */ height?: number; /** * The source of the full size GIF. */ original?: Posts.GIF; /** * Width in pixels. */ width?: number; }; type GalleryData = { /** * Styling for the gallery's container. */ containerData?: Posts.PluginContainerData; /** * Sets whether the gallery's download button is disabled. */ disableDownload?: boolean; /** * Sets whether the gallery's expand button is disabled. */ disableExpand?: boolean; /** * The items in the gallery. */ items?: Array; /** * Options for defining the gallery's appearance. */ options?: Posts.GalleryOptions; }; type GalleryOptions = { /** * Styling for gallery items. */ item?: Posts.ItemStyle; /** * Gallery layout. */ layout?: Posts.Layout; /** * Styling for gallery thumbnail images. */ thumbnails?: Posts.Thumbnails; }; type GetPostBySlugOptions = { /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; }; type GetPostBySlugRequest = { /** * Reserved for internal use. */ fieldsToInclude?: Array; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * Slug of the post to retrieve. */ slug: string; }; type GetPostBySlugResponse = { /** * Post info. */ post?: Posts.Post; }; type GetPostMetricsRequest = { /** * Post ID. */ postId: string; }; type GetPostMetricsResponse = { /** * Post metrics. */ metrics?: Posts.Metrics; }; type GetPostOptions = { /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; }; type GetPostRequest = { /** * Reserved for internal use. */ fieldsToInclude?: Array; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * Post ID. */ postId: string; }; type GetPostResponse = { /** * Post info. */ post?: Posts.Post; }; type GetTemplateRequest = { /** * Post template id */ postTemplateId: string; }; type GetTemplateResponse = { /** * Post template */ postTemplate?: Posts.Post; }; type GetTotalLikesPerMemberRequest = { /** * Member ID. */ memberId: string; }; type GetTotalLikesPerMemberResponse = { /** * The total number of likes of the member. */ total?: number; }; type GetTotalPostsOptions = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; }; type GetTotalPostsRequest = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; }; type GetTotalPostsResponse = { /** * Total amount of published posts. */ total?: number; }; type GetTotalPublicationsOptions = { /** * Language filter */ language?: string; }; type GetTotalPublicationsRequest = { /** * Language filter */ language?: string; }; type GetTotalPublicationsResponse = { /** * Total amount of publications. */ total?: number; }; type Gradient = { /** * The gradient angle in degrees. */ angle?: number; /** * The end color as a hexademical value. */ lastColor?: string; /** * The start color as a hexademical value. */ startColor?: string; }; type HTMLData = { /** * Styling for the HTML node's container. */ containerData?: Posts.PluginContainerData; /** * The HTML code for the node. */ html?: string; /** * Whether this is an AdSense element. Use `source` instead. */ isAdsense?: boolean; /** * The type of HTML code. */ source?: string; /** * The URL for the HTML code for the node. */ url?: string; }; type HTMLDataDataOneOf = { /** * The HTML code for the node. */ html?: string; /** * Whether this is an AdSense element. Use `source` instead. */ isAdsense?: boolean; /** * The URL for the HTML code for the node. */ url?: string; }; type HeadingData = { /** * Indentation level from 1-6. */ indentation?: number; /** * Heading level from 1-6. */ level?: number; /** * Styling for the heading text. */ textStyle?: Posts.TextStyle; }; type Height = { /** * A custom height value in pixels. */ custom?: string; }; type Image = { /** * Link details for images that are links. */ link?: Posts.Link; /** * Image file details. */ media?: Posts.Media; }; type ImageData = { /** * Image's alternative text. */ altText?: string; /** * Image caption. */ caption?: string; /** * Styling for the image's container. */ containerData?: Posts.PluginContainerData; /** * Sets whether the image's download button is disabled. */ disableDownload?: boolean; /** * Sets whether the image expands to full screen when clicked. */ disableExpand?: boolean; /** * Image file details. */ image?: Posts.Media; /** * Link details for images that are links. */ link?: Posts.Link; }; type InitialPostsCopied = { /** * Number of posts copied. */ count?: number; }; type Item = { /** * Item's alternative text. */ altText?: string; /** * An image item. */ image?: Posts.Image; /** * Item title. */ title?: string; /** * A video item. */ video?: Posts.Video; }; type ItemDataOneOf = { /** * An image item. */ image?: Posts.Image; /** * A video item. */ video?: Posts.Video; }; type ItemStyle = { /** * Sets how item images are cropped. */ crop?: string; /** * Item ratio */ ratio?: number; /** * The spacing between items in pixels. */ spacing?: number; /** * Desirable dimension for each item in pixels (behvaior changes according to gallery type) */ targetSize?: number; }; type Layout = { /** * Sets whether horizontal scroll is enabled. */ horizontalScroll?: boolean; /** * The number of columns to display on mobile screens. */ mobileNumberOfColumns?: number; /** * The number of columns to display on full size screens. */ numberOfColumns?: number; /** * Gallery orientation. */ orientation?: string; /** * Gallery layout type. */ type?: string; }; type Link = { /** * The target node's ID. Used for linking to another node in this object. */ anchor?: string; /** * A serialized object used for a custom or external link panel. */ customData?: string; /** * The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */ rel?: Posts.Rel; /** * he HTML `target` attribute value for the link. This property defines where the linked document opens as follows: * `SELF` - Default. Opens the linked document in the same frame as the link. * `BLANK` - Opens the linked document in a new browser tab or window. * `PARENT` - Opens the linked document in the link's parent frame. * `TOP` - Opens the linked document in the full body of the link's browser tab or window. */ target?: string; /** * The absolute URL for the linked document. */ url?: string; }; type LinkData = { /** * Link details. */ link?: Posts.Link; }; type LinkDataOneOf = { /** * The target node's ID. Used for linking to another node in this object. */ anchor?: string; /** * The absolute URL for the linked document. */ url?: string; }; type LinkPreviewData = { /** * Styling for the link preview's container. */ containerData?: Posts.PluginContainerData; /** * Preview description. */ description?: string; /** * The preview content as HTML. */ html?: string; /** * Link details. */ link?: Posts.Link; /** * Preview thumbnail URL. */ thumbnailUrl?: string; /** * Preview title. */ title?: string; }; type ListDemoPostsOptions = { /** * Category filter. * * Pass an array of category IDs to return only posts with any of the provided categories. * If omitted, all posts with or without associated categories are returned. */ categoryIds?: Array; /** * Whether to return only featured posts. * * Default: `false` */ featured?: boolean; /** * Reserved for internal use. */ fieldsToInclude?: Array; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * Hashtag filter. * * Pass an array of hashtags to return only posts containing any of the provided hashtags. * If omitted, all posts with or without hashtags are returned. */ hashtags?: Array; /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Post owner's member ID. */ memberId?: string; /** * Pagination options. */ paging?: Posts.BlogPaging; /** * Sort order by descending view count, ascending or descending publish date, or default to descending by publish date with pinned posts first. */ sort?: string; /** * Tag filter. * * Pass an array of tag IDs to return only posts with any of the provided tags. * If omitted, all posts with or without tags are returned. */ tagIds?: Array; }; type ListMigratedPostsOptions = { /** * Cursor pointing to page of results */ paging?: Posts.BlogCursorPaging; }; type ListMigratedPostsRequest = { /** * New blog version instance id */ instanceId: string; /** * Cursor pointing to page of results */ paging?: Posts.BlogCursorPaging; }; type ListMigratedPostsResponse = { /** * Pagination */ pagingMetaData?: Posts.CursorMetaData; /** * List of posts */ posts?: Array; /** * Data of post in old blog by post id */ postsMigrationMeta?: Record; }; type ListPostsOptions = { /** * List of category IDs to filter for. * * Default: All categories */ categoryIds?: Array; /** * Featured filter. Whether to return only featured posts. */ featured?: boolean; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * List of hashtags to filter for. * * Default: All hashtags */ hashtags?: Array; /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Member ID to filter for. * * Default: All members */ memberId?: string; /** * Pagination options. */ paging?: Posts.BlogPaging; /** * Sort order. * * Sort by one of the following: * - `'VIEW_COUNT'` descending view count * - `'LIKE_COUNT'` descending like count * - `'PUBLISHED_DATE_ASC'` ascending published date * - `'PUBLISHED_DATE_DESC'` descending published date * - `'TITLE_ASC'` ascending title * - `'TITLE_DESC'` descending title * * Default: `'PUBLISHED_DATE_DESC'` */ sort?: string; /** * List of tag IDs to filter for. * * Default: All tags */ tagIds?: Array; }; type ListPostsRequest = { /** * Category filter. * * Pass an array of category IDs to return only posts with any of the provided categories. * If omitted, all posts with or without associated categories are returned. */ categoryIds?: Array; /** * Whether to return only featured posts. * * Default: `false` */ featured?: boolean; /** * Reserved for internal use. */ fieldsToInclude?: Array; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * Hashtag filter. * * Pass an array of hashtags to return only posts containing any of the provided hashtags. * If omitted, all posts with or without hashtags are returned. */ hashtags?: Array; /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Post owner's member ID. */ memberId?: string; /** * Pagination options. */ paging?: Posts.BlogPaging; /** * Sort order by descending view count, ascending or descending publish date, or default to descending by publish date with pinned posts first. */ sort?: string; /** * Tag filter. * * Pass an array of tag IDs to return only posts with any of the provided tags. * If omitted, all posts with or without tags are returned. */ tagIds?: Array; }; type ListPostsResponse = { /** * Details on the paged set of results returned. */ metaData?: Posts.MetaData; /** * List of posts. */ posts?: Array; }; type ListTemplatesOptions = { /** * Filter post templates by given template category ids */ categoryIds?: Array; /** * Filter post templates by provided language */ language?: string; /** * Returns post template categories when set to TRUE */ listTemplateCategories?: boolean; /** * Pagination options. */ paging?: Posts.BlogPaging; /** * Sort order by ascending/descending publish date. Default is ascending publish date sort */ sort?: string; }; type ListTemplatesRequest = { /** * Filter post templates by given template category ids */ categoryIds?: Array; /** * Filter post templates by provided language */ language?: string; /** * Returns post template categories when set to TRUE */ listTemplateCategories?: boolean; /** * Pagination options. */ paging?: Posts.BlogPaging; /** * Sort order by ascending/descending publish date. Default is ascending publish date sort */ sort?: string; }; type ListTemplatesResponse = { /** * Available post templates */ postTemplates?: Array; /** * Details on the paged set of posts templates returned. */ postTemplatesMetaData?: Posts.MetaData; /** * Post template categories. This value is returned empty unless asked explicitly */ templateCategories?: Array; }; type ListValue = { /** * Repeated field of dynamically typed values. */ values?: Array; }; type MapData = { /** * Styling for the map's container. */ containerData?: Posts.PluginContainerData; /** * Map settings. */ mapSettings?: Posts.MapSettings; }; type MapSettings = { /** * The address to display on the map. */ address?: string; /** * Sets whether the map is draggable. */ draggable?: boolean; /** * Initial zoom value. */ initialZoom?: number; /** * Location latitude. */ lat?: number; /** * Location longitude. */ lng?: number; /** * Location name. */ locationName?: string; /** * Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */ mapType?: string; /** * Sets whether the location marker is visible. */ marker?: boolean; /** * Sets whether street view control is enabled. */ streetViewControl?: boolean; /** * Sets whether view mode control is enabled. */ viewModeControl?: boolean; /** * Sets whether zoom control is enabled. */ zoomControl?: boolean; }; type Media = { /** * Media duration in seconds. Only relevant for audio and video files. */ duration?: number; /** * Media height in pixels. */ height?: number; /** * The source for the media's data. */ src?: Posts.FileSource; /** * Media width in pixels. */ width?: number; }; type MentionData = { /** * Mentioned user's ID. */ _id?: string; /** * The mentioned user's name. */ name?: string; /** * The version of the user's name that appears after the `@` character in the mention. */ slug?: string; }; type MetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Number of items skipped in the current sort order. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type Metadata = { /** * Object ID. */ _id?: string; /** * When the object was created. */ createdTimestamp?: Date; /** * When the object was most recently updated. */ updatedTimestamp?: Date; /** * Schema version. */ version?: number; }; type Metrics = { /** * Total number of post comments. */ comments?: number; /** * Total number of post likes. */ likes?: number; /** * Total number of post views. */ views?: number; }; type ModerationDetails = { /** * Member ID of the person who approved or rejected the post. */ moderatedBy?: string; /** * Date and time the post was approved or rejected by a moderator. */ moderationDate?: Date; /** * Status indicating whether the submission was approved or rejected by the moderator. * * Supported values: `'APPROVED'`, `'REJECTED'`, `'PENDING'`. */ status?: string; /** * Member ID of the person who submitted the post. */ submittedBy?: string; /** * Date and time the post was submitted for moderation. */ submittedDate?: Date; }; type Node = { /** * Node ID. */ _id?: string; /** * Data for an app embed node. */ appEmbedData?: Posts.AppEmbedData; /** * Data for an audio node. */ audioData?: Posts.AudioData; /** * Data for a block quote node. */ blockquoteData?: Posts.BlockquoteData; /** * Data for a bulleted list node. */ bulletedListData?: Posts.BulletedListData; /** * Data for a button node. */ buttonData?: Posts.ButtonData; /** * Data for a code block node. */ codeBlockData?: Posts.CodeBlockData; /** * Data for a collapsible list node. */ collapsibleListData?: Posts.CollapsibleListData; /** * Data for a divider node. */ dividerData?: Posts.DividerData; /** * Data for an oEmbed node. */ embedData?: Posts.EmbedData; /** * Data for a custon external node. */ externalData?: Object; /** * Data for a file node. */ fileData?: Posts.FileData; /** * Data for a gallery node. */ galleryData?: Posts.GalleryData; /** * Data for a GIF node. */ gifData?: Posts.GIFData; /** * Data for a heading node. */ headingData?: Posts.HeadingData; /** * Data for an embedded HTML node. */ htmlData?: Posts.HTMLData; /** * Data for an image node. */ imageData?: Posts.ImageData; /** * Data for a link preview node. */ linkPreviewData?: Posts.LinkPreviewData; /** * Data for a map node. */ mapData?: Posts.MapData; /** * A list of child nodes. */ nodes?: Array; /** * Data for an ordered list node. */ orderedListData?: Posts.OrderedListData; /** * Data for a paragraph node. */ paragraphData?: Posts.ParagraphData; /** * Data for a poll node. */ pollData?: Posts.PollData; /** * Padding and background color styling for the node. */ style?: Posts.NodeStyle; /** * Data for a table cell node. */ tableCellData?: Posts.TableCellData; /** * Data for a table node. */ tableData?: Posts.TableData; /** * Data for a text node. Used to apply decorations to text. */ textData?: Posts.TextData; /** * 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. */ type?: string; /** * Data for a video node. */ videoData?: Posts.VideoData; }; type NodeDataOneOf = { /** * Data for an app embed node. */ appEmbedData?: Posts.AppEmbedData; /** * Data for an audio node. */ audioData?: Posts.AudioData; /** * Data for a block quote node. */ blockquoteData?: Posts.BlockquoteData; /** * Data for a bulleted list node. */ bulletedListData?: Posts.BulletedListData; /** * Data for a button node. */ buttonData?: Posts.ButtonData; /** * Data for a code block node. */ codeBlockData?: Posts.CodeBlockData; /** * Data for a collapsible list node. */ collapsibleListData?: Posts.CollapsibleListData; /** * Data for a divider node. */ dividerData?: Posts.DividerData; /** * Data for an oEmbed node. */ embedData?: Posts.EmbedData; /** * Data for a custon external node. */ externalData?: Object; /** * Data for a file node. */ fileData?: Posts.FileData; /** * Data for a gallery node. */ galleryData?: Posts.GalleryData; /** * Data for a GIF node. */ gifData?: Posts.GIFData; /** * Data for a heading node. */ headingData?: Posts.HeadingData; /** * Data for an embedded HTML node. */ htmlData?: Posts.HTMLData; /** * Data for an image node. */ imageData?: Posts.ImageData; /** * Data for a link preview node. */ linkPreviewData?: Posts.LinkPreviewData; /** * Data for a map node. */ mapData?: Posts.MapData; /** * Data for an ordered list node. */ orderedListData?: Posts.OrderedListData; /** * Data for a paragraph node. */ paragraphData?: Posts.ParagraphData; /** * Data for a poll node. */ pollData?: Posts.PollData; /** * Data for a table cell node. */ tableCellData?: Posts.TableCellData; /** * Data for a table node. */ tableData?: Posts.TableData; /** * Data for a text node. Used to apply decorations to text. */ textData?: Posts.TextData; /** * Data for a video node. */ videoData?: Posts.VideoData; }; type NodeStyle = { /** * The background color as a hexadecimal value. */ backgroundColor?: string; /** * The bottom padding value in pixels. */ paddingBottom?: string; /** * The top padding value in pixels. */ paddingTop?: string; }; type Oembed = { /** * The name of the author or owner of the resource. */ authorName?: string; /** * The URL for the author or owner of the resource. */ authorUrl?: string; /** * The height of the resource specified in the `url` property in pixels. */ height?: number; /** * HTML for embedding a video player. The HTML should have no padding or margins. */ html?: string; /** * The name of the resource provider. */ providerName?: string; /** * The URL for the resource provider. */ providerUrl?: string; /** * The height of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailWidth`must also be defined. */ thumbnailHeight?: string; /** * The URL for a thumbnail image for the resource. If this property is defined, `thumbnailWidth` and `thumbnailHeight` must also be defined. */ thumbnailUrl?: string; /** * The width of the resource's thumbnail image. If this property is defined, `thumbnailUrl` and `thumbnailHeight` must also be defined. */ thumbnailWidth?: string; /** * Resource title. */ title?: string; /** * The resource type. */ type?: string; /** * The source URL for the resource. */ url?: string; /** * The oEmbed version number. This value must be `1.0`. */ version?: string; /** * The URL for an embedded viedo. */ videoUrl?: string; /** * The width of the resource specified in the `url` property in pixels. */ width?: number; }; type OldBlogMigratedEvent = { /** * Instance id of new version of blog */ newBlogInstanceId?: string; /** * Instance id of old version of blog */ oldBlogInstanceId?: string; }; type Option = { /** * Option ID. */ _id?: string; /** * The image displayed with the option. */ image?: Posts.Media; /** * Option title. */ title?: string; }; type OptionDesign = { /** * Border radius in pixels. */ borderRadius?: number; }; type OptionLayout = { /** * Sets whether to display option images. */ enableImage?: boolean; }; type OrderedListData = { /** * Indentation level. */ indentation?: number; }; type PDFSettings = { /** * Sets whether the PDF download button is disabled. */ disableDownload?: boolean; /** * Sets whether the PDF print button is disabled. */ disablePrint?: boolean; /** * PDF view mode. One of the following: * `NONE` : The PDF isn't displayed. * `FULL` : A full page view of the PDF is displayed. * `MINI` : A mini view of the PDF is displayed. */ viewMode?: string; }; type Paging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type PagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Posts.Cursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type ParagraphData = { /** * Indentation level from 1-6. */ indentation?: number; /** * Styling for the paragraph text. */ textStyle?: Posts.TextStyle; }; type PeriodPostCount = { /** * Start of time range in ISO 8601 date and time format. */ periodStart?: Date; /** * Number of posts published during this month. */ postCount?: number; }; type PeriodPublicationsCount = { /** * Start of time range in ISO 8601 date and time format. */ periodStart?: Date; /** * Number of posts published during this month. */ publicationsCount?: number; }; type Permissions = { /** * Sets whether one voter can vote multiple times. */ allowMultipleVotes?: boolean; /** * Sets who can view the poll results. */ view?: string; /** * Sets who can vote. */ vote?: string; }; type PlatformQuery = { /** * 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`. */ cursorPaging?: Posts.CursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Posts.Paging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type PlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Posts.CursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Posts.Paging; }; type PlaybackOptions = { /** * Sets whether the media will automatically start playing. */ autoPlay?: boolean; /** * Sets whether media's will be looped. */ playInLoop?: boolean; /** * Sets whether media's controls will be shown. */ showControls?: boolean; }; type PluginContainerData = { /** * The node's alignment within its container. */ alignment?: string; /** * The height of the node when it's displayed. */ height?: Posts.Height; /** * Spoiler cover settings for the node. */ spoiler?: Posts.Spoiler; /** * 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. */ textWrap?: boolean; /** * The width of the node when it's displayed. */ width?: Posts.PluginContainerDataWidth; }; type PluginContainerDataWidth = { /** * A custom width value in pixels. */ custom?: string; /** * One of the following predefined width options: * `CONTENT`: The width of the container matches the content width. * `SMALL`: Small width. * `ORIGINAL`: The width of the container matches the original asset width. * `FULL_WIDTH`: Full width. */ size?: string; }; type PluginContainerDataWidthDataOneOf = { /** * A custom width value in pixels. */ custom?: string; /** * One of the following predefined width options: * `CONTENT`: The width of the container matches the content width. * `SMALL`: Small width. * `ORIGINAL`: The width of the container matches the original asset width. * `FULL_WIDTH`: Full width. */ size?: string; }; type Poll = { /** * Poll ID. */ _id?: string; /** * Poll creator ID. */ creatorId?: string; /** * Main poll image. */ image?: Posts.Media; /** * Voting options. */ options?: Array; /** * The poll's permissions and display settings. */ settings?: Posts.PollSettings; /** * Poll title. */ title?: string; }; type PollData = { /** * Styling for the poll's container. */ containerData?: Posts.PluginContainerData; /** * Styling for the poll and voting options. */ design?: Posts.Design; /** * Layout settings for the poll and voting options. */ layout?: Posts.PollDataLayout; /** * Poll data. */ poll?: Posts.Poll; }; type PollDataLayout = { /** * Voting otpions layout settings. */ options?: Posts.OptionLayout; /** * Poll layout settings. */ poll?: Posts.PollLayout; }; type PollDesign = { /** * Background styling. */ background?: Posts.Background; /** * Border radius in pixels. */ borderRadius?: number; }; type PollLayout = { /** * The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */ direction?: string; /** * Sets whether to display the main poll image. */ enableImage?: boolean; /** * The layout for displaying the voting options. */ type?: string; }; type PollSettings = { /** * Permissions settings for voting. */ permissions?: Posts.Permissions; /** * Sets whether voters are displayed in the vote results. */ showVoters?: boolean; /** * Sets whether the vote count is displayed. */ showVotesCount?: boolean; }; type Post = { /** * Post ID. */ _id?: string; /** * [Category IDs](https://www.wix.com/velo/reference/wix-blog-backend/category) of the post. */ categoryIds?: Array; /** * Whether commenting on the post is enabled. */ commentingEnabled?: boolean; /** * Post owner's [contact ID](https://www.wix.com/velo/reference/wix-crm-backend/contacts). */ contactId?: string; /** * Reserved for internal use. */ content?: string; /** * Reserved for internal use. */ contentId?: string; /** * The post's content in plain text. */ contentText?: string; /** * Reserved for internal use. */ coverMedia?: Posts.CoverMedia; /** * Post excerpt. * Can be selected by a site contributor. By default, it is extracted from the content text's first characters. * * Max: 140 characters */ excerpt?: string; /** * Whether the post is marked as featured. */ featured?: boolean; /** * Date the post was first published. */ firstPublishedDate?: Date; /** * Hashtags in the post. */ hashtags?: Array; /** * Image placed at the top of the blog page. Only displays on mobile devices. */ heroImage?: string; /** * Reserved for internal use. */ internalCategoryIds?: Array; /** * Reserved for internal use. */ internalId?: string; /** * Reserved for internal use. */ internalRelatedPostIds?: Array; /** * 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. */ language?: string; /** * Date the post was last published. */ lastPublishedDate?: Date; /** * Post cover media. */ media?: Posts.BlogMedia; /** * Post owner's [member ID](https://www.wix.com/velo/reference/wix-members-backend). */ memberId?: string; /** * Estimated reading time. */ minutesToRead?: number; /** * Post moderation details. * * 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. */ moderationDetails?: Posts.ModerationDetails; /** * Reserved for internal use. */ mostRecentContributorId?: string; /** * Whether the post is pinned. If `true`, the post is placed at the top of the post list. */ pinned?: boolean; /** * Pricing plan IDs. * * If a post is assigned to a specific pricing plan. */ pricingPlanIds?: Array; /** * IDs of posts related to the post. */ relatedPostIds?: Array; /** * Post rich content */ richContent?: Posts.RichContent; /** * SEO data. */ seoData?: Posts.SeoSchema; /** * Part of a post's URL that refers to a specific post. * * For example, `'https:/example.com/posts/my-post-slug'`. */ slug?: string; /** * IDs of [tags](https://www.wix.com/velo/reference/wix-blog-backend/tags) the post is tagged with. */ tagIds?: Array; /** * Post title. */ title?: string; /** * 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`. */ translationId?: string; /** * Post URL. */ url?: string; }; type PostCountInfo = { /** * Total number of post comments */ comments?: number; /** * Total number of post likes */ likes?: number; /** * Total number of post views */ views?: number; }; type PostCountersUpdated = { /** * Visitor ID if person that liked the post is not logged in */ anonymousVisitorId?: string; /** * New counter value. */ counter?: number; /** * Member ID of person who triggered the counter update */ memberId?: string; /** * ID of the post which counters were updated. */ postId?: string; /** * Field of the updated counter. */ updatedCounterField?: string; }; type PostCountersUpdatedInitiatorOneOf = { /** * Visitor ID if person that liked the post is not logged in */ anonymousVisitorId?: string; /** * Member ID of person who triggered the counter update */ memberId?: string; }; type PostLiked = { /** * Visitor ID of person who liked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who liked the post (only returned when the member was logged in when liking the post). */ memberId?: string; /** * ID of the liked post. */ postId?: string; }; type PostLikedInitiatorOneOf = { /** * Visitor ID of person who liked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who liked the post (only returned when the member was logged in when liking the post). */ memberId?: string; }; type PostMigrationMetaData = { /** * Post author in old blog */ author?: string; /** * Old blog instance id */ instanceId?: string; /** * Post id in old blog */ postId?: string; /** * Post slug in old blog */ slug?: string; }; type PostOwnerChanged = {}; type PostUnliked = { /** * Visitor ID of person who unliked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who unliked the post (returned when the member was logged in when unliking the post). */ memberId?: string; /** * ID of the unliked post. */ postId?: string; }; type PostUnlikedInitiatorOneOf = { /** * Visitor ID of person who unliked the post when they are not logged in. */ anonymousVisitorId?: string; /** * Member ID of person who unliked the post (returned when the member was logged in when unliking the post). */ memberId?: string; }; type QueryPostCountStatsOptions = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of months to include in response. */ months?: number; /** * Sort order. * Use `'ASC'` for ascending order or `'DESC'` for descending order. * * Default: `ASC` */ order?: string; /** * Reserved for internal use. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Time zone to use when calculating the start of the month. * * [UTC timezone offset](https://en.wikipedia.org/wiki/List_of_UTC_offsets) format. For example, New York time zone is `-05`. */ timeZone?: string; }; type QueryPostCountStatsRequest = { /** * Language filter. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of months to include in response. */ months?: number; /** * Order of returned results. * * - `OLDEST`: posts by date in ascending order. * - `NEWEST`: posts by date in descending order. * * Default: `OLDEST` */ order?: string; /** * __Deprecated.__ Use `months` instead. * This property will be removed on June 30, 2023. * * Non-inclusive end of time range to return, in ISO 8601 date and time format. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Time zone to use when calculating the start of the month. * * [UTC timezone offset](https://en.wikipedia.org/wiki/List_of_UTC_offsets) format. For example, New York time zone is `-05`. */ timeZone?: string; }; type QueryPostCountStatsResponse = { /** * List of posts in specified order. */ stats?: Array; }; type QueryPostsOptions = {}; type QueryPostsRequest = { /** * Reserved for internal use. */ fieldsToInclude?: Array; /** * List of post fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"CONTACT_ID"`, `"CONTENT_TEXT"`, `"METRICS"`, `"SEO"`, and `"URL"`. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Posts.BlogPaging; /** * Query options. */ query?: Posts.PlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/wix-blog/blog/filter-and-sort). */ sort?: Array; }; type QueryPostsResponse = { /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Posts.MetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Posts.PagingMetadataV2; /** * List of posts. */ posts?: Array; }; type QueryPublicationsCountStatsOptions = { /** * Language filter * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of months to include in the response. */ months?: number; /** * Order of the returned results. */ order?: string; /** * Non-inclusive end of time range to return, in ISO 8601 date and time format. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Timezone of the client. */ timeZone?: string; }; type QueryPublicationsCountStatsRequest = { /** * Language filter * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of months to include in the response. */ months?: number; /** * Order of the returned results. */ order?: string; /** * Non-inclusive end of time range to return, in ISO 8601 date and time format. */ rangeEnd?: Date; /** * Start of time range to return, in ISO 8601 date and time format. */ rangeStart?: Date; /** * Timezone of the client. */ timeZone?: string; }; type QueryPublicationsCountStatsResponse = { /** * Chronologically ordered list of publications. */ stats?: Array; }; type Reactions = { /** * Is post liked by the current user */ liked?: boolean; }; type Rel = { /** * Indicates to search engine crawlers not to follow the link. */ nofollow?: boolean; /** * Indicates that this link protect referral information from being passed to the target website. */ noreferrer?: boolean; /** * Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. */ sponsored?: boolean; /** * 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. */ ugc?: boolean; }; type RichContent = { /** * Global styling for header, paragraph, block quote, and code block nodes in the object. */ documentStyle?: Posts.DocumentStyle; /** * Object metadata. */ metadata?: Posts.Metadata; /** * Node objects representing a rich content document. */ nodes?: Array; }; type SendActionEventOptions = { entityId?: string; postCountersUpdated?: Posts.PostCountersUpdated; postLikedAction?: Posts.PostLiked; }; type SendActionEventRequest = { entityId?: string; postCountersUpdated?: Posts.PostCountersUpdated; postLikedAction?: Posts.PostLiked; }; type SendActionEventRequestActionOneOf = { postCountersUpdated?: Posts.PostCountersUpdated; postLikedAction?: Posts.PostLiked; }; type SendActionEventResponse = {}; type SeoSchema = { /** * SEO general settings. */ settings?: Posts.Settings; /** * SEO tags information. */ tags?: Array; }; type Settings = { /** * Whether the auto redirects feature creating `301 redirects` on a slug change is enabled. * * Default: enabled */ preventAutoRedirect?: boolean; }; type Sorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type Spoiler = { /** * The text for the button used to remove the spoiler cover. */ buttonText?: string; /** * The description displayed on top of the spoiler cover. */ description?: string; /** * Sets whether the spoiler cover is enabled for this node. */ enabled?: boolean; }; type Styles = { /** * Border attributes. */ border?: Posts.Border; /** * Color attributes. */ colors?: Posts.Colors; }; type TableCellData = { /** * The cell's border colors. */ borderColors?: Posts.BorderColors; /** * Styling for the cell's background color and text alignment. */ cellStyle?: Posts.CellStyle; }; type TableData = { /** * Sets whether the table's first column is a header. */ columnHeader?: boolean; /** * Styling for the table's container. */ containerData?: Posts.PluginContainerData; /** * The table's dimensions. */ dimensions?: Posts.Dimensions; /** * Deprecated: Use `rowHeader` and `columnHeader` instead. */ header?: boolean; /** * Sets whether the table's first row is a header. */ rowHeader?: boolean; }; type Tag = { /** * SEO tag inner content. For example, ` inner content `. */ children?: string; /** * Whether the tag is a custom tag. */ custom?: boolean; /** * Whether the tag is disabled. */ disabled?: boolean; /** * SEO tag meta data. For example, `{height: 300, width: 240}`. */ meta?: Object; /** * A `{'key':'value'} pair object where each SEO tag property (`'name'`, `'content'`, `'rel'`, `'href'`) contains a value. * For example: `{'name': 'description', 'content': 'the description itself'}`. */ props?: Object; /** * SEO tag type. * * Supported values: `title`, `meta`, `script`, `link`. */ type?: string; }; type TextData = { /** * The decorations to apply. */ decorations?: Array; /** * The text to apply decorations to. */ text?: string; }; type TextNodeStyle = { /** * The decorations to apply to the node. */ decorations?: Array; /** * Line height for text in the node. */ lineHeight?: string; /** * Padding and background color for the node. */ nodeStyle?: Posts.NodeStyle; }; type TextStyle = { /** * A CSS `line-height` value for the text as a unitless ratio. */ lineHeight?: string; /** * Text alignment. Defaults to `AUTO`. */ textAlignment?: string; }; type Thumbnails = { /** * Thumbnail alignment. */ placement?: string; /** * Spacing between thumbnails in pixels. */ spacing?: number; }; type Video = { /** * Video file details. */ media?: Posts.Media; /** * Video thumbnail file details. */ thumbnail?: Posts.Media; }; type VideoData = { /** * Styling for the video's container. */ containerData?: Posts.PluginContainerData; /** * Sets whether the video's download button is disabled. */ disableDownload?: boolean; /** * Video options. */ options?: Posts.PlaybackOptions; /** * Video thumbnail details. */ thumbnail?: Posts.Media; /** * Video title. */ title?: string; /** * Video details. */ video?: Posts.Media; }; type VideoResolution = { /** * Video format for example, mp4, hls. */ format?: string; /** * Video height. */ height?: number; /** * Video URL. */ url?: string; /** * Video width. */ width?: number; }; type WixMedia = { /** * Thumbnail or image details. */ image?: string; /** * Video details. Optional */ videoV2?: string; }; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#) */ interface PostsQueryBuilder { /** * Adds a sort to a query, sorting by the specified properties in ascending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#ascending) */ ascending(propertyNames: Array): Posts.PostsQueryBuilder; /** * Adds a sort to a query, sorting by the specified properties in descending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#descending) */ descending(propertyNames: Array): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property equals the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#eq) */ eq(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Returns the filtered query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#find) */ find(): Promise; /** * Refines a query to match items where the specified property is greater than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#ge) */ ge(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property is greater than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#gt) */ gt(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Refines a query to match items whose specified property contains all of the specified values. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#hasAll) */ hasAll(propertyName: string, value: Array): Posts.PostsQueryBuilder; /** * Refines a query to match items whose specified property contains any of the specified values. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#hasSome) */ hasSome(propertyName: string, value: Array): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property is less than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#le) */ le(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Limits the number of items the query returns. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#limit) */ limit(limit: number): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property is less than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#lt) */ lt(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property doesn't equal the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#ne) */ ne(propertyName: string, value: any): Posts.PostsQueryBuilder; /** * Sets the number of items to skip before returning query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#skip) */ skip(skip: number): Posts.PostsQueryBuilder; /** * Refines a query to match items where the specified property starts with the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#startsWith) */ startsWith(propertyName: string, value: string): Posts.PostsQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#) */ interface PostsQueryResult { /** * Returns the index of the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#currentPage) */ currentPage: number; /** * Returns an array of `posts` items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#items) */ items: Array; /** * Returns the number of items in the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#length) */ length: number; /** * Returns the requested page size. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#pageSize) */ pageSize: number; /** * Returns the `PostsQueryBuilder` object used to get the current results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#query) */ query: Posts.PostsQueryBuilder; /** * Returns the total number of items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#totalCount) */ totalCount: number; /** * Returns the total number of pages the query produced. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#totalPages) */ totalPages: number; /** * Indicates whether the query has more results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#hasNext) */ hasNext(): boolean; /** * Indicates whether the query has previous results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#hasPrev) */ hasPrev(): boolean; /** * Retrieves the next page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#next) */ next(): Promise; /** * Retrieves the previous page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#prev) */ prev(): Promise; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryBuilder.html#) */ namespace PostsQueryBuilder { } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Posts.PostsQueryResult.html#) */ namespace PostsQueryResult { } } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.html#) */ namespace Tags { type ApplicationError = { code?: string; data?: Object; description?: string; }; type BulkActionMetadata = { /** * Number of items that couldn't be processed. */ totalFailures?: number; /** * Number of items that were successfully processed. */ totalSuccesses?: number; /** * Number of failures without details because detailed failure threshold was exceeded. */ undetailedFailures?: number; }; type BulkCreateTagsOptions = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Whether to return the full created tag entities in the response. */ returnFullEntity?: boolean; }; type BulkCreateTagsRequest = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Whether to return the full created tag entities in the response. */ returnFullEntity?: boolean; /** * Tags to create. */ tags: Array; }; type BulkCreateTagsResponse = { /** * Bulk action metadata. */ bulkActionMetadata?: Tags.BulkActionMetadata; /** * Tags created by bulk action. */ results?: Array; }; type BulkTagResult = { /** * Optional created tag. */ item?: Tags.Tag; /** * Bulk actions metadata for tag. */ itemMetadata?: Tags.ItemMetadata; }; type CreateTagOptions = { /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Preferred tag slug. For example, `'tag-slug'`. */ slug?: string; }; type CreateTagRequest = { /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag label. The label for each tag in a blog must be unique. */ label: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Preferred tag slug. For example, `'tag-slug'`. */ slug?: string; }; type CreateTagResponse = { /** * Tag info. */ tag?: Tags.Tag; }; type CursorPaging = { /** * Pointer to the next or previous page in the list of results. * * You can get the relevant cursor token * from the `pagingMetadata` object in the previous call's response. * Not relevant for the first request. */ cursor?: string; /** * Number of items to load. */ limit?: number; }; type Cursors = { /** * Cursor pointing to next page in the list of results. */ next?: string; /** * Cursor pointing to previous page in the list of results. */ prev?: string; }; type DeleteTagRequest = { /** * Tag ID. */ tagId: string; }; type DeleteTagResponse = {}; type GetOrCreateTagOptions = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Tag language. */ language?: string; }; type GetOrCreateTagRequest = { /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Tag name. Unique per blog. */ label: string; /** * Tag language. */ language?: string; }; type GetOrCreateTagResponse = { /** * Tag info. */ tag?: Tags.Tag; }; type GetTagByLabelOptions = { /** * List of additional tag fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"URL"` */ fieldsets?: Array; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * If omitted, tags in all languages are returned. */ language?: string; }; type GetTagByLabelRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag label. */ label: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. * If omitted, tags in all languages are returned. */ language?: string; }; type GetTagByLabelResponse = { /** * Tag info. */ tag?: Tags.Tag; }; type GetTagBySlugOptions = { /** * List of additional tag fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"URL"` */ fieldsets?: Array; }; type GetTagBySlugRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Slug of the tag to retrieve. */ slug: string; }; type GetTagBySlugResponse = { /** * Tag info. */ tag?: Tags.Tag; }; type GetTagOptions = { /** * List of additional tag fields to be included in the response. By default, any fields not passed are not returned. * * Supported Values: * `"URL"` */ fieldsets?: Array; }; type GetTagRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * Tag ID. */ tagId: string; }; type GetTagResponse = { /** * Tag info. */ tag?: Tags.Tag; }; type InitialTagsCopied = { /** * Number of tags copied. */ count?: number; }; type ItemMetadata = { /** * Item ID. Should always be available, unless it's impossible (for example, when failing to create an item). */ _id?: string; /** * Details about the error in case of failure. */ error?: Tags.ApplicationError; /** * Index of the item within the request array. Allows for correlation between request and response items. */ originalIndex?: number; /** * Whether the requested action was successful for this item. When `false`, the `error` field is populated. */ success?: boolean; }; type ListTagsOptions = { /** * Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `sort`. */ cursorPaging?: Tags.CursorPaging; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Paging options to limit and skip the number of items. */ paging?: Tags.Paging; /** * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ sort?: Array; }; type ListTagsRequest = { /** * Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `sort`. */ cursorPaging?: Tags.CursorPaging; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Paging options to limit and skip the number of items. */ paging?: Tags.Paging; /** * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ sort?: Array; }; type ListTagsRequestPagingMethodOneOf = { /** * Cursor token pointing to a page of results. Not used in the first request. Following requests use the cursor token and not `sort`. */ cursorPaging?: Tags.CursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Tags.Paging; }; type ListTagsResponse = { /** * Details on the paged set of results returned. */ metaData?: Tags.MetaData; /** * List of tags. */ tags?: Array; }; type MetaData = { /** * Number of items returned in this response. */ count?: number; /** * Pointer to the next or previous page in the list of results. */ cursor?: string; /** * Requested offset. */ offset?: number; /** * Total number of items that match the query. */ total?: number; }; type Paging = { /** * Number of items to load. */ limit?: number; /** * Number of items to skip in the current sort order. */ offset?: number; }; type PagingMetadataV2 = { /** * Number of items returned in the response. */ count?: number; /** * Cursors to navigate through the result pages using `next` and `prev`. Returned if cursor paging is used. */ cursors?: Tags.Cursors; /** * Offset that was requested. */ offset?: number; /** * Flag that indicates the server failed to calculate the `total` field. */ tooManyToCount?: boolean; /** * Total number of items that match the query. Returned if offset paging is used and the `tooManyToCount` flag is not set. */ total?: number; }; type PlatformQuery = { /** * 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`. */ cursorPaging?: Tags.CursorPaging; /** * Filter object in the following format: * `"filter" : { * "fieldName1": "value1", * "fieldName2":{"$operator":"value2"} * }` * Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` */ filter?: Object; /** * Paging options to limit and skip the number of items. */ paging?: Tags.Paging; /** * Sort object in the following format: * `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` */ sort?: Array; }; type PlatformQueryPagingMethodOneOf = { /** * 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`. */ cursorPaging?: Tags.CursorPaging; /** * Paging options to limit and skip the number of items. */ paging?: Tags.Paging; }; type QueryTagsOptions = {}; type QueryTagsRequest = { /** * __Deprecated.__ Use `fieldsets` instead. * This parameter will be removed on June 30, 2023. * * List of tag fields to be included in the response. */ fieldsToInclude?: Array; /** * List of additional tag fields to include in the response. For example, use the `URL` fieldset to retrieve the url field in * the response in addition to the tag's base fields. Base fields don’t include any of the supported fieldset values. By default * only the tag's base fields are returned. */ fieldsets?: Array; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Filter object. * For a detailed list of supported filters, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ filter?: Object; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Pagination options. */ paging?: Tags.Paging; /** * Query options. */ query?: Tags.PlatformQuery; /** * __Deprecated.__ Use `query` instead. * This parameter will be removed on June 30, 2023. * * Sorting options. For a list of sortable fields, see [Field Support for Filtering and Sorting](https://dev.wix.com/api/rest/community/blog/filter-and-sort). */ sort?: Array; }; type QueryTagsResponse = { /** * __Deprecated.__ Use `pagingMetadata` instead. * This property will be removed on June 30, 2023. * * Details on the paged set of results returned. */ metaData?: Tags.MetaData; /** * Details on the paged set of results returned. */ pagingMetadata?: Tags.PagingMetadataV2; /** * List of tags. */ tags?: Array; }; type Sorting = { /** * Name of the field to sort by. */ fieldName?: string; /** * Sort order. */ order?: string; }; type Tag = { /** * Date the tag was created. */ _createdDate?: Date; /** * Tag ID. */ _id?: string; /** * Date the tag was last updated. */ _updatedDate?: Date; /** * Tag label. * * A blog can't have two tags with the same label. */ label?: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of posts with this tag, including unpublished draft posts. */ postCount?: number; /** * Reserved for internal use. */ publicationCount?: number; /** * Number of published posts with this tag. */ publishedPostCount?: number; /** * Part of a tag's URL that refers to a specific tag. * * For example, `'https:/example.com/tags/{my-tag-slug}'`. */ slug?: string; /** * ID of the tag'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 tag will share the same `translationId`. */ translationId?: string; /** * Tag URL. * * The `url` directs you to a page that lists every post with the specified tag. */ url?: string; }; type TagsFieldSet = { /** * Includes tag URL when TRUE. Defaults to FALSE. */ includeUrl?: boolean; }; type UpdateTag = { /** * Date the tag was created. */ _createdDate?: Date; /** * Tag ID. */ _id?: string; /** * Date the tag was last updated. */ _updatedDate?: Date; /** * Tag label. * * A blog can't have two tags with the same label. */ label?: string; /** * Tag language. * * 2-letter language code in [ISO 639-1 alpha-2](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) format. */ language?: string; /** * Number of posts with this tag, including unpublished draft posts. */ postCount?: number; /** * Reserved for internal use. */ publicationCount?: number; /** * Number of published posts with this tag. */ publishedPostCount?: number; /** * Part of a tag's URL that refers to a specific tag. * * For example, `'https:/example.com/tags/{my-tag-slug}'`. */ slug?: string; /** * ID of the tag'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 tag will share the same `translationId`. */ translationId?: string; /** * Tag URL. * * The `url` directs you to a page that lists every post with the specified tag. */ url?: string; }; type UpdateTagOptions = { /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; tag: Tags.UpdateTag; }; type UpdateTagRequest = { /** * Field mask of fields to update. */ fieldMask?: Array; /** * List of tag fields to be included if entities are present in the response. * Base fieldset, which is default, will return all core tag properties. * Example: When URL fieldset is selected, returned tag will have a set of base properties and tag url. */ fieldsets?: Array; /** * Tag info. */ tag?: Tags.Tag; }; type UpdateTagResponse = { /** * Tag info. */ tag?: Tags.Tag; }; /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#) */ interface TagsQueryBuilder { /** * Adds a sort to a query, sorting by the specified properties in ascending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#ascending) */ ascending(propertyNames: Array): Tags.TagsQueryBuilder; /** * Adds a sort to a query, sorting by the specified properties in descending order. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#descending) */ descending(propertyNames: Array): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property equals the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#eq) */ eq(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Returns the filtered query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#find) */ find(): Promise; /** * Refines a query to match items where the specified property is greater than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#ge) */ ge(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property is greater than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#gt) */ gt(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Refines a query to match items whose specified property contains any of the specified values. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#hasSome) */ hasSome(propertyName: string, value: Array): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property is less than or equal to the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#le) */ le(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Limits the number of items the query returns. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#limit) */ limit(limit: number): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property is less than the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#lt) */ lt(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property doesn't equal the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#ne) */ ne(propertyName: string, value: any): Tags.TagsQueryBuilder; /** * Sets the number of items to skip before returning query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#skip) */ skip(skip: number): Tags.TagsQueryBuilder; /** * Refines a query to match items where the specified property starts with the specified value. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#startsWith) */ startsWith(propertyName: string, value: string): Tags.TagsQueryBuilder; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#) */ interface TagsQueryResult { /** * Returns the index of the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#currentPage) */ currentPage: number; /** * Returns an array of `tags` items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#items) */ items: Array; /** * Returns the number of items in the current page of results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#length) */ length: number; /** * Returns the requested page size. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#pageSize) */ pageSize: number; /** * Returns the `TagsQueryBuilder` object used to get the current results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#query) */ query: Tags.TagsQueryBuilder; /** * Returns the total number of items that match the query. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#totalCount) */ totalCount: number; /** * Returns the total number of pages the query produced. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#totalPages) */ totalPages: number; /** * Indicates whether the query has more results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#hasNext) */ hasNext(): boolean; /** * Indicates whether the query has previous results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#hasPrev) */ hasPrev(): boolean; /** * Retrieves the next page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#next) */ next(): Promise; /** * Retrieves the previous page of query results. * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#prev) */ prev(): Promise; } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryBuilder.html#) */ namespace TagsQueryBuilder { } /** * [Read more](https://www.wix.com/corvid/reference/wix-blog-backend.Tags.TagsQueryResult.html#) */ namespace TagsQueryResult { } } }