export interface TextStyle { /** Text alignment. Defaults to `AUTO`. */ textAlignment?: TextStyle_TextAlignment; /** A CSS `line-height` value for the text expressed as a ratio relative to the font size. For example, if the font size is 20px, a `lineHeight` value of `'1.5'`` results in a line height of 30px. */ lineHeight?: string; } export type TextStyle_TextAlignment = "AUTO" | "LEFT" | "RIGHT" | "CENTER" | "JUSTIFY" | "UNRECOGNIZED"; export interface Link { /** The absolute URL for the linked document. */ url?: string | undefined; /** The target node's ID. Used for linking to another node in this object. */ anchor?: string | undefined; /** * The 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?: Link_Target; /** The HTML `rel` attribute value for the link. This object specifies the relationship between the current document and the linked document. */ rel?: Link_Rel; /** A serialized object used for a custom or external link panel. */ customData?: string; } export type Link_Target = "SELF" | "BLANK" | "PARENT" | "TOP" | "UNRECOGNIZED"; export interface Link_Rel { /** Indicates to search engine crawlers not to follow the link. Defaults to `false`. */ nofollow?: boolean; /** Indicates to search engine crawlers that the link is a paid placement such as sponsored content or an advertisement. Defaults to `false`. */ 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. Defaults to `false`. */ ugc?: boolean; /** Indicates that this link protect referral information from being passed to the target website. */ noreferrer?: boolean; } export interface PluginContainerData { /** The width of the node when it's displayed. */ width?: PluginContainerData_Width; /** The node's alignment within its container. */ alignment?: PluginContainerData_Alignment; /** Spoiler cover settings for the node. */ spoiler?: PluginContainerData_Spoiler; /** The height of the node when it's displayed. */ height?: PluginContainerData_Height; /** 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. Defaults to `true` for all node types except 'DIVIVDER' where it defaults to `false`. */ textWrap?: boolean; } export type PluginContainerData_Alignment = "CENTER" | "LEFT" | "RIGHT" | "UNRECOGNIZED"; export interface PluginContainerData_Spoiler { /** Sets whether the spoiler cover is enabled for this node. Defaults to `false`. */ enabled?: boolean; /** The description displayed on top of the spoiler cover. */ description?: string; /** The text for the button used to remove the spoiler cover. */ buttonText?: string; } export interface PluginContainerData_Width { /** * One of the following predefined width options: * `CONTENT`: The width of the container matches the content width. * `SMALL`: A small width. * `ORIGINAL`: For `imageData` containers only. The width of the container matches the original image width. * `FULL_WIDTH`: For `imageData` containers only. The image container takes up the full width of the screen. */ size?: PluginContainerData_Width_Type | undefined; /** A custom width value in pixels. */ custom?: string; } export type PluginContainerData_Width_Type = "CONTENT" | "SMALL" | "ORIGINAL" | "FULL_WIDTH" | "UNRECOGNIZED"; export interface PluginContainerData_Height { /** A custom height value in pixels. */ custom?: string; } export interface FileSource { /** The absolute URL for the file's source. */ url?: string; /** * Custom ID. Use `id` instead. * * @deprecated */ custom?: string; /** An ID that's resolved to a URL by a resolver function. */ id?: string; /** Indicates whether the file's source is private. Defaults to `false`. */ private?: boolean; } export interface Media { /** The source for the media's data. */ src?: FileSource; /** Media width in pixels. */ width?: number; /** Media height in pixels. */ height?: number; /** Media duration in seconds. Only relevant for audio and video files. */ duration?: number; } export interface 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; } export interface Oembed { /** The resource type. */ type?: string; /** The width of the resource specified in the `url` property in pixels. */ width?: number; /** The height of the resource specified in the `url` property in pixels. */ height?: number; /** Resource title. */ title?: string; /** The source URL for the resource. */ url?: string; /** HTML for embedding a video player. The HTML should have no padding or margins. */ html?: string; /** 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 name of the resource provider. */ providerName?: string; /** The URL for the resource provider. */ providerUrl?: 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; /** 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 an embedded viedo. */ videoUrl?: string; /** The oEmbed version number. This value must be `1.0`. */ version?: string; } export interface AnchorData { /** The target node's ID. */ anchor?: string; } export interface ColorData { /** The text's background color as a hexadecimal value. */ background?: string; /** The text's foreground color as a hexadecimal value. */ foreground?: string; } export interface FontSizeData { /** The units used for the font size. */ unit?: FontSizeData_fontType; /** Font size value. */ value?: number; } export type FontSizeData_fontType = "PX" | "EM" | "UNRECOGNIZED"; export interface LinkData { /** Link details. */ link?: Link; } export interface MentionData { /** The mentioned user's name. */ name?: string; /** The version of the user's name that appears after the `@` character in the mention. */ slug?: string; /** Mentioned user's ID. */ id?: string; } export interface SpoilerData { /** Spoiler ID. */ id?: string; } export interface BlockquoteData { /** Indentation level from 1-4. */ indentation?: number; } export interface CodeBlockData { /** Styling for the code block's text. */ textStyle?: TextStyle; } export interface HeadingData { /** Heading level from 1-6. */ level?: number; /** Styling for the heading text. */ textStyle?: TextStyle; /** Indentation level from 1-4. */ indentation?: number; } export interface OrderedListData { /** Indentation level from 0-4. */ indentation?: number; /** Offset level from 0-4. */ offset?: number; /** List start number. */ start?: number; } export interface BulletedListData { /** Indentation level from 0-4. */ indentation?: number; /** Offset level from 0-4. */ offset?: number; } export interface ParagraphData { /** Styling for the paragraph text. */ textStyle?: TextStyle; /** Indentation level from 1-4. */ indentation?: number; /** Paragraph level */ level?: number; } export interface AppEmbedData { /** The type of Wix App content being embedded. */ type?: AppEmbedData_AppType; /** The ID of the embedded content. */ itemId?: string; /** The name of the embedded content. */ name?: string; /** * Deprecated: Use `image` instead. * * @deprecated */ imageSrc?: string; /** The URL for the embedded content. */ url?: string; /** An image for the embedded content. */ image?: Media; /** Data for embedded Wix Bookings content. */ bookingData?: AppEmbedData_BookingData | undefined; /** Data for embedded Wix Events content. */ eventData?: AppEmbedData_EventData | undefined; } export type AppEmbedData_AppType = "PRODUCT" | "EVENT" | "BOOKING" | "UNRECOGNIZED"; export interface AppEmbedData_BookingData { /** Booking duration in minutes. */ durations?: string; } export interface AppEmbedData_EventData { /** Event schedule. */ scheduling?: string; /** Event location. */ location?: string; } export interface AudioData { /** Styling for the audio node's container. */ containerData?: PluginContainerData; /** Audio file details. */ audio?: Media; /** Sets whether the audio node's download button is disabled. Defaults to `false`. */ disableDownload?: boolean; /** Cover image. */ coverImage?: Media; /** Track name. */ name?: string; /** Author name. */ authorName?: string; /** An HTML version of the audio node. */ html?: string; } export interface ButtonData { /** Styling for the button's container. */ containerData?: PluginContainerData; /** The button type. */ type?: ButtonData_Type; /** Styling for the button. */ styles?: ButtonData_Styles; /** The text to display on the button. */ text?: string; /** Button link details. */ link?: Link; } export type ButtonData_Type = "LINK" | "ACTION" | "UNRECOGNIZED"; export interface ButtonData_Styles { /** Border attributes. */ border?: ButtonData_Styles_Border; /** Color attributes. */ colors?: ButtonData_Styles_Colors; } export interface ButtonData_Styles_Colors { /** The text color as a hexadecimal value. */ text?: string; /** The border color as a hexadecimal value. */ border?: string; /** The background color as a hexadecimal value. */ background?: string; } export interface ButtonData_Styles_Border { /** Border width in pixels. */ width?: number; /** Border radius in pixels. */ radius?: number; } export interface CollapsibleListData { /** Styling for the collapsible list's container. */ containerData?: PluginContainerData; /** If `true`, only one item can be expanded at a time. Defaults to `false`. */ expandOnlyOne?: boolean; /** Sets which items are expanded when the page loads. */ initialExpandedItems?: CollapsibleListData_InitialExpandedItems; /** The direction of the text in the list. Either left-to-right or right-to-left. */ direction?: CollapsibleListData_Direction; /** If `true`, The collapsible item will appear in search results as an FAQ. */ isQapageData?: boolean; } export type CollapsibleListData_InitialExpandedItems = "FIRST" | "ALL" | "NONE" | "UNRECOGNIZED"; export type CollapsibleListData_Direction = "LTR" | "RTL" | "UNRECOGNIZED"; export interface DividerData { /** Styling for the divider's container. */ containerData?: PluginContainerData; /** Divider line style. */ lineStyle?: DividerData_LineStyle; /** Divider width. */ width?: DividerData_Width; /** Divider alignment. */ alignment?: DividerData_Alignment; } export type DividerData_LineStyle = "SINGLE" | "DOUBLE" | "DASHED" | "DOTTED" | "UNRECOGNIZED"; export type DividerData_Width = "LARGE" | "MEDIUM" | "SMALL" | "UNRECOGNIZED"; export type DividerData_Alignment = "CENTER" | "LEFT" | "RIGHT" | "UNRECOGNIZED"; export interface EmbedData { /** Styling for the oEmbed node's container. */ containerData?: PluginContainerData; /** An [oEmbed](https://www.oembed.com) object. */ oembed?: Oembed; /** Origin asset source. */ src?: string; } export interface FileData { /** Styling for the file's container. */ containerData?: PluginContainerData; /** The source for the file's data. */ src?: FileSource; /** File name. */ name?: string; /** File type. */ type?: string; /** * Use `sizeInKb` instead. * * @deprecated */ size?: number; /** Settings for PDF files. */ pdfSettings?: FileData_PDFSettings; /** File MIME type. */ mimeType?: string; /** File path. */ path?: string; /** File size in KB. */ sizeInKb?: string; } export interface FileData_PDFSettings { /** * 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?: FileData_PDFSettings_ViewMode; /** Sets whether the PDF download button is disabled. Defaults to `false`. */ disableDownload?: boolean; /** Sets whether the PDF print button is disabled. Defaults to `false`. */ disablePrint?: boolean; } export type FileData_PDFSettings_ViewMode = "NONE" | "FULL" | "MINI" | "UNRECOGNIZED"; export interface GalleryOptions { /** Gallery layout. */ layout?: GalleryOptions_Layout; /** Styling for gallery items. */ item?: GalleryOptions_ItemStyle; /** Styling for gallery thumbnail images. */ thumbnails?: GalleryOptions_Thumbnails; } export interface GalleryOptions_Layout { /** Gallery layout type. */ type?: GalleryOptions_Layout_Type; /** Sets whether horizontal scroll is enabled. Defaults to `true` unless the layout `type` is set to `GRID` or `COLLAGE`. */ horizontalScroll?: boolean; /** Gallery orientation. */ orientation?: GalleryOptions_Layout_Orientation; /** The number of columns to display on full size screens. */ numberOfColumns?: number; /** The number of columns to display on mobile screens. */ mobileNumberOfColumns?: number; } export type GalleryOptions_Layout_Type = "COLLAGE" | "MASONRY" | "GRID" | "THUMBNAIL" | "SLIDER" | "SLIDESHOW" | "PANORAMA" | "COLUMN" | "MAGIC" | "FULLSIZE" | "UNRECOGNIZED"; export type GalleryOptions_Layout_Orientation = "ROWS" | "COLUMNS" | "UNRECOGNIZED"; export interface GalleryOptions_ItemStyle { /** Desirable dimension for each item in pixels (behvaior changes according to gallery type) */ targetSize?: number; /** Item ratio */ ratio?: number; /** Sets how item images are cropped. */ crop?: GalleryOptions_ItemStyle_Crop; /** The spacing between items in pixels. */ spacing?: number; } export type GalleryOptions_ItemStyle_Crop = "FILL" | "FIT" | "UNRECOGNIZED"; export interface GalleryOptions_Thumbnails { /** Thumbnail alignment. */ placement?: GalleryOptions_Thumbnails_Alignment; /** Spacing between thumbnails in pixels. */ spacing?: number; } export type GalleryOptions_Thumbnails_Alignment = "TOP" | "RIGHT" | "BOTTOM" | "LEFT" | "NONE" | "UNRECOGNIZED"; export interface GalleryData { /** Styling for the gallery's container. */ containerData?: PluginContainerData; /** The items in the gallery. */ items?: GalleryData_Item[]; /** Options for defining the gallery's appearance. */ options?: GalleryOptions; /** Sets whether the gallery's expand button is disabled. Defaults to `false`. */ disableExpand?: boolean; /** Sets whether the gallery's download button is disabled. Defaults to `false`. */ disableDownload?: boolean; } export interface GalleryData_Item { /** An image item. */ image?: GalleryData_Item_Image | undefined; /** A video item. */ video?: GalleryData_Item_Video | undefined; /** Item title. */ title?: string; /** Item's alternative text. */ altText?: string; } export interface GalleryData_Item_Video { /** Video file details. */ media?: Media; /** Video thumbnail file details. */ thumbnail?: Media; } export interface GalleryData_Item_Image { /** Image file details. */ media?: Media; /** Link details for images that are links. */ link?: Link; } export interface GIFData { /** Styling for the GIF's container. */ containerData?: PluginContainerData; /** The source of the full size GIF. */ original?: GIF; /** The source of the downsized GIF. */ downsized?: GIF; /** Height in pixels. */ height?: number; /** Width in pixels. */ width?: number; } export interface GIF { /** GIF format URL. */ gif?: string; /** MP4 format URL. */ mp4?: string; /** Thumbnail URL. */ still?: string; } export interface HTMLData { /** Styling for the HTML node's container. */ containerData?: PluginContainerData; /** The URL for the HTML code for the node. */ url?: string | undefined; /** The HTML code for the node. */ html?: string | undefined; /** * Whether this is an AdSense element. Use `source` instead. * * @deprecated */ isAdsense?: boolean; /** The type of HTML code. */ source?: HTMLData_Source; } export type HTMLData_Source = "HTML" | "ADSENSE" | "UNRECOGNIZED"; export interface ImageData { /** Styling for the image's container. */ containerData?: PluginContainerData; /** Image file details. */ image?: Media; /** Link details for images that are links. */ link?: Link; /** Sets whether the image expands to full screen when clicked. Defaults to `false`. */ disableExpand?: boolean; /** Image's alternative text. */ altText?: string; /** Image caption. */ caption?: string; /** Sets whether the image's download button is disabled. Defaults to `false`. */ disableDownload?: boolean; } export interface LinkPreviewData { /** Styling for the link preview's container. */ containerData?: PluginContainerData; /** Link details. */ link?: Link; /** Preview title. */ title?: string; /** Preview thumbnail URL. */ thumbnailUrl?: string; /** Preview description. */ description?: string; /** The preview content as HTML. */ html?: string; } export type MapType = "ROADMAP" | "SATELITE" | "HYBRID" | "TERRAIN" | "UNRECOGNIZED"; export interface MapData { /** Styling for the map's container. */ containerData?: PluginContainerData; /** Map settings. */ mapSettings?: MapSettings; } export interface MapSettings { /** The address to display on the map. */ address?: string; /** Sets whether the map is draggable. */ draggable?: boolean; /** Sets whether the location marker is visible. */ marker?: boolean; /** Sets whether street view control is enabled. */ streetViewControl?: boolean; /** Sets whether zoom control is enabled. */ zoomControl?: boolean; /** Location latitude. */ lat?: number; /** Location longitude. */ lng?: number; /** Location name. */ locationName?: string; /** Sets whether view mode control is enabled. */ viewModeControl?: boolean; /** Initial zoom value. */ initialZoom?: number; /** Map type. `HYBRID` is a combination of the `ROADMAP` and `SATELLITE` map types. */ mapType?: MapType; } export interface PollData { /** Styling for the poll's container. */ containerData?: PluginContainerData; /** Poll data. */ poll?: PollData_Poll; /** Layout settings for the poll and voting options. */ layout?: PollData_Layout; /** Styling for the poll and voting options. */ design?: PollData_Design; } export interface PollData_Poll { /** Poll ID. */ id?: string; /** Poll title. */ title?: string; /** Poll creator ID. */ creatorId?: string; /** Main poll image. */ image?: Media; /** Voting options. */ options?: PollData_Poll_Option[]; /** The poll's permissions and display settings. */ settings?: PollData_Poll_Settings; } export interface PollData_Poll_Option { /** Option ID. */ id?: string; /** Option title. */ title?: string; /** The image displayed with the option. */ image?: Media; } export interface PollData_Poll_Settings { /** Permissions settings for voting. */ permissions?: PollData_Poll_Settings_Permissions; /** Sets whether voters are displayed in the vote results. Defaults to `true`. */ showVoters?: boolean; /** Sets whether the vote count is displayed. Defaults to `true`. */ showVotesCount?: boolean; } export interface PollData_Poll_Settings_Permissions { /** Sets who can view the poll results. */ view?: PollData_Poll_Settings_Permissions_ViewRole; /** Sets who can vote. */ vote?: PollData_Poll_Settings_Permissions_VoteRole; /** Sets whether one voter can vote multiple times. Defaults to `false`. */ allowMultipleVotes?: boolean; } export type PollData_Poll_Settings_Permissions_ViewRole = "CREATOR" | "VOTERS" | "EVERYONE" | "UNRECOGNIZED"; export type PollData_Poll_Settings_Permissions_VoteRole = "SITE_MEMBERS" | "ALL" | "UNRECOGNIZED"; export interface PollData_Layout { /** Poll layout settings. */ poll?: PollData_Layout_PollLayout; /** Voting otpions layout settings. */ options?: PollData_Layout_OptionLayout; } export interface PollData_Layout_PollLayout { /** The layout for displaying the voting options. */ type?: PollData_Layout_PollLayout_Type; /** The direction of the text displayed in the voting options. Text can be displayed either right-to-left or left-to-right. */ direction?: PollData_Layout_PollLayout_Direction; /** Sets whether to display the main poll image. Defaults to `false`. */ enableImage?: boolean; } export type PollData_Layout_PollLayout_Type = "LIST" | "GRID" | "UNRECOGNIZED"; export type PollData_Layout_PollLayout_Direction = "LTR" | "RTL" | "UNRECOGNIZED"; export interface PollData_Layout_OptionLayout { /** Sets whether to display option images. Defaults to `false`. */ enableImage?: boolean; } export interface PollData_Design { /** Styling for the poll. */ poll?: PollData_Design_PollDesign; /** Styling for voting options. */ options?: PollData_Design_OptionDesign; } export interface PollData_Design_PollDesign { /** Background styling. */ background?: PollData_Design_PollDesign_Background; /** Border radius in pixels. */ borderRadius?: number; } export interface PollData_Design_PollDesign_Background { /** Background type. For each option, include the relevant details. */ type?: PollData_Design_PollDesign_Background_Type; /** The background color as a hexademical value. */ color?: string; /** An image to use for the background. */ image?: Media | undefined; /** Details for a gradient background. */ gradient?: PollData_Design_PollDesign_Background_Gradient | undefined; } export type PollData_Design_PollDesign_Background_Type = "COLOR" | "IMAGE" | "GRADIENT" | "UNRECOGNIZED"; export interface PollData_Design_PollDesign_Background_Gradient { /** The gradient angle in degrees. */ angle?: number; /** The start color as a hexademical value. */ startColor?: string; /** The end color as a hexademical value. */ lastColor?: string; } export interface PollData_Design_OptionDesign { /** Border radius in pixels. */ borderRadius?: number; } export interface TableData { /** Styling for the table's container. */ containerData?: PluginContainerData; /** The table's dimensions. */ dimensions?: TableData_Dimensions; /** * Deprecated: Use `rowHeader` and `columnHeader` instead. * * @deprecated */ header?: boolean; /** Sets whether the table's first row is a header. Defaults to `false`. */ rowHeader?: boolean; /** Sets whether the table's first column is a header. Defaults to `false`. */ columnHeader?: boolean; } export interface TableData_Dimensions { /** An array representing relative width of each column in relation to the other columns. */ colsWidthRatio?: number[]; /** An array representing the height of each row in pixels. */ rowsHeight?: number[]; /** An array representing the minimum width of each column in pixels. */ colsMinWidth?: number[]; } export interface TableCellData { /** Styling for the cell's background color and text alignment. */ cellStyle?: TableCellData_CellStyle; /** The cell's border colors. */ borderColors?: TableCellData_BorderColors; } export type TableCellData_VerticalAlignment = "TOP" | "MIDDLE" | "BOTTOM" | "UNRECOGNIZED"; export interface TableCellData_CellStyle { /** Vertical alignment for the cell's text. */ verticalAlignment?: TableCellData_VerticalAlignment; /** Cell background color as a hexadecimal value. */ backgroundColor?: string; } export interface TableCellData_BorderColors { /** 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; /** Bottom border color as a hexadecimal value. */ bottom?: string; } export interface VideoData { /** Styling for the video's container. */ containerData?: PluginContainerData; /** Video details. */ video?: Media; /** Video thumbnail details. */ thumbnail?: Media; /** Sets whether the video's download button is disabled. Defaults to `false`. */ disableDownload?: boolean; /** Video title. */ title?: string; /** Video options. */ options?: PlaybackOptions; } export type NullValue = "NULL_VALUE" | "UNRECOGNIZED"; /** * `Struct` represents a structured data value, consisting of fields * which map to dynamically typed values. In some languages, `Struct` * might be supported by a native representation. For example, in * scripting languages like JS a struct is represented as an * object. The details of that representation are described together * with the proto support for the language. * * The JSON representation for `Struct` is JSON object. */ export interface Struct { /** An unordered map of dynamically typed values. */ fields?: { [key: string]: Value; }; } export interface Struct_FieldsEntry { key: string; value?: Value; } /** * `Value` represents a dynamically typed value which can be either * null, a number, a string, a boolean, a recursive struct value, or a * list of values. A producer of value is expected to set one of these * variants. Absence of any variant indicates an error. * * The JSON representation for `Value` is JSON value. */ export interface Value { /** A null value. */ nullValue?: NullValue | undefined; /** A double value. */ numberValue?: number | undefined; /** A string value. */ stringValue?: string | undefined; /** A boolean value. */ boolValue?: boolean | undefined; /** A structured value. */ structValue?: Struct | undefined; /** An array of `value` objects. */ listValue?: ListValue | undefined; } /** * `ListValue` is a wrapper around a repeated field of values. * * The JSON representation for `ListValue` is JSON array. */ export interface ListValue { /** Repeated field of dynamically typed values. */ values?: Value[]; } export interface RichContent { /** Node objects representing a rich content document. */ nodes?: Node[]; /** Object metadata. */ metadata?: Metadata; /** Global styling for header, paragraph, block quote, and code block nodes in the object. */ documentStyle?: DocumentStyle; } export interface Node { /** 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?: Node_Type; /** Node ID. */ id?: string; /** A list of child nodes. */ nodes?: Node[]; /** Padding and background color styling for the node. */ style?: NodeStyle; /** Data for a button node. */ buttonData?: ButtonData | undefined; /** Data for a code block node. */ codeBlockData?: CodeBlockData | undefined; /** Data for a divider node. */ dividerData?: DividerData | undefined; /** Data for a file node. */ fileData?: FileData | undefined; /** Data for a gallery node. */ galleryData?: GalleryData | undefined; /** Data for a GIF node. */ gifData?: GIFData | undefined; /** Data for a heading node. */ headingData?: HeadingData | undefined; /** Data for an embedded HTML node. */ htmlData?: HTMLData | undefined; /** Data for an image node. */ imageData?: ImageData | undefined; /** Data for a link preview node. */ linkPreviewData?: LinkPreviewData | undefined; /** Data for a map node. */ mapData?: MapData | undefined; /** Data for a paragraph node. */ paragraphData?: ParagraphData | undefined; /** Data for a poll node. */ pollData?: PollData | undefined; /** Data for a text node. Used to apply decorations to text. */ textData?: TextData | undefined; /** Data for an app embed node. */ appEmbedData?: AppEmbedData | undefined; /** Data for a video node. */ videoData?: VideoData | undefined; /** Data for an oEmbed node. */ embedData?: EmbedData | undefined; /** Data for a collapsible list node. */ collapsibleListData?: CollapsibleListData | undefined; /** Data for a table node. */ tableData?: TableData | undefined; /** Data for a table cell node. */ tableCellData?: TableCellData | undefined; /** Data for a custom external node. */ externalData?: Struct | undefined; /** Data for an audio node. */ audioData?: AudioData | undefined; /** Data for an ordered list node. */ orderedListData?: OrderedListData | undefined; /** Data for a bulleted list node. */ bulletedListData?: BulletedListData | undefined; /** Data for a block quote node. */ blockquoteData?: BlockquoteData | undefined; } export type Node_Type = "PARAGRAPH" | "TEXT" | "HEADING" | "BULLETED_LIST" | "ORDERED_LIST" | "LIST_ITEM" | "BLOCKQUOTE" | "CODE_BLOCK" | "VIDEO" | "DIVIDER" | "FILE" | "GALLERY" | "GIF" | "HTML" | "IMAGE" | "LINK_PREVIEW" | "MAP" | "POLL" | "APP_EMBED" | "BUTTON" | "COLLAPSIBLE_LIST" | "TABLE" | "EMBED" | "COLLAPSIBLE_ITEM" | "COLLAPSIBLE_ITEM_TITLE" | "COLLAPSIBLE_ITEM_BODY" | "TABLE_CELL" | "TABLE_ROW" | "EXTERNAL" | "AUDIO" | "UNRECOGNIZED"; export interface NodeStyle { /** The top padding value in pixels. */ paddingTop?: string; /** The bottom padding value in pixels. */ paddingBottom?: string; /** The background color as a hexadecimal value. */ backgroundColor?: string; } export interface TextData { /** The text to apply decorations to. */ text?: string; /** The decorations to apply. */ decorations?: Decoration[]; } /** Adds appearence changes to text */ export interface Decoration { /** The type of decoration to apply. */ type?: Decoration_Type; /** Data for an anchor link decoration. */ anchorData?: AnchorData | undefined; /** Data for a color decoration. */ colorData?: ColorData | undefined; /** Data for an external link decoration. */ linkData?: LinkData | undefined; /** Data for a mention decoration. */ mentionData?: MentionData | undefined; /** Data for a font size decoration. */ fontSizeData?: FontSizeData | undefined; /** Font weight for a bold decoration. */ fontWeightValue?: number; /** Data for an italic decoration. Defaults to `true`. */ italicData?: boolean; /** Data for an underline decoration. Defaults to `true`. */ underlineData?: boolean; /** Data for a spoiler decoration. */ spoilerData?: SpoilerData | undefined; } export type Decoration_Type = "BOLD" | "ITALIC" | "UNDERLINE" | "SPOILER" | "ANCHOR" | "MENTION" | "LINK" | "COLOR" | "FONT_SIZE" | "EXTERNAL" | "UNRECOGNIZED"; export interface Metadata { /** Schema version. */ version?: number; /** * When the object was created. * * @deprecated */ createdTimestamp?: Date; /** * When the object was most recently updated. * * @deprecated */ updatedTimestamp?: Date; /** Object ID. */ id?: string; } export interface TextNodeStyle { /** The decorations to apply to the node. */ decorations?: Decoration[]; /** Padding and background color for the node. */ nodeStyle?: NodeStyle; /** Line height for text in the node. */ lineHeight?: string; } export interface DocumentStyle { /** Styling for H1 nodes. */ headerOne?: TextNodeStyle; /** Styling for H2 nodes. */ headerTwo?: TextNodeStyle; /** Styling for H3 nodes. */ headerThree?: TextNodeStyle; /** Styling for H4 nodes. */ headerFour?: TextNodeStyle; /** Styling for H5 nodes. */ headerFive?: TextNodeStyle; /** Styling for H6 nodes. */ headerSix?: TextNodeStyle; /** Styling for paragraph nodes. */ paragraph?: TextNodeStyle; /** Styling for block quote nodes. */ blockquote?: TextNodeStyle; /** Styling for code block nodes. */ codeBlock?: TextNodeStyle; } export declare const LATEST_VERSION = 1; export {};