import wixDataset from 'wix-dataset'; declare global { /** * The `$w` namespace contains everything you need in order to work * with your site's components. * [Read more](https://www.wix.com/corvid/reference/$w.html#) */ namespace $w { type dataset = wixDataset.Dataset; type router_dataset = wixDataset.DynamicDataset; type BasicEventHandler = () => void; type EventHandler = (event: Event) => void; type ForItemCallback = ($item: $w, itemData: any, index: number) => void; /** * Handles events fired when a gallery moves to a new image. */ type GalleryItemChangedEventHandler = (event: GalleryItemChangedEvent) => void; /** * Handles events fired when an image in a gallery is clicked. */ type GalleryItemClickedEventHandler = (event: GalleryItemClickedEvent) => void; /** * Handles events fired when the code in an HtmlComponent sends a message. */ type HtmlComponentMessageEventHandler = (event: HtmlComponentMessageEvent) => void; type HtmlElementEventHandler = (event: HtmlComponentMessageEvent) => void; /** * Handles events fired when a user hovers over a star on the rating component. */ type IconMouseInEventHandler = (event: IconMouseInEvent) => void; type ItemReadyEventHandler = ($item: $w, itemData: any, index: number) => void; type ItemRemovedEventHandler = (itemData: any) => void; /** * Handles events fired when the keyboard is pressed. */ type KeyboardEventHandler = (event: KeyboardEvent) => void; /** * Handles events fired when the mouse is used on a menu item. */ type MenuItemMouseEventHandler = (event: MenuItemMouseEvent) => void; /** * Handles events fired when the mouse is clicked. */ type MouseEventHandler = (event: MouseEvent) => void; /** * Handles events fired when an item in a quick action bar is clicked. */ type QuickActionBarItemClickedEventHandler = (event: QuickActionBarItemClickedEvent) => void; /** * Function that runs when all page elements have finished loading. */ type ReadyHandler = () => Promise | void; /** * Handles events fired when a table cell is selected. */ type TableCellEventHandler = (event: TableCellEvent) => void; /** * Handles events fired when a table row is selected. */ type TableRowEventHandler = (event: TableRowEvent) => void; /** * Function that runs when custom validation is checked. */ type Validator = (value: string | UploadButton.File[] | boolean, reject: Function) => void; type ViewChangeEventHandler = (event: ViewChangeEvent) => void; type ViewChangeOperation = (options: AppointmentField.OperationOptions) => any; /** * The menu in a user profile. * [Read more](https://www.wix.com/corvid/reference/$w.AccountNavBar.html#) */ interface AccountNavBar extends Element, HiddenCollapsedMixin { } /** * `AddressInput` is used for entering addresses. It lets users type * an address, and suggests exact locations using Google Maps services. * [Read more](https://www.wix.com/corvid/reference/$w.AddressInput.html#) */ interface AddressInput extends LabelMixin, FormElement, DisabledMixin, RequiredMixin, ReadOnlyMixin, HiddenCollapsedMixin, FocusMixin, ClickableMixin { /** * Sets or gets the filter of the address input. * [Read more](https://www.wix.com/corvid/reference/$w.AddressInput.html#filter) */ filter: AddressInput.AddressFilter; /** * Sets or gets the placeholder of the address input. * [Read more](https://www.wix.com/corvid/reference/$w.AddressInput.html#placeholder) */ placeholder: string; /** * Sets or gets the value of the address input. * [Read more](https://www.wix.com/corvid/reference/$w.AddressInput.html#value) */ value: AddressInput.Address; } /** * [Anchors](https://www.wix.com/support/html5/article/about-anchors) * are invisible position markers which you can place anywhere on your site. * [Read more](https://www.wix.com/corvid/reference/$w.Anchor.html#) */ interface Anchor extends Node, ViewportMixin { /** * Gets the name of an anchor. * [Read more](https://www.wix.com/corvid/reference/$w.Anchor.html#name) */ readonly name: string; } /** * Use an `AppointmentField` to select dates, times, and timezones for scheduling appointments. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#) */ interface AppointmentField extends FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, ClickableMixin, RequiredMixin { /** * Sets or gets a list of dates and times that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#dateTimeRanges) */ dateTimeRanges: AppointmentField.dateTimeRangeInfo; /** * Sets or gets a list of days in the week that are not selectable. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#disabledDaysOfWeek) */ disabledDaysOfWeek: number[]; /** * Sets or gets the latest date that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#maxDate) */ maxDate: Date; /** * Sets or gets the earliest date that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#minDate) */ minDate: Date; /** * Sets or gets the minimum amount of time before an appointment starts that a time slot is displayed. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#schedulingNotice) */ schedulingNotice: number; /** * Sets or gets the interval between the times displayed in the time picker. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#timeIncrements) */ timeIncrements: number; /** * Sets or gets the title of an appointment field. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#title) */ title: string; /** * Sets or gets the time format. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#useAmPmFormat) */ useAmPmFormat: boolean; /** * Sets or gets the date and time value of the appointment field. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#value) */ value: Date; /** * Sets or gets the timezone dropdown value. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#visitorTimeZone) */ visitorTimeZone: string; /** * Adds an event handler that triggers when the appointment field's year or month changes. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#onViewChange) * @eventType onViewChange */ onViewChange(handler: ViewChangeEventHandler, operation?: ViewChangeOperation, timeout?: number): void; /** * Resets the appointment field to its original values. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#reset) */ reset(): void; } /** * An element for playing audio files. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#) */ interface AudioPlayer extends Element, HiddenCollapsedMixin { /** * Sets or gets the name of the artist displayed in an audio player. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#artistName) */ artistName: string; /** * Sets or gets the cover image displayed in an audio player. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#coverImage) */ coverImage: string; /** * Gets the current play time from the beginning of the audio track, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#currentTime) */ readonly currentTime: number; /** * Gets the total play time of the audio track, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#duration) */ readonly duration: number; /** * Indicates if the volume is currently muted. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#isMuted) */ readonly isMuted: boolean; /** * Indicates if an audio track is currently playing. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#isPlaying) */ readonly isPlaying: boolean; /** * Sets or gets the file location of the audio file. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#src) */ src: string; /** * Sets or gets the track name displayed in an audio player. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#trackName) */ trackName: string; /** * Sets or gets an audio player's volume. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#volume) */ volume: number; /** * Mutes audio volume. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#mute) */ mute(): Promise; /** * Adds an event handler that runs when playback has ended. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#onEnded) * @eventType onEnded */ onEnded(handler: EventHandler): AudioPlayer; /** * Adds an event handler that runs when playback is paused. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#onPause) * @eventType onPause */ onPause(handler: EventHandler): AudioPlayer; /** * Adds an event handler that runs when playback is started or restarted. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#onPlay) * @eventType onPlay */ onPlay(handler: EventHandler): AudioPlayer; /** * Adds an event handler that runs when playback progresses. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#onProgress) * @eventType onProgress */ onProgress(handler: EventHandler): AudioPlayer; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#pause) */ pause(): Promise; /** * Begins or resumes playback. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#play) */ play(): Promise; /** * Moves playback to the specified time, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#seek) */ seek(time: number): Promise; /** * Stops playback. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#stop) */ stop(): Promise; /** * Toggles playback. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#togglePlay) */ togglePlay(): Promise; /** * Unmutes audio volume. * [Read more](https://www.wix.com/corvid/reference/$w.AudioPlayer.html#unmute) */ unmute(): Promise; } /** * Provides functionality for background images in certain elements. * [Read more](https://www.wix.com/corvid/reference/$w.Background.html#) */ interface Background { /** * Sets or gets an object containing information about the element's background. * [Read more](https://www.wix.com/corvid/reference/$w.Background.html#background) */ background: Background.BackgroundOptions; } /** * Container [boxes](https://support.wix.com/en/article/container-boxes) * are used to structure your site. * [Read more](https://www.wix.com/corvid/reference/$w.Box.html#) */ interface Box extends Element, HiddenCollapsedMixin, ClickableMixin, ContainableMixin, StyleMixin { /** * Gets an object containing information about the box's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Box.html#style) */ readonly style: Style; } /** * Breadcrumbs are used for navigating between site pages. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#) */ interface Breadcrumbs extends HiddenCollapsedMixin, ViewportMixin { /** * Indicates if an ellipsis is displayed in the breadcrumbs trail. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#isEllipsisVisible) */ readonly isEllipsisVisible: boolean; /** * Sets or gets breadcrumbs items. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#items) */ items: Breadcrumbs.Item[]; /** * Sets or gets the number of items that appear in the breadcrumbs trail after an ellipsis. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#itemsAfterEllipsis) */ itemsAfterEllipsis: number; /** * Sets or gets the number of items that appear in the breadcrumbs trail before an ellipsis. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#itemsBeforeEllipsis) */ itemsBeforeEllipsis: number; /** * Hides an ellipsis displayed in a breadcrumbs element and displays the middle items of the breadcrumbs trail instead. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#hideEllipsis) */ hideEllipsis(): void; /** * Displays an ellipsis in a breadcrumbs element instead of the middle items of the breadcrumbs trail. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#showEllipsis) */ showEllipsis(): void; } /** * A button on your site. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#) */ interface Button extends Element, HiddenCollapsedMixin, DisabledMixin, LinkableMixin, ClickableMixin, StyleMixin, LabelMixin { /** * Sets or gets the icon image displayed on the button. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#icon) */ icon: string; /** * Indicates if the button’s icon is collapsed or expanded. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#iconCollapsed) */ readonly iconCollapsed: boolean; /** * Sets or gets a button's label. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#label) */ label: string; /** * Sets or gets the button's link. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#link) */ link: string; /** * Gets an object containing information about the button's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#style) */ readonly style: Style; /** * Collapses the button’s icon and sets its `iconCollapsed` property to `true`. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#collapseIcon) */ collapseIcon(): Promise; /** * Expands the button’s icon and sets its `iconCollapsed` property to `false`. * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#expandIcon) */ expandIcon(): Promise; /** * Adds an event handler that runs when the mouse pointer is moved * onto the element. * * You can also [define an event handler using the Properties and Events panel](https://support.wix.com/en/article/velo-reacting-to-user-actions-using-events). * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#onMouseIn) */ onMouseIn(handler: MouseEventHandler): Button; /** * Adds an event handler that runs when the mouse pointer is moved * off of the element. * * You can also [define an event handler using the Properties and Events panel](https://support.wix.com/en/article/velo-reacting-to-user-actions-using-events). * [Read more](https://www.wix.com/corvid/reference/$w.Button.html#onMouseOut) */ onMouseOut(handler: MouseEventHandler): Button; } /** * The reCAPTCHA element allows you to present a challenge-response test to site visitors to determine whether they are human or a bot. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#) */ interface Captcha extends Element, FocusMixin, HiddenCollapsedMixin { /** * Gets the reCAPTCHA token. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#token) */ readonly token: string; /** * Adds an event handler that runs when a connection error occurs while completing the CAPTCHA challenge. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#onError) * @eventType onError */ onError(handler: Captcha.ErrorHandler): void; /** * Adds an event handler that runs when the CAPTCHA token expires. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#onTimeout) * @eventType onTimeout */ onTimeout(handler: Captcha.TimeoutHandler): void; /** * Adds an event handler that runs when the CAPTCHA challenge is successfully completed. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#onVerified) * @eventType onVerified */ onVerified(handler: Captcha.VerifiedHandler): void; /** * Resets the reCAPTCHA element. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#reset) */ reset(): Promise; } /** * An icon that leads users to the shopping cart. * [Read more](https://www.wix.com/corvid/reference/$w.CartIcon.html#) */ interface CartIcon extends Element, HiddenCollapsedMixin { /** * **Deprecated.** * This function will continue to work, but a newer version is available at * [wix-stores.cart.addProducts()](https://www.wix.com/velo/reference/wix-stores/cart/addproducts). * [Read more](https://www.wix.com/corvid/reference/$w.CartIcon.html#addProductsToCart) */ addProductsToCart(products: CartIcon.AddToCartItem[]): Promise; /** * **Deprecated.** * This function will continue to work, but a newer version is available at * [wix-stores.cart.addProducts()](https://www.wix.com/velo/reference/wix-stores/cart/addproducts). * [Read more](https://www.wix.com/corvid/reference/$w.CartIcon.html#addToCart) */ addToCart(productID: string, quantity?: number, options?: CartIcon.AddToCartOptions): Promise; } /** * An element for sending and receiving chat messages. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#) */ interface Chatbox extends Element, HiddenMixin { /** * Indicates if an element appears on all pages or only on the current page. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#global) */ readonly global: boolean; /** * Indicates if the chatbox is visible or hidden. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#hidden) */ readonly hidden: boolean; /** * Indicates if the element is actually visible. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#isVisible) */ readonly isVisible: boolean; /** * Indicates if the chatbox is maximized. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#maximized) */ readonly maximized: boolean; /** * Note: This standard element property is not relevant for Chatbox. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#parent) */ readonly parent: Node; /** * Expands the chatbox and focuses it on the specified chat channel. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#focusChannel) */ focusChannel(channelInfo: Chatbox.ChannelInfo): Promise; /** * Gets a chatbox channel. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#getChannel) */ getChannel(channelInfo: Chatbox.ChannelInfo): Promise; /** * Gets a list of available chat channels for a site visitor. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#getChannelList) */ getChannelList(): Promise; /** * Expands the chatbox and sets its [`maximized`](#maximized) property to `true`. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#maximize) */ maximize(): Promise; /** * Collapses the chatbox and sets its [`maximized`](#maximized) property to `false`. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#minimize) */ minimize(): Promise; /** * An event that fires when the chatbox is maximized. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onMaximize) */ onMaximize(handler: BasicEventHandler): void; /** * An event that fires when a site visitor receives a chat message. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onMessageReceived) */ onMessageReceived(message: Chatbox.Message): void; /** * An event that fires when a site visitor sends a chat message. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onMessageSent) */ onMessageSent(message: Chatbox.Message): void; /** * An event that fires when the chatbox is minimized. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onMinimize) */ onMinimize(handler: BasicEventHandler): void; /** * Note: This standard element event is not relevant for Chatbox. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onViewportEnter) * @eventType viewportEnter */ onViewportEnter(handler: EventHandler): Element; /** * Note: This standard element event is not relevant for Chatbox. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#onViewportLeave) * @eventType viewportLeave */ onViewportLeave(handler: EventHandler): Element; /** * Note: This standard element function is not relevant for Chatbox. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#scrollTo) */ scrollTo(): Promise; /** * Sends a chat message from a site visitor. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#sendMessage) */ sendMessage(messageInfo: Chatbox.MessageInfo): Promise; } /** * Checkboxes are used for a single binary choice. * [Read more](https://www.wix.com/corvid/reference/$w.Checkbox.html#) */ interface Checkbox extends LabelMixin, FormElement, DisabledMixin, HiddenCollapsedMixin, FocusMixin, ClickableMixin, StyleMixin, RequiredMixin, CheckedMixin { /** * Sets or gets whether a checkbox is checked. * [Read more](https://www.wix.com/corvid/reference/$w.Checkbox.html#checked) */ checked: boolean; /** * Gets or sets if a checkbox is required to be checked. * [Read more](https://www.wix.com/corvid/reference/$w.Checkbox.html#required) */ required: boolean; /** * Gets an object containing information about the checkbox's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Checkbox.html#style) */ readonly style: Style; /** * Sets or gets a checkbox's value. * [Read more](https://www.wix.com/corvid/reference/$w.Checkbox.html#value) */ value: string; } /** * Checkbox groups are used for selecting any number of the given * options. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#) */ interface CheckboxGroup extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, ClickableMixin, StyleMixin, RequiredMixin { /** * Sets or gets the options of a checkbox group. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#options) */ options: CheckboxGroup.Option[]; /** * Sets or gets the indices of the selected options. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#selectedIndices) */ selectedIndices: number[]; /** * Gets an object containing information about the checkbox group's styles. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#style) */ readonly style: Style; /** * Sets or gets the value of the selected options. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#value) */ value: string[]; } /** * Provides functionality for elements that can be checked. * [Read more](https://www.wix.com/corvid/reference/$w.CheckedMixin.html#) */ interface CheckedMixin { /** * Sets or gets whether the element is checked or not. * [Read more](https://www.wix.com/corvid/reference/$w.CheckedMixin.html#checked) */ checked: boolean; } /** * Provides functionality for elements that can be clicked. * [Read more](https://www.wix.com/corvid/reference/$w.ClickableMixin.html#) */ interface ClickableMixin { /** * Adds an event handler that runs when the element is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.ClickableMixin.html#onClick) * @eventType click */ onClick(handler: MouseEventHandler): Element; /** * Adds an event handler that runs when the element is double-clicked. * [Read more](https://www.wix.com/corvid/reference/$w.ClickableMixin.html#onDblClick) * @eventType dblClick */ onDblClick(handler: MouseEventHandler): Element; } /** * Provides functionality for elements that can be collapsed. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsedMixin.html#) */ interface CollapsedMixin { /** * Indicates if the element is collapsed or expanded. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsedMixin.html#collapsed) */ readonly collapsed: boolean; /** * Collapses the element and sets its `collapsed` property to `true`. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsedMixin.html#collapse) */ collapse(): Promise; /** * Expands the element and sets its `collapsed` property to `false`. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsedMixin.html#expand) */ expand(): Promise; } /** * A text element for managing large amounts of text. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#) */ interface CollapsibleText extends Element, HiddenCollapsedMixin, ClickableMixin { /** * Indicates whether the ellipsis functionality is turned on. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#ellipsisEnabled) */ readonly ellipsisEnabled: boolean; /** * Sets or gets the maximum number of lines of introductory text in the collapsible text. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#maxLines) */ maxLines: number; /** * Sets or gets the data object of the read more action for the collapsible text. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#readMoreActionData) */ readMoreActionData: CollapsibleText.ExpandOnCurrentPage | CollapsibleText.LinkToContent; /** * Sets or gets the type of read more action for the collapsible text. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#readMoreActionType) */ readMoreActionType: string; /** * Sets or gets the plain-text content of a collapsible text element. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#text) */ text: string; /** * Adds a read more button that links to the remaining text when clicked. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#addReadMoreButton) */ addReadMoreButton(buttonText?: string): void; /** * Collapses the collapsible text and displays the introductory text with an ellipsis. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#collapseText) */ collapseText(): void; /** * Turns off the ellipsis functionality. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#disableEllipsis) */ disableEllipsis(): void; /** * Turns on the ellipsis functionality. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#enableEllipsis) */ enableEllipsis(): void; /** * Expands the collapsible text, displays the full text, and hides the ellipsis. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#expandText) */ expandText(): void; /** * Removes the read more button that links to the remaining text when clicked. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#removeReadMoreButton) */ removeReadMoreButton(): void; } /** * A `Column` is a component part of a `ColumnStrip`. * [Read more](https://www.wix.com/corvid/reference/$w.Column.html#) */ interface Column extends Element, HiddenCollapsedMixin, Background, ClickableMixin, ContainableMixin { } /** * A `ColumnStrip` is a strip of `Column` elements. * [Read more](https://www.wix.com/corvid/reference/$w.ColumnStrip.html#) */ interface ColumnStrip extends Element, Background, HiddenCollapsedMixin, ClickableMixin, ContainableMixin { /** * Gets an object containing information about the column strip's background, such as its image or video source. * [Read more](https://www.wix.com/corvid/reference/$w.ColumnStrip.html#background) */ readonly background: Document.BackgroundOptions; /** * Gets a list of all the columns contained in the column strip. * [Read more](https://www.wix.com/corvid/reference/$w.ColumnStrip.html#columns) */ readonly columns: Column[]; } /** * Provides functionality for elements that can contain other elements. * [Read more](https://www.wix.com/corvid/reference/$w.ContainableMixin.html#) */ interface ContainableMixin { /** * Gets an array of the elements that are contained within the element. * [Read more](https://www.wix.com/corvid/reference/$w.ContainableMixin.html#children) */ readonly children: (Element & AnyProperties)[]; } /** * A container for Repeater items. * [Read more](https://www.wix.com/corvid/reference/$w.Container.html#) */ interface Container extends Element, HiddenCollapsedMixin, Background, ClickableMixin, ContainableMixin { } /** * An API for rendering a custom element. * [Read more](https://www.wix.com/corvid/reference/$w.CustomElement.html#) */ interface CustomElement extends Element, HiddenCollapsedMixin { /** * Sets or gets the SEO markup to be rendered for search engine bots. * [Read more](https://www.wix.com/corvid/reference/$w.CustomElement.html#seoMarkup) */ seoMarkup: string; /** * Registers a callback function in Velo for an event triggered from the custom element. * [Read more](https://www.wix.com/corvid/reference/$w.CustomElement.html#on) */ on(eventName: string, callBackFunction: Function): void; /** * Sets an HTML attribute on the custom element's DOM node. * [Read more](https://www.wix.com/corvid/reference/$w.CustomElement.html#setAttribute) */ setAttribute(key: string, value: string | boolean | number): void; } /** * A `DatePicker` is used for entering dates. It lets site visitors populate a * date field by picking a date using a calendar popup. * You can enable and disable dates, date ranges, and days of the week on your date picker. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#) */ interface DatePicker extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, ReadOnlyMixin, ClickableMixin, RequiredMixin { /** * Sets or gets the format of the date displayed in the date picker. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#dateFormat) */ dateFormat: string; /** * Sets or gets ranges of dates that a site visitor can't select. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#disabledDateRanges) */ disabledDateRanges: DatePicker.DateRange[]; /** * **Deprecated.** This property will continue to work, but a newer version is available at [`disabledDateRanges`](https://www.wix.com/velo/reference/$w/datepicker/disableddateranges). * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#disabledDates) */ disabledDates: Date[]; /** * Sets or gets the days of the week that a site visitor can't select. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#disabledDaysOfWeek) */ disabledDaysOfWeek: number[]; /** * Sets or gets ranges of dates that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#enabledDateRanges) */ enabledDateRanges: DatePicker.DateRange[]; /** * Sets or gets the latest date that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#maxDate) */ maxDate: Date; /** * Sets or gets the earliest date that a site visitor can select. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#minDate) */ minDate: Date; /** * Sets or gets the date picker's timezone. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#timeZone) */ timeZone: string; /** * Sets or gets the value of the date picker. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#value) */ value: Date; } /** * Provides functionality for elements that can be disabled. * [Read more](https://www.wix.com/corvid/reference/$w.DisabledMixin.html#) */ interface DisabledMixin { /** * Indicates if the element is enabled or disabled. * [Read more](https://www.wix.com/corvid/reference/$w.DisabledMixin.html#enabled) */ readonly enabled: boolean; /** * Disables the element and sets its `enabled` property to `false`. * [Read more](https://www.wix.com/corvid/reference/$w.DisabledMixin.html#disable) */ disable(): Promise; /** * Enables the element and sets its `enabled` property to `true`. * [Read more](https://www.wix.com/corvid/reference/$w.DisabledMixin.html#enable) */ enable(): Promise; } /** * A complete web page, which consists of a Header, Page, and Footer. * [Read more](https://www.wix.com/corvid/reference/$w.Document.html#) */ interface Document { /** * Gets an object containing information about the document's background, such as its image or video source. * [Read more](https://www.wix.com/corvid/reference/$w.Document.html#background) */ readonly background: Document.BackgroundOptions; /** * Gets the document's Header, Page, and Footer. * [Read more](https://www.wix.com/corvid/reference/$w.Document.html#children) */ readonly children: Node[]; /** * Gets the document's type. * [Read more](https://www.wix.com/corvid/reference/$w.Document.html#type) */ readonly type: string; } /** * Dropdowns are used for selecting one of a number of options. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#) */ interface Dropdown extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, ClickableMixin, StyleMixin, RequiredMixin { /** * Sets or gets a dropdown's label. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#label) */ label: string; /** * Sets or gets the options in a dropdown. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#options) */ options: Dropdown.Option[]; /** * Sets or gets the dropdown's placeholder text. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#placeholder) */ placeholder: string; /** * Sets or gets the index of the selected option. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#selectedIndex) */ selectedIndex: number; /** * Gets an object containing information about the dropdown's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#style) */ readonly style: Style; /** * Sets or gets an element's value. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#value) */ value: string; /** * Adds an event handler that runs when an input element's value * is changed. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#onChange) */ onChange(handler: EventHandler): Dropdown; } /** * Use effect options to customize an effect when [showing]($w.HiddenMixin.html#show) or [hiding]($w.HiddenMixin.html#hide) an element. * Effect options include arcs, bouncing, fading, flipping, floating, flying in/out, folding, gliding and more. * [Read more](https://www.wix.com/corvid/reference/$w.EffectOptions.html#) */ interface EffectOptions { } /** * Provides basic functionality for elements. * [Read more](https://www.wix.com/corvid/reference/$w.Element.html#) */ interface Element extends Node, ViewportMixin { /** * Indicates if an element is currently in the [DOM structure](https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Introduction). * [Read more](https://www.wix.com/corvid/reference/$w.Element.html#rendered) */ readonly rendered: boolean; /** * Adds an event handler that runs when the mouse pointer is moved * onto the element. * * You can also [define an event handler using the Properties and Events panel](https://support.wix.com/en/article/velo-reacting-to-user-actions-using-events). * [Read more](https://www.wix.com/corvid/reference/$w.Element.html#onMouseIn) * @eventType mouseenter */ onMouseIn(handler: MouseEventHandler): Element; /** * Adds an event handler that runs when the mouse pointer is moved * off of the element. * * You can also [define an event handler using the Properties and Events panel](https://support.wix.com/en/article/velo-reacting-to-user-actions-using-events). * [Read more](https://www.wix.com/corvid/reference/$w.Element.html#onMouseOut) * @eventType mouseleave */ onMouseOut(handler: MouseEventHandler): Element; } /** * Events are fired when certain actions occur to elements. * [Read more](https://www.wix.com/corvid/reference/$w.Event.html#) */ interface Event { /** * Gets the context in which an event was fired. * [Read more](https://www.wix.com/corvid/reference/$w.Event.html#context) */ readonly context: Event.EventContext; /** * Gets the element that the event was fired on. * [Read more](https://www.wix.com/corvid/reference/$w.Event.html#target) */ readonly target: Element & AnyProperties; /** * Gets the type of event that was fired. * [Read more](https://www.wix.com/corvid/reference/$w.Event.html#type) */ readonly type: string; } /** * Provides functionality for elements that can set and lose focus. * [Read more](https://www.wix.com/corvid/reference/$w.FocusMixin.html#) */ interface FocusMixin { /** * Removes focus from the element. * [Read more](https://www.wix.com/corvid/reference/$w.FocusMixin.html#blur) */ blur(): void; /** * Places focus on the element. * [Read more](https://www.wix.com/corvid/reference/$w.FocusMixin.html#focus) */ focus(): void; /** * Adds an event handler that runs when the element loses focus. * [Read more](https://www.wix.com/corvid/reference/$w.FocusMixin.html#onBlur) * @eventType blur */ onBlur(handler: EventHandler): Element; /** * Adds an event handler that runs when the element receives focus. * [Read more](https://www.wix.com/corvid/reference/$w.FocusMixin.html#onFocus) * @eventType focus */ onFocus(handler: EventHandler): Element; } /** * The footer is the area of your site that appears at the bottom and * throughout all of your pages. * [Read more](https://www.wix.com/corvid/reference/$w.Footer.html#) */ interface Footer extends Element, ClickableMixin, ContainableMixin, StyleMixin { /** * Gets an object containing information about the footer's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Footer.html#style) */ readonly style: Style; } /** * A container for the input elements and buttons in a `WixForms` `$w` element. * [Read more](https://www.wix.com/corvid/reference/$w.Form.html#) */ interface Form extends Element, ClickableMixin, ContainableMixin, HiddenCollapsedMixin, StyleMixin { /** * Gets an object containing information about the styles of the form. * [Read more](https://www.wix.com/corvid/reference/$w.Form.html#style) */ readonly style: Style; } /** * Provides functionality related to user input elements. * [Read more](https://www.wix.com/corvid/reference/$w.FormElement.html#) */ interface FormElement extends Element, ValidatableMixin, ValueMixin { } /** * A gallery for displaying multiple items. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#) */ interface Gallery extends Element, HiddenCollapsedMixin, PlayableMixin { /** * Sets or gets the action that occurs when an item in the gallery is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#clickAction) */ clickAction: string; /** * Gets the index of the gallery's current item. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#currentIndex) */ readonly currentIndex: number; /** * Gets an object containing information about the current item. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#currentItem) */ readonly currentItem: Gallery.ImageItem | Gallery.VideoItem; /** * Gets an object containing information about the gallery's capabilities. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#galleryCapabilities) */ readonly galleryCapabilities: Gallery.GalleryCapabilities; /** * Sets or gets the items in a gallery. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#items) */ items: Gallery.ImageItem[] | Gallery.VideoItem[]; /** * Determines if a gallery's navigation arrows are shown. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#showNavigationButtons) */ showNavigationButtons: boolean; /** * Adds an event handler that runs when a gallery's current item changes. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#onCurrentItemChanged) * @eventType imageChanged */ onCurrentItemChanged(handler: GalleryItemChangedEventHandler): Gallery; /** * Adds an event handler that runs when an item in a gallery is * clicked. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#onItemClicked) * @eventType itemClicked */ onItemClicked(handler: GalleryItemClickedEventHandler): Gallery; } /** * Event that is fired when a gallery moves to a new image. * [Read more](https://www.wix.com/corvid/reference/$w.GalleryItemChangedEvent.html#) */ interface GalleryItemChangedEvent extends Event { /** * Gets the gallery item. * [Read more](https://www.wix.com/corvid/reference/$w.GalleryItemChangedEvent.html#item) */ readonly item: Gallery.ImageItem | Gallery.VideoItem; /** * Gets the gallery item's index. * [Read more](https://www.wix.com/corvid/reference/$w.GalleryItemChangedEvent.html#itemIndex) */ readonly itemIndex: number; } /** * Event that is fired when an image in a gallery is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.GalleryItemClickedEvent.html#) */ interface GalleryItemClickedEvent extends GalleryItemChangedEvent, Event { } /** * A [Google Map element](https://www.wix.com/support/html5/article/adding-google-maps) * that allows you to display a given location. * [Read more](https://www.wix.com/corvid/reference/$w.GoogleMap.html#) */ interface GoogleMap extends Element, HiddenCollapsedMixin { /** * Sets or gets the location information of a map's marked location. * [Read more](https://www.wix.com/corvid/reference/$w.GoogleMap.html#location) */ location: GoogleMap.MapLocation; } /** * The header is the area of your site that appears at the top and * throughout all of your pages. * [Read more](https://www.wix.com/corvid/reference/$w.Header.html#) */ interface Header extends Element, ClickableMixin, ContainableMixin, StyleMixin { /** * Gets an object containing information about the header's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Header.html#style) */ readonly style: Style; } /** * Provides functionality for all elements that can be hidden or collapsed. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenCollapsedElement.html#) */ interface HiddenCollapsedElement extends Element, HiddenCollapsedMixin { } /** * Provides functionality for all elements that can be hidden or collapsed. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenCollapsedMixin.html#) */ interface HiddenCollapsedMixin extends HiddenMixin, CollapsedMixin { } /** * Provides functionality for elements that can be hidden. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenMixin.html#) */ interface HiddenMixin { /** * Indicates if the element is visible or hidden. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenMixin.html#hidden) */ readonly hidden: boolean; /** * Indicates if the element is actually visible. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenMixin.html#isVisible) */ readonly isVisible: boolean; /** * Hides the element and sets its `hidden` property * to `true`, using an effect if specified. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenMixin.html#hide) */ hide(effectName?: string, effectOptions?: EffectOptions.ArcEffectOptions | EffectOptions.BounceEffectOptions | EffectOptions.FadeEffectOptions | EffectOptions.FlipEffectOptions | EffectOptions.FloatEffectOptions | EffectOptions.FlyEffectOptions | EffectOptions.FoldEffectOptions | EffectOptions.GlideEffectOptions | EffectOptions.PuffEffectOptions | EffectOptions.RollEffectOptions | EffectOptions.SlideEffectOptions | EffectOptions.SpinEffectOptions | EffectOptions.TurnEffectOptions | EffectOptions.ZoomEffectOptions): Promise; /** * Shows the element and sets its `hidden` property * to `false`, using an effect if specified. * [Read more](https://www.wix.com/corvid/reference/$w.HiddenMixin.html#show) */ show(effectName?: string, effectOptions?: EffectOptions.ArcEffectOptions | EffectOptions.BounceEffectOptions | EffectOptions.FadeEffectOptions | EffectOptions.FlipEffectOptions | EffectOptions.FloatEffectOptions | EffectOptions.FlyEffectOptions | EffectOptions.FoldEffectOptions | EffectOptions.GlideEffectOptions | EffectOptions.PuffEffectOptions | EffectOptions.RollEffectOptions | EffectOptions.SlideEffectOptions | EffectOptions.SpinEffectOptions | EffectOptions.TurnEffectOptions | EffectOptions.ZoomEffectOptions): Promise; } /** * A container for internal or external HTML code. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#) */ interface HtmlComponent extends IFrame { /** * Sets or gets whether the HTML Component displays scrollbars. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#scrolling) */ scrolling: string; /** * Sets or gets the URL of the HTML Component's code. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#src) */ src: string; /** * Allows the HTML Component to be put into full screen mode. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#allowFullScreen) */ allowFullScreen(): HtmlComponent; /** * Adds an event handler that runs when the HTML Component * sends a message. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#onMessage) * @eventType message */ onMessage(handler: HtmlComponentMessageEventHandler): HtmlComponent; /** * Sends a message to the HTML Component. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponent.html#postMessage) */ postMessage(message: string | number | boolean | any | any[]): void; } /** * Event that is fired when the code in an HtmlComponent sends a message. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponentMessageEvent.html#) */ interface HtmlComponentMessageEvent extends Event { /** * Gets the event data. * [Read more](https://www.wix.com/corvid/reference/$w.HtmlComponentMessageEvent.html#data) */ readonly data: any; } /** * Event that is fired when a user hovers over a star on a ratings input component. * [Read more](https://www.wix.com/corvid/reference/$w.IconMouseInEvent.html#) */ interface IconMouseInEvent extends Event { /** * Gets the display label that corresponds to the icon that the mouse entered. * [Read more](https://www.wix.com/corvid/reference/$w.IconMouseInEvent.html#label) */ readonly label: string; /** * Gets the value (1-5) that corresponds to the icon that the mouse entered. * [Read more](https://www.wix.com/corvid/reference/$w.IconMouseInEvent.html#value) */ readonly value: number; } /** * Provides functionality for iframe-based elements, such as `HtmlComponent`. * [Read more](https://www.wix.com/corvid/reference/$w.IFrame.html#) */ interface IFrame extends Element, HiddenCollapsedMixin { } /** * Images are images stored in the [Media Manager](https://support.wix.com/en/article/about-the-media-manager) * or retrieved from an external web location. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#) */ interface Image extends Element, HiddenCollapsedMixin, LinkableMixin, ClickableMixin { /** * Sets or gets an image's alt text. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#alt) */ alt: string; /** * Sets or gets the action that occurs when an image is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#clickAction) */ clickAction: string; /** * Sets or gets how an image is placed inside an image element. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#fitMode) */ fitMode: string; /** * Sets or gets the file location of the image. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#src) */ src: string; /** * Sets or gets an image's tooltip. * [Read more](https://www.wix.com/corvid/reference/$w.Image.html#tooltip) */ tooltip: string; } /** * Event that is fired when the keyboard is pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#) */ interface KeyboardEvent extends Event { /** * Indicates if the Option key on a Mac or Alt key on a PC was pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#altKey) */ readonly altKey: boolean; /** * Indicates if the Control (Ctrl) key was pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#ctrlKey) */ readonly ctrlKey: boolean; /** * Gets a string representation of the key that was pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#key) */ readonly key: string; /** * Indicates if the ⌘ Command key on a Mac or ⊞ Windows key on a PC was pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#metaKey) */ readonly metaKey: boolean; /** * Indicates if the Shift key was pressed. * [Read more](https://www.wix.com/corvid/reference/$w.KeyboardEvent.html#shiftKey) */ readonly shiftKey: boolean; } /** * Provides functionality for elements that have a label. * [Read more](https://www.wix.com/corvid/reference/$w.LabelMixin.html#) */ interface LabelMixin { /** * Sets or gets the label of an element. * [Read more](https://www.wix.com/corvid/reference/$w.LabelMixin.html#label) */ label: string; } /** * Provides functionality for elements that can act as links. * [Read more](https://www.wix.com/corvid/reference/$w.LinkableMixin.html#) */ interface LinkableMixin { /** * Sets or gets the element's link. * [Read more](https://www.wix.com/corvid/reference/$w.LinkableMixin.html#link) */ link: string; /** * Sets or gets the target of the element's link. * [Read more](https://www.wix.com/corvid/reference/$w.LinkableMixin.html#target) */ target: string; } /** * The Lottie element is used for adding and customizing a Lottie animation. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#) */ interface Lottie extends Element, FocusMixin, HiddenCollapsedMixin, ClickableMixin { /** * Sets or gets a Lottie animation's alt text. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#alt) */ alt: string; /** * Sets or gets whether the Lottie animation plays in a loop. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#loop) */ loop: boolean; /** * Sets or gets the Lottie animation's playback speed. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#speed) */ speed: number; /** * Sets or gets the source of the Lottie animation. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#src) */ src: string; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#pause) */ pause(): void; /** * Begins or resumes playback. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#play) */ play(): void; /** * Stops the playback. * [Read more](https://www.wix.com/corvid/reference/$w.Lottie.html#stop) */ stop(): void; } /** * A container for media items. * [Read more](https://www.wix.com/corvid/reference/$w.MediaBox.html#) */ interface MediaBox extends Element, HiddenCollapsedMixin, Background { } /** * Menus are used for navigating between site pages. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#) */ interface Menu extends Element, HiddenCollapsedMixin { /** * Sets or gets menu items. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#menuItems) */ menuItems: Menu.MenuItem[]; /** * Adds an event handler that runs when a user clicks a menu item. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#onItemClick) * @eventType ItemMouseClick */ onItemClick(handler: MenuItemMouseEventHandler): Menu.MenuItem; /** * Adds an event handler that runs when a user double clicks a menu item. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#onItemDblClick) * @eventType ItemMouseDblClick */ onItemDblClick(handler: MenuItemMouseEventHandler): Menu.MenuItem; /** * Adds an event handler that runs when a user hovers over a menu item. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#onItemMouseIn) * @eventType ItemMouseIn */ onItemMouseIn(handler: MenuItemMouseEventHandler): Menu.MenuItem; /** * Adds an event handler that runs when a user stops hovering over a menu item. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#onItemMouseOut) * @eventType ItemMouseOut */ onItemMouseOut(handler: MenuItemMouseEventHandler): Menu.MenuItem; } /** * A menu container holds the elements in a * mobile menu that are used for navigating between mobile site pages. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#) */ interface MenuContainer extends Element { /** * Sets or gets mobile menu items. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#menuItems) */ menuItems: MenuContainer.MenuItem[]; /** * Closes a mobile menu. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#close) */ close(): Promise; /** * Adds an event handler that runs when a user clicks a mobile menu item. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#onItemClick) * @eventType ItemMouseClick */ onItemClick(handler: MenuItemMouseEventHandler): Menu.MenuItem; /** * Adds an event handler that runs when a user double clicks a mobile menu item. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#onItemDblClick) * @eventType ItemMouseDblClick */ onItemDblClick(handler: MenuItemMouseEventHandler): Menu.MenuItem; /** * Adds an event handler that runs when a user hovers over a mobile menu item. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#onItemMouseIn) * @eventType ItemMouseIn */ onItemMouseIn(handler: MenuItemMouseEventHandler): MenuContainer.MenuItem; /** * Adds an event handler that runs when a user stops hovering over a mobile menu item. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#onItemMouseOut) * @eventType ItemMouseOut */ onItemMouseOut(handler: MenuItemMouseEventHandler): MenuContainer.MenuItem; /** * Opens a mobile menu. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#open) */ open(): Promise; } /** * Event that is fired when the mouse is used on a menu item. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#) */ interface MenuItemMouseEvent extends Event { /** * Gets the distance in pixels between the mouse pointer and the * left edge of the browser's viewable area. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#clientX) */ readonly clientX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the browser's viewable area. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#clientY) */ readonly clientY: number; /** * The menu item on which the event occurred. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#item) */ readonly item: Menu.MenuItem; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the element that triggered this event. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#offsetX) */ readonly offsetX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the element that triggered this event. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#offsetY) */ readonly offsetY: number; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the page. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#pageX) */ readonly pageX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the page. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#pageY) */ readonly pageY: number; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the screen or screens. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#screenX) */ readonly screenX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the screen or screens. * [Read more](https://www.wix.com/corvid/reference/$w.MenuItemMouseEvent.html#screenY) */ readonly screenY: number; } /** * Event that is fired when the mouse is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#) */ interface MouseEvent extends Event { /** * Gets the distance in pixels between the mouse pointer and the * left edge of the browser's viewable area. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#clientX) */ readonly clientX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the browser's viewable area. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#clientY) */ readonly clientY: number; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the element that triggered this event. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#offsetX) */ readonly offsetX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the element that triggered this event. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#offsetY) */ readonly offsetY: number; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the page. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#pageX) */ readonly pageX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the page. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#pageY) */ readonly pageY: number; /** * Gets the distance in pixels between the mouse pointer and the * left edge of the screen or screens. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#screenX) */ readonly screenX: number; /** * Gets the distance in pixels between the mouse pointer and the * top edge of the screen or screens. * [Read more](https://www.wix.com/corvid/reference/$w.MouseEvent.html#screenY) */ readonly screenY: number; } /** * Multi-state boxes are containers for states. * [Read more](https://www.wix.com/corvid/reference/$w.MultiStateBox.html#) */ interface MultiStateBox extends Element, HiddenCollapsedMixin, ClickableMixin, ContainableMixin { /** * Gets the multi-state box's current state. * [Read more](https://www.wix.com/corvid/reference/$w.MultiStateBox.html#currentState) */ readonly currentState: State; /** * Gets a list of all the states contained in the multi-state box. * [Read more](https://www.wix.com/corvid/reference/$w.MultiStateBox.html#states) */ readonly states: State[]; /** * Change the multi-state box's current state to a specific state. * [Read more](https://www.wix.com/corvid/reference/$w.MultiStateBox.html#changeState) */ changeState(stateReference: string | State): Promise; /** * Adds an event handler that runs when the multi-state box moves to a new state. * [Read more](https://www.wix.com/corvid/reference/$w.MultiStateBox.html#onChange) * @eventType change */ onChange(eventHandler: EventHandler): MultiStateBox; } /** * Provides basic functionality for all Wix objects, including objects * that are not [elements]($w.Element.html). * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#) */ interface Node { /** * Indicates if an element appears on all pages or only on the current page. * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#global) */ readonly global: boolean; /** * Gets the element's ID. * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#id) */ readonly id: string; /** * Gets the element's parent element. * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#parent) */ readonly parent: Node; /** * Gets the element's type. * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#type) */ readonly type: string; /** * Scrolls the page to the top of the element using an animation. * [Read more](https://www.wix.com/corvid/reference/$w.Node.html#scrollTo) */ scrollTo(): Promise; } /** * A page is a web page that can contain other elements. * [Read more](https://www.wix.com/corvid/reference/$w.Page.html#) */ interface Page extends Element, ClickableMixin, ContainableMixin { /** * Gets the page's [SEO description](https://support.wix.com/en/article/adding-seo-page-titles-and-descriptions-meta-tags). * [Read more](https://www.wix.com/corvid/reference/$w.Page.html#description) */ readonly description: string; /** * Gets the page's keywords. * [Read more](https://www.wix.com/corvid/reference/$w.Page.html#keywords) */ readonly keywords: string[]; /** * Gets the page's title. * [Read more](https://www.wix.com/corvid/reference/$w.Page.html#title) */ readonly title: string; /** * Indicates if the page is included in the site's menu. * [Read more](https://www.wix.com/corvid/reference/$w.Page.html#visibleInMenu) */ readonly visibleInMenu: boolean; } /** * An element for working with paging. * [Read more](https://www.wix.com/corvid/reference/$w.Pagination.html#) */ interface Pagination extends Element, DisabledMixin, HiddenCollapsedMixin, ClickableMixin, ViewportMixin { /** * Sets or gets the current page. * [Read more](https://www.wix.com/corvid/reference/$w.Pagination.html#currentPage) */ currentPage: number; /** * Sets or gets the total number of pages shown in a pagination bar. * [Read more](https://www.wix.com/corvid/reference/$w.Pagination.html#totalPages) */ totalPages: number; /** * Adds an event handler that runs when the pagination bar * is changed. * [Read more](https://www.wix.com/corvid/reference/$w.Pagination.html#onChange) * @eventType Change */ onChange(handler: EventHandler): Pagination; } /** * Provides functionality for elements that can be played. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#) */ interface PlayableMixin { /** * Indicates if the element is currently playing. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#isPlaying) */ readonly isPlaying: boolean; /** * Moves to the next item. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#next) */ next(): Promise; /** * Adds an event handler that runs when playback is paused. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#onPause) * @eventType autoplayOff */ onPause(handler: EventHandler): Gallery & Slideshow; /** * Adds an event handler that runs when playback is started or restarted. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#onPlay) * @eventType autoplayOn */ onPlay(handler: EventHandler): Gallery & Slideshow; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#pause) */ pause(): void; /** * Begins or resumes playback. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#play) */ play(): void; /** * Moves to the previous image or slide. * [Read more](https://www.wix.com/corvid/reference/$w.PlayableMixin.html#previous) */ previous(): Promise; } /** * A post page for a specific blog post. * [Read more](https://www.wix.com/corvid/reference/$w.PostPage.html#) */ interface PostPage extends Element, HiddenCollapsedMixin { /** * Gets the all the information associated with the current blog post. * [Read more](https://www.wix.com/corvid/reference/$w.PostPage.html#getPost) */ getPost(): Promise; } /** * A store page for a specific product. * [Read more](https://www.wix.com/corvid/reference/$w.ProductPage.html#) */ interface ProductPage extends Element, HiddenCollapsedMixin { /** * Gets all the information associated with the current product. * [Read more](https://www.wix.com/corvid/reference/$w.ProductPage.html#getProduct) */ getProduct(): Promise; } /** * An element for displaying the status of an ongoing process. * [Read more](https://www.wix.com/corvid/reference/$w.ProgressBar.html#) */ interface ProgressBar extends Element, HiddenCollapsedMixin, StyleMixin { /** * Gets an object containing information about the progress bar's styles. * [Read more](https://www.wix.com/corvid/reference/$w.ProgressBar.html#style) */ readonly style: Style; /** * Sets or gets a progress bar's target value. * [Read more](https://www.wix.com/corvid/reference/$w.ProgressBar.html#targetValue) */ targetValue: number; /** * Sets or gets a progress bar's value. * [Read more](https://www.wix.com/corvid/reference/$w.ProgressBar.html#value) */ value: number; } /** * A [quick action bar](https://support.wix.com/en/article/adding-and-setting-up-the-quick-action-bar-on-your-mobile-site) * helps your visitors contact you instantly from their mobile devices. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#) */ interface QuickActionBar extends HiddenCollapsedMixin, StyleMixin { /** * Sets or gets a quick action bar's alignment. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#alignment) */ alignment: boolean; /** * Sets or gets a quick action bar's color scheme. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#colorScheme) */ colorScheme: string; /** * Sets or gets whether a quick action bar's color scheme is inverted. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#invertColorScheme) */ invertColorScheme: boolean; /** * Sets or gets whether a quick action bar's labels are shown. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#showLabels) */ showLabels: boolean; /** * Adds an event handler that runs when an item in a quick action bar is * clicked. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBar.html#onItemClicked) * @eventType itemClicked */ onItemClicked(handler: QuickActionBarItemClickedEventHandler): QuickActionBar; } /** * Event that is fired when a quick action bar item is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBarItemClickedEvent.html#) */ interface QuickActionBarItemClickedEvent extends Event { /** * Gets the gallery item. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBarItemClickedEvent.html#item) */ readonly item: QuickActionBarItemClickedEvent.QuickActionBarItem; /** * Gets the quick action bar item's index. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBarItemClickedEvent.html#itemIndex) */ readonly itemIndex: number; } /** * Radio button groups are used for selecting one of a number of * options. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#) */ interface RadioButtonGroup extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, ClickableMixin, StyleMixin, RequiredMixin { /** * Sets or gets the options in a radio button group. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#options) */ options: RadioButtonGroup.Option[]; /** * Sets or gets the index of the selected option. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#selectedIndex) */ selectedIndex: number; /** * Gets an object containing information about the radio button group's styles. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#style) */ readonly style: Style; /** * Sets or gets the value of the selected option. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#value) */ value: string; } /** * Range sliders allow site visitors to select a range of values within a given range. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#) */ interface RangeSlider extends Element, ValueMixin, DisabledMixin, HiddenCollapsedMixin, FocusMixin { /** * Sets or gets the label of a range slider. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#label) */ label: string; /** * Sets or gets the maximum value of a range slider. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#max) */ max: number; /** * Sets or gets the minimum value of a range slider. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#min) */ min: number; /** * Sets or gets the prefix of a range slider's value. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#prefix) */ prefix: string; /** * Sets or gets a range slider's type. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#sliderType) */ sliderType: string; /** * Sets or gets a range slider's step value. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#step) */ step: number; /** * Sets or gets a range slider's step type. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#stepType) */ stepType: string; /** * Sets or gets the suffix of a range slider's value. * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#suffix) */ suffix: string; /** * Sets or gets the value(s) of a range slider's handle(s). * [Read more](https://www.wix.com/corvid/reference/$w.RangeSlider.html#value) */ value: number | number[]; } /** * A ratings display element allows you to display a value to your users * using icons. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsDisplay.html#) */ interface RatingsDisplay extends Element, HiddenCollapsedMixin, ClickableMixin { /** * Sets or gets the displayed number of ratings. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsDisplay.html#numRatings) */ numRatings: number; /** * Sets or gets the displayed rating. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsDisplay.html#rating) */ rating: number; } /** * A ratings input element allows you to capture a value from your users * using icons. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsInput.html#) */ interface RatingsInput extends FormElement, DisabledMixin, RequiredMixin, HiddenCollapsedMixin, FocusMixin, ClickableMixin, ViewportMixin { /** * Sets or gets the rating value. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsInput.html#value) */ value: number; /** * Sets the function that runs when a user's mouse enters one of the rating icons. * [Read more](https://www.wix.com/corvid/reference/$w.RatingsInput.html#onIconMouseIn) * @eventType IconMouseIn */ onIconMouseIn(handler: IconMouseInEventHandler): RatingsInput; } /** * Provides functionality for input elements that support readonly mode. * [Read more](https://www.wix.com/corvid/reference/$w.ReadOnlyMixin.html#) */ interface ReadOnlyMixin { /** * Sets or gets if a user can modify the value of the input element. * [Read more](https://www.wix.com/corvid/reference/$w.ReadOnlyMixin.html#readOnly) */ readOnly: boolean; } /** * A repeating layout. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#) */ interface Repeater extends Element, HiddenCollapsedMixin { /** * Sets or gets the repeater data. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#data) */ data: any[]; /** * Runs a function for each repeated item. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#forEachItem) */ forEachItem(callback: ForItemCallback): void; /** * Runs a function for each repeated item with the given IDs. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#forItems) */ forItems(itemIds: string[], callback: ForItemCallback): void; /** * Sets the function that runs when a new repeated item is created. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#onItemReady) * @eventType itemReady */ onItemReady(handler: ItemReadyEventHandler): Repeater; /** * Sets the function that runs when a repeated item is removed. * [Read more](https://www.wix.com/corvid/reference/$w.Repeater.html#onItemRemoved) * @eventType itemRemoved */ onItemRemoved(handler: ItemRemovedEventHandler): Repeater; } /** * Provides functionality for input elements that can be required to have a value. * [Read more](https://www.wix.com/corvid/reference/$w.RequiredMixin.html#) */ interface RequiredMixin { /** * Sets or gets whether an input element is required to have a value. * [Read more](https://www.wix.com/corvid/reference/$w.RequiredMixin.html#required) */ required: boolean; } /** * An input element for entering information in rich text format. * [Read more](https://www.wix.com/corvid/reference/$w.RichTextBox.html#) */ interface RichTextBox extends FormElement, DisabledMixin, TextInputMixin, HiddenCollapsedMixin, FocusMixin, ReadOnlyMixin, ClickableMixin, RequiredMixin { /** * **This standard element function is not supported for RichTextBox.** * [Read more](https://www.wix.com/corvid/reference/$w.RichTextBox.html#onInput) */ onInput(eventHandler: EventHandler): Element; } /** * A container component used to divide your page into meaningful segments. * [Read more](https://www.wix.com/corvid/reference/$w.Section.html#) */ interface Section extends Element, Background, HiddenCollapsedMixin, ClickableMixin, ContainableMixin { } /** * [Selection Tags](https://support.wix.com/en/article/adding-and-setting-up-selection-tags) are used for selecting one or more options. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#) */ interface SelectionTags extends FormElement, HiddenCollapsedMixin, DisabledMixin, ClickableMixin, StyleMixin, RequiredMixin, ValidatableMixin { /** * Sets or gets a list of items which will be rendered as tags. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#options) */ options: SelectionTags.Option[]; /** * Sets or gets the indices of the selected options. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#selectedIndices) */ selectedIndices: number[]; /** * Gets an object containing information about the selection tags' styles. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#style) */ readonly style: Style; /** * Sets or gets the values of the selected options. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#value) */ value: string[]; } /** * `SignatureInput` lets site visitors enter signatures. * [Read more](https://www.wix.com/corvid/reference/$w.SignatureInput.html#) */ interface SignatureInput extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, StyleMixin, RequiredMixin { /** * Gets an object containing information about the signature input element's styles. * [Read more](https://www.wix.com/corvid/reference/$w.SignatureInput.html#style) */ readonly style: Style; /** * Gets the value of a signature input. * [Read more](https://www.wix.com/corvid/reference/$w.SignatureInput.html#value) */ readonly value: string; /** * Clears the signature. * [Read more](https://www.wix.com/corvid/reference/$w.SignatureInput.html#clear) */ clear(): void; /** * Adds an event handler that runs when a signature input element's value * is changed by a site visitor. * [Read more](https://www.wix.com/corvid/reference/$w.SignatureInput.html#onChange) */ onChange(handler: EventHandler): SignatureInput; } /** * A `Slide` from a `Slideshow` that can contain other elements. * [Read more](https://www.wix.com/corvid/reference/$w.Slide.html#) */ interface Slide extends Element, Background, ContainableMixin { /** * Gets the slide's ID. * [Read more](https://www.wix.com/corvid/reference/$w.Slide.html#id) */ readonly id: string; /** * Gets the name of the slide. * [Read more](https://www.wix.com/corvid/reference/$w.Slide.html#name) */ readonly name: string; } /** * Sliders allow users to select a number from a given range. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#) */ interface Slider extends Element, ValueMixin, DisabledMixin, HiddenCollapsedMixin, FocusMixin { /** * Sets or gets the slider's maximum value. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#max) */ max: number; /** * Sets or gets the slider's minimum value. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#min) */ min: number; /** * Sets or gets a slider's step value. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#step) */ step: number; /** * Sets or gets a slider's step type. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#stepType) */ stepType: string; /** * Sets or gets the value of the slider. * [Read more](https://www.wix.com/corvid/reference/$w.Slider.html#value) */ value: number; } /** * Slideshows are playable containers for slides. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#) */ interface Slideshow extends Element, HiddenCollapsedMixin, PlayableMixin, ClickableMixin, ContainableMixin { /** * Gets the index of the slideshow's current slide. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#currentIndex) */ readonly currentIndex: number; /** * Gets the slideshow's current slide. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#currentSlide) */ readonly currentSlide: Slide; /** * Sets or gets whether a slideshow's navigation buttons are shown. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#showNavigationButtons) */ showNavigationButtons: boolean; /** * Set or returns whether a slideshow's slide buttons are shown. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#showSlideButtons) */ showSlideButtons: boolean; /** * Gets a list of all the slides contained in the slideshow. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#slides) */ readonly slides: Slide[]; /** * Change the slideshow's current slide to a specific slide or index. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#changeSlide) */ changeSlide(slideReference: number | Slide): Promise; /** * Adds an event handler that runs when the slideshow moves to a new slide. * [Read more](https://www.wix.com/corvid/reference/$w.Slideshow.html#onChange) * @eventType change */ onChange(eventHandler: EventHandler): Slideshow; } /** * A `State` from a [`MultiStateBox`]($w.MultiStateBox.html) that can contain other elements. * [Read more](https://www.wix.com/corvid/reference/$w.State.html#) */ interface State extends Element, Background, ContainableMixin { /** * Gets the state's ID. * [Read more](https://www.wix.com/corvid/reference/$w.State.html#id) */ readonly id: string; } /** * An object representing an element's styles. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#) */ interface Style { /** * Sets or gets the background color of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#backgroundColor) */ backgroundColor: string; /** * Sets or gets the border color of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#borderColor) */ borderColor: string; /** * Sets or gets the border radius of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#borderRadius) */ borderRadius: string; /** * Sets or gets the border width of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#borderWidth) */ borderWidth: string; /** * Sets or gets the text color of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#color) */ color: string; /** * Sets or gets the foreground color of an element. * [Read more](https://www.wix.com/corvid/reference/$w.Style.html#foregroundColor) */ foregroundColor: string; } /** * Provides functionality for elements that can be styled. * [Read more](https://www.wix.com/corvid/reference/$w.StyleMixin.html#) */ interface StyleMixin { /** * Gets an object containing information about the element's styles. * [Read more](https://www.wix.com/corvid/reference/$w.StyleMixin.html#style) */ readonly style: Style; } /** * Switches are used for a single binary choice. * [Read more](https://www.wix.com/corvid/reference/$w.Switch.html#) */ interface Switch extends Element, DisabledMixin, HiddenCollapsedMixin, FocusMixin, ClickableMixin, ValueMixin, CheckedMixin { /** * Sets or gets whether a switch is on or off. * [Read more](https://www.wix.com/corvid/reference/$w.Switch.html#checked) */ checked: boolean; /** * **Note: This standard element property is not relevant for Switch. Use [`checked`](#checked) instead.** * [Read more](https://www.wix.com/corvid/reference/$w.Switch.html#value) */ readonly value: string; } /** * A tab within a [tabs]($w.Tabs.html) element. * [Read more](https://www.wix.com/corvid/reference/$w.Tab.html#) */ interface Tab extends Element, Background, ContainableMixin { /** * Gets the tab's ID. * [Read more](https://www.wix.com/corvid/reference/$w.Tab.html#id) */ readonly id: string; /** * Sets or gets the tab's label. * [Read more](https://www.wix.com/corvid/reference/$w.Tab.html#label) */ label: string; /** * Gets the element's type. * [Read more](https://www.wix.com/corvid/reference/$w.Tab.html#type) */ readonly type: string; } /** * A table for displaying data. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#) */ interface Table extends Element, HiddenCollapsedMixin, ClickableMixin { /** * Sets or gets the defining properties of the columns in a table. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#columns) */ columns: Table.Column[]; /** * Sets the function that is called when a new page of table data is to be displayed. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#dataFetcher) */ dataFetcher: Function; /** * Sets or gets the table's pagination options. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#pagination) */ pagination: Table.PaginationOptions; /** * Sets or gets the table's row data. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#rows) */ rows: any[]; /** * Adds an event handler that runs when a table cell is selected. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#onCellSelect) * @eventType cellSelect */ onCellSelect(eventHandler: TableCellEventHandler): Table; /** * Adds an event handler that runs when the table's data is changed. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#onDataChange) * @eventType dataChange */ onDataChange(eventHandler: EventHandler): void; /** * Adds an event handler that runs when a table row is selected. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#onRowSelect) * @eventType rowSelect */ onRowSelect(eventHandler: TableRowEventHandler): Table; /** * Fetches the most current data and updates the table. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#refresh) */ refresh(): void; /** * Selects a table row by index. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#selectRow) */ selectRow(index: number): void; /** * Updates the row data of a single row at the specified index. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#updateRow) */ updateRow(index: number, rowData: any): void; } /** * Event that is fired when a table cell is selected. * [Read more](https://www.wix.com/corvid/reference/$w.TableCellEvent.html#) */ interface TableCellEvent extends Event { /** * Gets the column ID of the selected cell. * [Read more](https://www.wix.com/corvid/reference/$w.TableCellEvent.html#cellColumnId) */ readonly cellColumnId: string; /** * Gets the data from the selected cell. * [Read more](https://www.wix.com/corvid/reference/$w.TableCellEvent.html#cellData) */ readonly cellData: string; /** * Gets the row index of the selected cell. * [Read more](https://www.wix.com/corvid/reference/$w.TableCellEvent.html#cellRowIndex) */ readonly cellRowIndex: number; } /** * Event that is fired when a table row is selected. * [Read more](https://www.wix.com/corvid/reference/$w.TableRowEvent.html#) */ interface TableRowEvent extends Event { /** * Gets the data for the selected row. * [Read more](https://www.wix.com/corvid/reference/$w.TableRowEvent.html#rowData) */ readonly rowData: any; /** * Gets the index of the selected row. * [Read more](https://www.wix.com/corvid/reference/$w.TableRowEvent.html#rowIndex) */ readonly rowIndex: number; } /** * A container that holds multiple [tab]($w.Tab.html) elements, displaying one at a time. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#) */ interface Tabs extends Element, HiddenCollapsedMixin, ClickableMixin, ContainableMixin { /** * Gets the tab currently displayed in the tabs element. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#currentTab) */ readonly currentTab: Tab; /** * Gets the tabs element's default tab. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#defaultTab) */ readonly defaultTab: Tab; /** * Gets a list of all the tabs contained in the tabs element. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#tabs) */ readonly tabs: Tab[]; /** * Gets the element's type. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#type) */ readonly type: string; /** * Changes the tabs element's current tab. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#changeTab) */ changeTab(tabReference: string | Tab): Promise; /** * Adds an event handler that runs when the tabs element moves to a different tab. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#onChange) * @eventType change */ onChange(eventHandler: EventHandler): void; /** * Adds an event handler that runs when any tab menu item is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#onTabItemClicked) * @eventType click */ onTabItemClicked(eventHandler: EventHandler): Tabs; /** * Changes the order of the tabs in a tabs element. * [Read more](https://www.wix.com/corvid/reference/$w.Tabs.html#orderTabs) */ orderTabs(orderedTabIds: string[] | Tab[]): Promise; } /** * Provides functionality for text elements. * [Read more](https://www.wix.com/corvid/reference/$w.Text.html#) */ interface Text extends Element, HiddenCollapsedMixin, ClickableMixin { /** * Sets or gets the contents of a text element using standard HTML. * [Read more](https://www.wix.com/corvid/reference/$w.Text.html#html) */ html: string; /** * Sets or gets the plain-text contents of a text element. * [Read more](https://www.wix.com/corvid/reference/$w.Text.html#text) */ text: string; } /** * An input element for capturing large amounts of text. * [Read more](https://www.wix.com/corvid/reference/$w.TextBox.html#) */ interface TextBox extends LabelMixin, FormElement, DisabledMixin, TextInputMixin, HiddenCollapsedMixin, FocusMixin, ReadOnlyMixin, ClickableMixin, StyleMixin, RequiredMixin { /** * Gets an object containing information about the text box's styles. * [Read more](https://www.wix.com/corvid/reference/$w.TextBox.html#style) */ readonly style: Style; /** * Sets or gets a text input's value. * [Read more](https://www.wix.com/corvid/reference/$w.TextBox.html#value) */ value: string; /** * Determines if the text contains line breaks when its value is read. * [Read more](https://www.wix.com/corvid/reference/$w.TextBox.html#wrap) */ wrap: string; } /** * An input element for capturing small amounts of text. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#) */ interface TextInput extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, TextInputMixin, FocusMixin, ReadOnlyMixin, ClickableMixin, StyleMixin, RequiredMixin { /** * Sets or gets the input type of an Input element. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#inputType) */ inputType: string; /** * Sets or gets the maximum value for a text input element whose * type is set to **Number**. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#max) */ max: number; /** * Sets or gets the minimum value for a text input element whose * type is set to **Number**. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#min) */ min: number; /** * Indicates if the number spinner is hidden or visible for a numeric text input element. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#numberSpinnerHidden) */ readonly numberSpinnerHidden: boolean; /** * Gets an object containing information about the text input's styles. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#style) */ readonly style: Style; /** * Gets a ValidityState object that contains * detailed information about the validity states of the element. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#validity) */ readonly validity: ValidatableMixin.ValidityState; /** * Sets or gets a text input's value. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#value) */ value: string; /** * Hides the number spinner for a numeric text input. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#hideNumberSpinner) */ hideNumberSpinner(): void; /** * Shows the number spinner for a numeric text input. * [Read more](https://www.wix.com/corvid/reference/$w.TextInput.html#showNumberSpinner) */ showNumberSpinner(): void; } /** * Provides functionality for elements that accept text as input. * [Read more](https://www.wix.com/corvid/reference/$w.TextInputMixin.html#) */ interface TextInputMixin { /** * Sets or gets the maximum number of characters that can be entered. * [Read more](https://www.wix.com/corvid/reference/$w.TextInputMixin.html#maxLength) */ maxLength: number; /** * Sets or gets the element's placeholder text. * [Read more](https://www.wix.com/corvid/reference/$w.TextInputMixin.html#placeholder) */ placeholder: string; /** * Adds an event handler that runs when the input element receives * input. * [Read more](https://www.wix.com/corvid/reference/$w.TextInputMixin.html#onInput) * @eventType onInput */ onInput(eventHandler: EventHandler): Element; /** * Adds an event handler that runs when the cursor is inside the * input element and a key is pressed. * [Read more](https://www.wix.com/corvid/reference/$w.TextInputMixin.html#onKeyPress) * @eventType keyPress */ onKeyPress(eventHandler: KeyboardEventHandler): Element; } /** * A thank you page displayed when an order is created. * [Read more](https://www.wix.com/corvid/reference/$w.ThankYouPage.html#) */ interface ThankYouPage extends Element, HiddenCollapsedMixin { /** * Gets the order associated with the current page. * [Read more](https://www.wix.com/corvid/reference/$w.ThankYouPage.html#getOrder) */ getOrder(): Promise; } /** * An input element for capturing the time of day. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#) */ interface TimePicker extends LabelMixin, FocusMixin, DisabledMixin, HiddenCollapsedMixin, RequiredMixin, ReadOnlyMixin, FormElement { /** * Sets or gets the time slots that are available for a time picker. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#enabledTimes) */ enabledTimes: TimePicker.TimeSlot[]; /** * Sets or gets the number of minutes the time picker steps. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#step) */ step: number; /** * Sets or gets whether the time picker uses 12-hour or 24-hour format. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#useAmPmFormat) */ useAmPmFormat: boolean; /** * Sets or gets a time picker's value. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#value) */ value: string; } /** * An upload button enables site visitors to upload files to your site. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#) */ interface UploadButton extends LabelMixin, FormElement, HiddenCollapsedMixin, DisabledMixin, FocusMixin, StyleMixin, RequiredMixin { /** * Sets or gets the label on the upload button. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#buttonLabel) */ buttonLabel: string; /** * Sets or gets the maximum amount of files a site visitor can upload at a time. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#fileLimit) */ fileLimit: number; /** * Sets or gets the type of file a site visitor can upload. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#fileType) */ fileType: string; /** * Gets an object containing information about the upload button's styles. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#style) */ readonly style: Style; /** * Indicates if a required file was selected, and if the file is valid for upload to the Media Manager. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#valid) */ readonly valid: boolean; /** * Gets a message indicating why the file is invalid or could not be uploaded. Contains * empty string if the file is valid and successfully uploaded. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#validationMessage) */ readonly validationMessage: string; /** * Gets a ValidityState object that contains * detailed information about the validity states of the file to upload. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#validity) */ readonly validity: UploadButton.ValidityState; /** * Returns a list of files that are pending upload. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#value) */ readonly value: UploadButton.File[]; /** * Clears the files that are pending upload. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#reset) */ reset(): void; /** * **Deprecated.** This function will continue to work, but a newer version is available. Use the * [`uploadFiles()`](#uploadFiles) function instead. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#startUpload) */ startUpload(): Promise; /** * Uploads the files that the site visitor has chosen. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#uploadFiles) */ uploadFiles(): Promise; } /** * Provides functionality for elements that can be validated. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#) */ interface ValidatableMixin { /** * Indicates if an input element's value is valid. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#valid) */ readonly valid: boolean; /** * Gets a message indicating why the element is invalid, or an * empty string if the message is valid. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#validationMessage) */ readonly validationMessage: string; /** * Gets a ValidityState object that contains * detailed information about the validity states of the element. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#validity) */ readonly validity: ValidatableMixin.ValidityState; /** * Adds an event handler that runs when the element's validation is checked. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#onCustomValidation) */ onCustomValidation(validator: Validator, override?: boolean): void; /** * Resets the element's visual validity indication. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#resetValidityIndication) */ resetValidityIndication(): void; /** * Updates the element's visual validity indication based on its current validity state. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#updateValidityIndication) */ updateValidityIndication(): void; } /** * Adds the value property to elements. * [Read more](https://www.wix.com/corvid/reference/$w.ValueMixin.html#) */ interface ValueMixin { /** * Sets or gets an element's value. * [Read more](https://www.wix.com/corvid/reference/$w.ValueMixin.html#value) */ value: any; /** * Adds an event handler that runs when an input element's value * is changed. * [Read more](https://www.wix.com/corvid/reference/$w.ValueMixin.html#onChange) * @eventType change */ onChange(handler: EventHandler): Element; } /** * Vector images are digital illustrations based on geometric shapes. * They maintain their high quality when resized. * [Read more](https://www.wix.com/corvid/reference/$w.VectorImage.html#) */ interface VectorImage extends Element, HiddenCollapsedMixin, LinkableMixin, ClickableMixin { /** * Sets or gets the file location of the vector image. * [Read more](https://www.wix.com/corvid/reference/$w.VectorImage.html#src) */ src: string; } /** * **Deprecated.** * This API will continue to work, but a newer version is available at * [Video Player]($w/videoplayer). * [Read more](https://www.wix.com/corvid/reference/$w.Video.html#) */ interface Video extends Element, HiddenCollapsedMixin { /** * Sets or gets the URL of the video. * [Read more](https://www.wix.com/corvid/reference/$w.Video.html#videoUrl) */ videoUrl: string; } /** * An element for displaying videos in customizable video containers. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#) */ interface VideoBox extends Element, HiddenCollapsedMixin { /** * Gets the current play time from the beginning of the current video, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#currentTime) */ readonly currentTime: number; /** * Gets the total play time of the current video, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#duration) */ readonly duration: number; /** * Indicates if the volume is currently muted. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#isMuted) */ readonly isMuted: boolean; /** * Indicates if a video is currently playing. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#isPlaying) */ readonly isPlaying: boolean; /** * Sets or gets the file location of the current video. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#src) */ src: string; /** * Sets or gets the video box volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#volume) */ readonly volume: number; /** * Mutes video box volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#mute) */ mute(): Promise; /** * Adds an event handler that runs when the playback has ended. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onEnded) * @eventType onEnded */ onEnded(handler: EventHandler): VideoBox; /** * **Note: This standard element property is not relevant for VideoBox.** * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onMouseIn) * @eventType mouseenter */ onMouseIn(handler: MouseEventHandler): Element; /** * **Note: This standard element property is not relevant for VideoBox.** * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onMouseOut) * @eventType mouseleave */ onMouseOut(handler: MouseEventHandler): Element; /** * Adds an event handler that runs when the playback is paused. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onPause) * @eventType onPause */ onPause(handler: EventHandler): VideoBox; /** * Adds an event handler that runs when the playback is started or restarted. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onPlay) * @eventType onPlay */ onPlay(handler: EventHandler): VideoBox; /** * Adds an event handler that runs when the playback progresses. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#onProgress) * @eventType onProgress */ onProgress(handler: EventHandler): VideoBox; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#pause) */ pause(): Promise; /** * Begins or resumes playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#play) */ play(): Promise; /** * Stops the playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#stop) */ stop(): Promise; /** * Toggles playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#togglePlay) */ togglePlay(): Promise; /** * Unmutes video volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoBox.html#unmute) */ unmute(): Promise; } /** * An element for presenting videos. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#) */ interface VideoPlayer extends Element, HiddenCollapsedMixin { /** * Gets the current play time from the beginning of the current video, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#currentTime) */ readonly currentTime: number; /** * Sets or gets the description of a video. * > **Notes:** * > - Setting a video description only works when a video player is presenting a * > video uploaded to your site. * > - Getting a video description does not work when a video player is presenting a * > video from Facebook, Twitch, or YouTube. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#description) */ description: string; /** * Gets the total play time of the current video, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#duration) */ readonly duration: number; /** * Indicates if the volume is currently muted. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#isMuted) */ readonly isMuted: boolean; /** * Indicates if a video is currently playing. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#isPlaying) */ readonly isPlaying: boolean; /** * Sets or gets the image shown in the video player before the video is played. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#poster) */ poster: string; /** * Sets or gets the file location of the current video. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#src) */ src: string; /** * Sets or gets the title displayed in a video player. * > **Notes:** * > - Setting a video title only works when a video player is presenting a * > video uploaded to your site. * > - Getting a video title does not work when a video player is presenting a * > video from Facebook, Twitch, or YouTube. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#title) */ title: string; /** * Sets or gets the video player volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#volume) */ volume: number; /** * Mutes video volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#mute) */ mute(): Promise; /** * Adds an event handler that runs when playback has ended. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#onEnded) * @eventType onEnded */ onEnded(handler: EventHandler): VideoPlayer; /** * Adds an event handler that runs when playback is paused. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#onPause) * @eventType onPause */ onPause(handler: EventHandler): VideoPlayer; /** * Adds an event handler that runs when playback is started or restarted. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#onPlay) * @eventType onPlay */ onPlay(handler: EventHandler): VideoPlayer; /** * Adds an event handler that runs when playback progresses. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#onProgress) * @eventType onProgress */ onProgress(handler: EventHandler): VideoPlayer; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#pause) */ pause(): Promise; /** * Begins or resumes playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#play) */ play(): Promise; /** * Moves playback to the specified time, in seconds. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#seek) */ seek(time: number): Promise; /** * Pauses playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#stop) */ stop(): Promise; /** * Toggles playback. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#togglePlay) */ togglePlay(): Promise; /** * Unmutes video volume. * [Read more](https://www.wix.com/corvid/reference/$w.VideoPlayer.html#unmute) */ unmute(): Promise; } /** * The ViewChangeEvent is triggered when the month or year changes on a date picker or appointment field element. * [Read more](https://www.wix.com/corvid/reference/$w.ViewChangeEvent.html#) */ interface ViewChangeEvent { /** * Gets the context in which an event was triggered. * [Read more](https://www.wix.com/corvid/reference/$w.ViewChangeEvent.html#context) */ readonly context: Event.EventContext; /** * Gets the options that relate to the date picker or appointment field view change event. * [Read more](https://www.wix.com/corvid/reference/$w.ViewChangeEvent.html#options) */ readonly options: ViewChangeEvent.ViewChangeEventOptions; /** * Gets the type of event that was triggered. * [Read more](https://www.wix.com/corvid/reference/$w.ViewChangeEvent.html#type) */ readonly type: string; } /** * Provides functionality for elements that can be scrolled into and out * of view. * [Read more](https://www.wix.com/corvid/reference/$w.ViewportMixin.html#) */ interface ViewportMixin { /** * Adds an event handler that runs when an element is displayed * in the viewable part of the current window. * [Read more](https://www.wix.com/corvid/reference/$w.ViewportMixin.html#onViewportEnter) * @eventType viewportEnter */ onViewportEnter(handler: EventHandler): Element; /** * Adds an event handler that runs when an element is no longer * displayed in the viewable part of the current window. * [Read more](https://www.wix.com/corvid/reference/$w.ViewportMixin.html#onViewportLeave) * @eventType viewportLeave */ onViewportLeave(handler: EventHandler): Element; } /** * An element that displays your site's events. * [Read more](https://www.wix.com/corvid/reference/$w.WixEvents.html#) */ interface WixEvents extends Element, HiddenCollapsedMixin { /** * Sets or gets the event category displayed in a Wix Events element. * [Read more](https://www.wix.com/corvid/reference/$w.WixEvents.html#categoryId) */ categoryId: string; } /** * A `$w` element for enabling your site contacts and visitors to work with the Wix Forms app. * [Read more](https://www.wix.com/corvid/reference/$w.WixForms.html#) */ interface WixForms extends HiddenCollapsedMixin { /** * Adds an event handler that runs when a site visitor starts to submit a Wix Form yet before the form is actually submitted and sent to the server. * [Read more](https://www.wix.com/corvid/reference/$w.WixForms.html#onWixFormSubmit) * @eventType WixFormSubmitEvent */ onWixFormSubmit(eventHandler: WixForms.WixFormSubmitEventHandler): void; /** * Adds an event handler that runs when a site visitor submits a Wix Form and it is successfully received by the server. * [Read more](https://www.wix.com/corvid/reference/$w.WixForms.html#onWixFormSubmitted) * @eventType WixFormSubmittedEvent */ onWixFormSubmitted(eventHandler: WixForms.WixFormSubmittedEventHandler): void; /** * Adds an event handler that runs when a site visitor is not able to successfully submit a Wix Form to the server. * [Read more](https://www.wix.com/corvid/reference/$w.WixForms.html#onWixFormSubmittedError) * @eventType WixFormSubmittedErrorEvent */ onWixFormSubmittedError(eventHandler: WixForms.WixFormSubmittedErrorEventHandler): void; } /** * An event that is fired when a site visitor clicks a submit button on a [`WixForms`](wix-crm.html#$w-wixforms) element and the Wix Form is about to be submitted to the server. * You do not need to import `$w` or `wix-crm` to work with Wix Forms events. * [Read more](https://www.wix.com/corvid/reference/$w.WixFormSubmitEvent.html#) */ interface WixFormSubmitEvent extends Event { } /** * An event that is fired when a site visitor clicks a submit button on a [`WixForms`](wix-crm.html#$w-wixforms) element but the Wix Form is not successfully submitted to the server. * You do not need to import `$w` or `wix-crm` to work with Wix Forms events. * [Read more](https://www.wix.com/corvid/reference/$w.WixFormSubmittedErrorEvent.html#) */ interface WixFormSubmittedErrorEvent extends Event { /** * Gets the error code for a failed Wix Form submission. * [Read more](https://www.wix.com/corvid/reference/$w.WixFormSubmittedErrorEvent.html#code) */ readonly code: string; /** * Gets the error message for a failed Wix Form submission. * [Read more](https://www.wix.com/corvid/reference/$w.WixFormSubmittedErrorEvent.html#message) */ readonly message: string; } /** * An event that is fired when a site visitor clicks a submit button on a [`WixForms`](wix-crm.html#$w-wixforms) element and the Wix Form is successfully submitted to the server. * You do not need to import `$w` or `wix-crm` to work with Wix Forms events. * [Read more](https://www.wix.com/corvid/reference/$w.WixFormSubmittedEvent.html#) */ interface WixFormSubmittedEvent extends Event { } /** * `AddressInput` is used for entering addresses. It lets users type * an address, and suggests exact locations using Google Maps services. * [Read more](https://www.wix.com/corvid/reference/$w.AddressInput.html#) */ namespace AddressInput { /** * An object representing a physical address. */ type Address = { /** * Address in human-readable format. The formatted address is displayed in the address input element. */ formatted: string; /** * Address coordinates. */ location?: AddressInput.AddressLocation; /** * Address street name and number. */ streetAddress?: AddressInput.StreetAddress; /** * Address city. */ city?: string; /** * Address subdivision of a country, such as a state or province. */ subdivision?: string; /** * Address country. */ country?: string; /** * Address postal code. */ postalCode?: string; }; /** * An object containing a filter for filtering address suggestions * in an address input. Suggestions are restricted to addresses within * the specified country. * > **Note:** Currently only filtering by country is supported. */ type AddressFilter = { /** * [ISO_3166](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code. */ country?: string; }; /** * An object containing the coordinates of an address. */ type AddressLocation = { /** * Address latitude. */ latitude: number; /** * Address longitude. */ longitude: number; }; /** * An object containing the street name and number of an address. */ type StreetAddress = { /** * Street name. */ name: string; /** * Street number. */ number?: string; }; } /** * Use an `AppointmentField` to select dates, times, and timezones for scheduling appointments. * [Read more](https://www.wix.com/corvid/reference/$w.AppointmentField.html#) */ namespace AppointmentField { type OperationOptions = { /** * Start date of the currently displayed month. */ startDate: Date; /** * End date of the currently displayed month. */ endDate: Date; }; type dateTimeRange = { /** * Date and time of the start of the range. */ startDateTime: Date; /** * Date and time of the end of the range. */ endDateTime: Date; }; type dateTimeRangeInfo = { /** * Date range type. Valid values: `'enabledRanges'` */ type: string; /** * Array of dateTimeRange objects. */ payload: AppointmentField.dateTimeRange[]; }; } /** * Provides functionality for background images in certain elements. * [Read more](https://www.wix.com/corvid/reference/$w.Background.html#) */ namespace Background { /** * An object used by the `background` property that contains the background options. */ type BackgroundOptions = { /** * The file location of the background image or video. * Setting the `src` property changes the * displayed image or video to the image or video found at the new `src` value. * * Getting the `src` property returns the * location of the current image or video file. * * Images can either be from the [Media Manager](https://support.wix.com/en/article/about-the-media-manager) * or an external image from any web location. Videos must come from the * [Media Manager](https://support.wix.com/en/article/about-the-media-manager). * * The URL formats supported are: * * + Images from the Media Manager: * `wix:image://v1//#originWidth=&originHeight=[&watermark=]` * + Videos from the Media Manager: * `wix:video://v1//#posterUri=&posterWidth=&posterHeight=` * + Images from the web: * `http(s)://` */ src: string; }; } /** * Breadcrumbs are used for navigating between site pages. * [Read more](https://www.wix.com/corvid/reference/$w.Breadcrumbs.html#) */ namespace Breadcrumbs { /** * An object that contains the attributes of a breadcrumbs item. */ type Item = { /** * The label of the breadcrumbs item. This is text that the site visitor sees and can click to navigate. Required if `icon` isn't specified. If not specified, `label` is omitted from the returned array. */ label?: string; /** * The icon of the breadcrumbs item. This is a vector image that the site visitor sees and can click to navigate. Required if `label` isn't specified. If not specified, the `icon` key is omitted from the returned array. * * The vector image file can be an image file from the Media Manager, an external SVG image from any web location, or a literal SVG XML string. * * The formats supported are: * + Vector images from the Media Manager: `wix:vector://v1//` * + Vector images from the web: `http(s)://` * + Vector XML string: `...` */ icon?: string; /** * Optional link for the breadcrumbs item as a URL relative to your site's home page. This is the link the site visitor navigates to when they click on a breadcrumbs item. The page opens in the same window/tab. * * If a link isn't specified, it's `undefined` in the breadcrumbs object. The corresponding label or icon isn't clickable. * * >**Note:** * > In the default breadcrumbs `items` array generated for a page, any `link` properties contain absolute URLs, not relative ones. */ link?: string; /** * Setting `isCurrent` to `true` for a breadcrumbs item causes the item to appear highlighted in the breadcrumbs element. * You can use this property to indicate which page in a breadcrumbs trail is currently displayed. In a default `items` array, the last item's `isCurrent` value is `true`. * >**Note:** The value of `isCurrent` isn't validated against which page is actually displayed. It can also be set to `true` for multiple breadcrumbs items. */ isCurrent?: boolean; }; } /** * The reCAPTCHA element allows you to present a challenge-response test to site visitors to determine whether they are human or a bot. * [Read more](https://www.wix.com/corvid/reference/$w.Captcha.html#) */ namespace Captcha { /** * An error event handler. */ type ErrorHandler = () => void; /** * A timeout event handler. */ type TimeoutHandler = () => void; /** * A verification event handler. */ type VerifiedHandler = () => Promise | void; } /** * An icon that leads users to the shopping cart. * [Read more](https://www.wix.com/corvid/reference/$w.CartIcon.html#) */ namespace CartIcon { /** * An object used to pass a custom text field when adding a product to * the shopping cart with options. */ type AddToCartCustomTextField = { /** * Custom text field title. */ title: string; /** * Custom text field value. */ value: string; }; /** * An object used when adding multiple products to the shopping cart. */ type AddToCartItem = { /** * The ID of the product to add to the cart. */ productId: string; /** * The number of product units to add to the cart. */ quantity: number; /** * Specific product options to add to the cart. */ options?: CartIcon.AddToCartOptions; }; /** * An object used when adding a product to the shopping cart with options. */ type AddToCartOptions = { /** * Product options to use when adding the product to the cart. * The object contains key:value pairs where the key is the option name and the value is the chosen option value. */ choices: any; /** * Custom text fields to use when adding the product to the cart. */ customTextFields: CartIcon.AddToCartCustomTextField[]; }; } /** * An element for sending and receiving chat messages. * [Read more](https://www.wix.com/corvid/reference/$w.Chatbox.html#) */ namespace Chatbox { /** * An object representing a chat channel. */ type Channel = { /** * ID of the channel. */ id: string; /** * Display information associated with the channel. */ displayData: Chatbox.DisplayData; /** * An array of messages sent over the channel. Currently only the last message is included. */ messages: Chatbox.Message[]; }; /** * An object containing information about a chat channel. */ type ChannelInfo = { /** * ID of a chat channel. */ channelId?: string; /** * Type of chat channel. * One of the following: * * + `"Focused"`: Currently focused channel. * + `"Business"`: Business channel. */ type?: string; }; /** * An object representing display information associated with a [`Channel`](#channel). */ type DisplayData = { /** * The image associated with the channel. * One of the following: * * + For private social channels, the image associated with the site member's account. If there is no image associated with the account, defaults to the avatar image. * + For group social channels, the image associated with the chat group. * + For business channels, `image` is not currently supported. */ image: string; /** * For social channels, the member's name or chat group name. For business channels, the site's [display name](wix-site-backend.generalInfo.html#getSiteDisplayName). */ name: string; /** * Only supported for business channels. Initials of the site's business. */ initials: string; }; /** * An object that contains information about a chat message. */ type Message = { /** * ID of the channel on which the message was sent. */ channelId: string; /** * Type of message. Currently only `TEXT` is supported. */ type: string; /** * First 250 characters of the chat message. Currently only text is included in the summary. */ summary: string; /** * The sender's member ID. For a message sent from the site's business, the site owner's member ID. */ participantId: string; /** * Date and time the message was sent. */ createdAt: Date; /** * Content of the message. */ payload: Chatbox.MessagePayload; /** * An object representing additional contextual message information included in a chat message. Only relevant for messages sent using the backend [`sendMessage()`](wix-chat-backend.html#sendMessage) function. Site visitors do not see metadata. */ metadata?: any; }; /** * An object representing a chat message to be sent. */ type MessageInfo = { /** * The text to be sent in the message. */ messageText: string; /** * The ID of the channel over which the message is sent. If empty, message is sent to the site's business. */ channelId?: string; }; /** * The content of a chat message. */ type MessagePayload = { /** * Text of the chat message. */ text: string; }; } /** * Checkbox groups are used for selecting any number of the given * options. * [Read more](https://www.wix.com/corvid/reference/$w.CheckboxGroup.html#) */ namespace CheckboxGroup { /** * An object used by the `options` property that contains the attributes of a checkbox item. */ type Option = { /** * The value of the checkbox option. This is what you use in code and is what is stored in your collections. Mandatory if `label` is not specified. */ value?: string; /** * The label of the checkbox option. This is what a user sees. Mandatory if `value` is not specified. */ label?: string; }; } /** * A text element for managing large amounts of text. * [Read more](https://www.wix.com/corvid/reference/$w.CollapsibleText.html#) */ namespace CollapsibleText { /** * Expands content overflow on current page. */ type ExpandOnCurrentPage = { /** * Text of the read more button. Defaults to `Read more`. */ readMoreButtonText?: string; /** * Text of the read less button. Defaults to `Read less`. */ readLessButtonText?: string; /** * Whether the collapsible text is currently collapsed. Defaults to `true`. */ collapsed?: boolean; }; /** * Links to the content overflow. */ type LinkToContent = { /** * Link for the remaining text. Supports all [link types](https://www.wix.com/velo/reference/$w/linkablemixin/link). */ link: string; /** * Determines where the link opens, either in the current page or in a new page. * One of: * `"_blank"`: The link opens in a new tab or window. * `"_self"`: The link opens in the tab or window. * * Defaults to `"_blank"`. * * Note: Link targets are only supported for external web links, for example, `https://www.wix.com`. */ target?: string; /** * Whether the read more button is visible. Defaults to `false`. */ readMoreButtonVisible?: boolean; /** * Text of the read more button. Defaults to 'Link to full article'. */ readMoreButtonText?: string; }; } /** * A `DatePicker` is used for entering dates. It lets site visitors populate a * date field by picking a date using a calendar popup. * You can enable and disable dates, date ranges, and days of the week on your date picker. * [Read more](https://www.wix.com/corvid/reference/$w.DatePicker.html#) */ namespace DatePicker { /** * An object containing the start and end dates of a range of dates. */ type DateRange = { /** * Start date for the range. The `startDate` is inclusive, * meaning it's included in the range. The start date must be earlier than or the same as the * end date of the range. */ startDate: Date; /** * End date for the range. The `endDate` is inclusive, * meaning it's included in the range. The end date must be later than or the same as the * start date of the range. */ endDate: Date; }; } /** * A complete web page, which consists of a Header, Page, and Footer. * [Read more](https://www.wix.com/corvid/reference/$w.Document.html#) */ namespace Document { /** * An object used by the `background` property that contains the background options. */ type BackgroundOptions = { /** * The file location of the background image. * * Setting the `src` property changes the * displayed image or video to the image or video found at the new `src` value. * * Getting the `src` property returns the * location of the current image or video file. * * Images can either be from the [Media Manager](https://support.wix.com/en/article/about-the-media-manager) * or an external image from any web location. Videos must come from the * [Media Manager](https://support.wix.com/en/article/about-the-media-manager). * * The URL formats supported are: * * + Images from the Media Manager: * `wix:image://v1//#originWidth=&originHeight=[&watermark=]` * + Videos from the Media Manager: * `wix:video://v1//#posterUri=&posterWidth=&posterHeight=` * + Images from the web: * `http(s)://` */ src: string; }; } /** * Dropdowns are used for selecting one of a number of options. * [Read more](https://www.wix.com/corvid/reference/$w.Dropdown.html#) */ namespace Dropdown { /** * An object used by the `options` property that contains the attributes of a dropdown list item. */ type Option = { /** * The value of the dropdown option. This is what you use in code and is what is stored in your collections. Mandatory if `label` is not specified. */ value?: string; /** * The label of the dropdown option. This is what a user sees. Mandatory if `value` is not specified. */ label?: string; }; } /** * Use effect options to customize an effect when [showing]($w.HiddenMixin.html#show) or [hiding]($w.HiddenMixin.html#hide) an element. * Effect options include arcs, bouncing, fading, flipping, floating, flying in/out, folding, gliding and more. * [Read more](https://www.wix.com/corvid/reference/$w.EffectOptions.html#) */ namespace EffectOptions { /** * An object used to customize the `"arc"` effect. */ type ArcEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"left"`, `"right"`. Defaults to `"left"`. */ direction?: string; }; /** * An object used to customize the `"bounce"` effect. */ type BounceEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"topLeft"`, `"topRight"`, `"bottomRight"`, * `"bottomLeft"`, `"center"`. Defaults to `"topLeft"`. */ direction?: string; /** * Valid values: `"soft"`, `"medium"`, `"hard"`. Defaults to `"medium"`. */ intensity?: string; }; /** * An object used to customize the `"fade"` effect. */ type FadeEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; }; /** * An object used to customize the `"flip"` effect. */ type FlipEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"right"`. */ direction?: string; }; /** * An object used to customize the `"float"` effect. */ type FloatEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"right"`. */ direction?: string; }; /** * An object used to customize the `"fly"` effect. */ type FlyEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"right"`. */ direction?: string; }; /** * An object used to customize the `"fold"` effect. */ type FoldEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"left"`. */ direction?: string; }; /** * An object used to customize the `"glide"` effect. */ type GlideEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `0`-`360` degrees. Defaults to `0`. */ angle?: number; /** * Valid values: `0`-`300` pixels. Defaults to `0`. */ distance?: number; }; /** * An object used to customize the `"puff"` effect. */ type PuffEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; }; /** * An object used to customize the `"roll"` effect. */ type RollEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"left"`. */ direction?: string; }; /** * An object used to customize the `"slide"` effect. */ type SlideEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"top"`, `"right"`, `"bottom"`, `"left"`. Defaults to `"left"`. */ direction?: string; }; /** * An object used to customize the `"spin"` effect. */ type SpinEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `cw`, `ccw`. Defaults to `cw`. */ direction?: string; /** * Valid values: `1`-`15`. Defaults to `5`. */ cycles?: number; }; /** * An object used to customize the `"turn"` effect. */ type TurnEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; /** * Valid values: `"right"`, `"left"`. Defaults to `"right"`. */ direction?: string; }; /** * An object used to customize the `"zoom"` effect. */ type ZoomEffectOptions = { /** * Valid values: `0`-`4000` milliseconds. Defaults to `1200`. */ duration?: number; /** * Valid values: `0`-`8000` milliseconds. Defaults to `0`. */ delay?: number; }; } /** * Events are fired when certain actions occur to elements. * [Read more](https://www.wix.com/corvid/reference/$w.Event.html#) */ namespace Event { /** * An object that contains information about the context in which an event was fired. */ type EventContext = { /** * `"GLOBAL_SCOPE"` for events fired outside * of repeaters, or `"COMPONENT_SCOPE"` for events fired from repeaters. */ type: string; /** * ID of the repeater item where the * event was fired from. */ itemId: string; }; } /** * A gallery for displaying multiple items. * [Read more](https://www.wix.com/corvid/reference/$w.Gallery.html#) */ namespace Gallery { /** * An object used by the `galleryCapabilities` property that contains the capabilities of a gallery. */ type GalleryCapabilities = { /** * Indicates if the gallery supports play operations. */ isPlayable: boolean; /** * Indicates if the gallery supports the notion of a current item. */ hasCurrentItem: boolean; /** * Indicates if the gallery supports navigation buttons. */ hasNavigationButtons: boolean; }; /** * An object used by the Gallery properties `items` and `currentItem` to represent a single gallery image. */ type ImageItem = { /** * Item type. Value is `"image"`. */ type: string; /** * Item slug. */ slug?: string; /** * Image source URL. */ src: string; /** * Image description. Descriptions over 100 characters are truncated. */ description?: string; /** * Image title. */ title?: string; /** * URL of the image's clickable link. See [here]($w.LinkableMixin.html#link) for more information about links. */ link?: string; }; /** * An object used by the Gallery properties `items` and `currentItem` to represent a single gallery video. */ type VideoItem = { /** * Item type. Value is `"video"`. */ type: string; /** * Item slug. */ slug?: string; /** * Video source URL. */ src: string; /** * Video description. Descriptions over 100 characters are truncated. */ description?: string; /** * Video title. */ title?: string; /** * URL of the video's clickable link. See [here]($w.LinkableMixin.html#link) for more information about links. */ link?: string; /** * Video thumbnail URL. */ thumbnail?: string; }; } /** * A [Google Map element](https://www.wix.com/support/html5/article/adding-google-maps) * that allows you to display a given location. * [Read more](https://www.wix.com/corvid/reference/$w.GoogleMap.html#) */ namespace GoogleMap { /** * An object used by the `location` property that * contains the attributes of a marked map location. */ type MapLocation = { /** * The latitude of the location. Must be between -90 and 90. */ latitude: number; /** * The longitude of the location. Must be between -180 and 180. */ longitude: number; /** * The description of the location. */ description?: string; }; } /** * Menus are used for navigating between site pages. * [Read more](https://www.wix.com/corvid/reference/$w.Menu.html#) */ namespace Menu { /** * An object that contains the attributes of a menu item. */ type MenuItem = { /** * The label of the menu item. This is text that the site visitor sees in the menu and can click to navigate. * * If not specified, and the page that the link property references is: * + An external page or an empty string: The menu defaults to the menu items based on site pages only, as defined in the Editor, and an error is logged to the console. * + A page nested under a folder: The specific menu item label defaults to the name of the corresponding page as defined in the Editor. * + A regular, non-nested, site page: The `label` for the menu item gets its value from the name of the page that the `link` property references. * * Min: 1 character * * Max: 40 characters */ label?: string; /** * Setting `selected` to `true` for a menu item causes the item to appear highlighted in the menu element. * You can use this property to indicate which page is currently being displayed. * * >**Note:** The value of `selected` isn't validated against which page is actually displayed. For example, you can write code that misleadingly sets `selected` to `true` for multiple menu items. * * When not defined explicitly using the `selected` property, the `selected` value is derived from the currently-active page in the site's _main_ menu * (as defined when managing the menu in the Editor) and not derived from a currently-active page in a _custom_ menu. * * Default: `false` */ selected?: boolean; /** * Optional link for the menu item. This is the link the site visitor navigates to when they click on a menu item. * The different types of links you can use are: * * + `/localPageURL`: Another page on your site, such as `/about` or `/rentals/shortterm`. * + `/`: Your site's home page. * + `http(s)://`: An external web address, such as `https://www.mortgagecalculator.org/`. * + `wix:document://`: A document stored in the Media Manager, such as `wix:document://v1/9bec_52fb06ea/filename.xls`. * + `mailto:?subject=`: An email, such as `mailto:michael@example.com?subject=Coming%20Soon`. * + `tel:`: A phone number, such as `tel:+1-555-555-5555`. * * If `link` isn't specified, the corresponding label isn't clickable. * * Specifying an empty string is not supported. The menu defaults to the menu items as defined in the Editor and an error is logged to the console. * * Min: 1 character * * Max: 40 characters */ link?: string; /** * Whether the link opens in the same window/tab or in a new window/tab. * + `_self`. The page opens in the same window/tab. * + `_blank`. The page opens in a new window/tab. * * > **Note:** `target` doesn't work when previewing your site. * * * Default: `_self` */ target?: string; /** * Menus can have additional levels of submenus. Vertical menus can have * 1 level of submenus. Horizontal menus can have 2 additional levels of submenus. */ menuItems?: Menu.MenuItem[]; }; } /** * A menu container holds the elements in a * mobile menu that are used for navigating between mobile site pages. * [Read more](https://www.wix.com/corvid/reference/$w.MenuContainer.html#) */ namespace MenuContainer { /** * An object that contains the attributes of a mobile menu item. */ type MenuItem = { /** * The label of the mobile menu item. This is text that the site visitor sees in the mobile menu and can click to navigate. * * If not specified, and the page that the link property references is: * + An external page or an empty string: The mobile menu defaults to the mobile menu items based on site pages only, as defined in the Editor, and an error is logged to the console. * + A page nested under a folder: The specific mobile menu item label defaults to the name of the corresponding page as defined in the Editor. * + A regular, non-nested, site page: The `label` for the mobile menu item gets its value from the name of the page that the `link` property references. * * Min: 1 character * * Max: 40 characters */ label?: string; /** * Setting `selected` to `true` for a mobile menu item causes the item to appear highlighted and to expand any of its sub-items in the menu container. * You can use this property to indicate which page is currently being displayed. * * >**Note:** The value of `selected` isn't validated against which page is actually displayed. For example, you can write code that misleadingly sets `selected` to `true` for multiple menu items. * * When not defined explicitly using the `selected` property, the `selected` value is derived from the currently-active page in the site's _main_ mobile menu * (as defined when managing the mobile menu in the Editor) and not derived from a currently-active page in a _custom_ mobile menu. * * Default: `false` */ selected?: boolean; /** * Optional link for the mobile menu item. The different types of links you can use are: * * + `/localPageURL`: Another page on your site, such as `/about` or `/rentals/shortterm`. * + `/`: Your site's home page. * + `http(s)://`: An external web address, such as `https://www.mortgagecalculator.org/`. * + `wix:document://`: A document stored in the Media Manager, such as `wix:document://v1/9bec_52fb06ea/filename.xls`. * + `mailto:?subject=`: An email, such as `mailto:michael@example.com?subject=Coming%20Soon`. * + `tel:`: A phone number, such as `tel:+1-555-555-5555`. * * If `link` isn't specified, the corresponding label isn't clickable. * * Specifying an empty string is not supported. The mobile menu defaults to the mobile menu items as defined in the Editor and an error is logged to the console. * * Min: 1 character * * Max: 40 characters */ link?: string; /** * Whether the link opens in the same window/tab or in a new window/tab. * + `_self`. The page opens in the same window/tab. * + `_blank`. The page opens in a new window/tab. * * > **Note:** `target` doesn't work when previewing your site. * * * Default: `_self` */ target?: string; /** * Menus can have 1 additional level of submenus. */ menuItems?: MenuContainer.MenuItem[]; }; } /** * A post page for a specific blog post. * [Read more](https://www.wix.com/corvid/reference/$w.PostPage.html#) */ namespace PostPage { /** * An object representing a blog post on a post page. * > **Note:** * `viewCount` and `likeCount` data used on your site pages is eventually consistent and may require up * to 24 hours to update. To make sure new post views and likes are included on your site in real time, * [disable caching](https://support.wix.com/en/article/caching-your-sites-pages) for * any page that uses `viewCount` or `likeCount` data. Note that disabling caching may increase your page loading time. */ type BlogPost = { /** * Post ID. */ _id: string; /** * Post title. */ title: string; /** * Text of the post. */ plainContent: string; /** * Date the post was originally published. */ publishedDate: Date; /** * Number of times the post was viewed. */ viewCount: number; /** * Number of likes the post received. */ likeCount: number; /** * Number of comments the post received. */ commentCount: number; /** * Date the post was most recently published. */ lastPublishedDate: Date; /** * Indicates whether the cover image is displayed in the post. */ coverImageDisplayed: boolean; /** * Estimated time in minutes required to read the post. */ timeToRead: number; /** * Indicates whether the post was pinned to the top of the blog feed. */ pinned: boolean; /** * Indicates whether the post is set as featured in the post settings. Featured posts appear in custom blog feeds. */ featured: boolean; /** * List of all hashtags in the post. */ hashtags: string[]; /** * The post's cover [image]($w.Image.html#src). */ coverImage: string; /** * Relative URL of the post page on your published site. */ postPageUrl: string; /** * A few lines of text that appear in the blog feed. Defined * in [Post Settings](https://support.wix.com/en/article/editing-excerpts-in-the-new-wix-blog) or default of first 160 characters of the post. */ excerpt: string; }; } /** * A store page for a specific product. * [Read more](https://www.wix.com/corvid/reference/$w.ProductPage.html#) */ namespace ProductPage { /** * An object representing a media item. */ type MediaItem = { /** * Media item ID. */ id: string; /** * Media item title. */ title: string; /** * Media item description. Descriptions over 100 characters are truncated. */ description: string; /** * Media item type. Can be "image" or "video." */ type: string; /** * Media item source URL. */ src: string; /** * Thumbnail URL for videos only. */ thumbnail?: string; }; /** * An object representing a product in a store. */ type Product = { /** * Product ID. */ _id: string; /** * Date and time the product was last updated. */ _updatedDate: Date; /** * Product name. */ name: string; /** * Product description. */ description: string; /** * Main product media item (image or video thumbnail) URL. */ mainMedia: string; /** * List of product media items. */ mediaItems: ProductPage.MediaItem; /** * Product stock keeping unit value. Must be unique. */ sku: string; /** * Deprecated. Use `ribbon` instead. */ ribbons: ProductPage.ProductRibbon[]; /** * Product currency. */ currency: string; /** * Product price. * The price must be greater than its discount. * The product price is propagated to the product's newly-created variants. Product variants whose prices have been updated directly are not affected by the changes to the product price. */ price: number; /** * Discounted product price. */ discountedPrice: number; /** * Product price formatted with the currency. */ formattedPrice: string; /** * Discounted product price formatted with the currency. */ formattedDiscountedPrice: string; /** * ID for the inventory item. */ inventoryItemId: string; /** * Product discount. */ discount: ProductPage.ProductDiscount; /** * Indicates whether inventory is tracked for the product. */ trackInventory: boolean; /** * Indicates whether the product is in stock. */ inStock: boolean; /** * Number of units currently in stock. */ quantityInStock: number; /** * Additional product information sections. */ additionalInfoSections: ProductPage.ProductAdditionalInfoSection[]; /** * All the available options for a store product. */ productOptions: ProductPage.ProductOptions; /** * Product page relative URL. */ productPageUrl: string; /** * Indicates whether product variants are managed. Can be set to true only if the product has options. Once set to true, `manageVariants` can only be reset to false only if no variants exist. Use [`getProductVariants()`](https://www.wix.com/velo/reference/wix-stores.html#getProductVariants) to check if variants exist. You cannot set `manageVariants` to true if more than 300 variants are defined. */ manageVariants: boolean; /** * List of product customization fields. */ customTextFields: ProductPage.ProductCustomTextFields[]; /** * Product type. Either `"physical"` or `"digital"`. When creating a product using the API, currently only `"physical"` is supported. */ productType: string; /** * Product slug. */ slug: string; /** * Product weight. */ weight: number; /** * Product variants. */ variants: ProductPage.VariantItem[]; /** * Price per unit. */ pricePerUnit: number; /** * Price per unit formatted with currency symbol. */ formattedPricePerUnit: string; /** * Details of the product's price per unit. */ pricePerUnitData: ProductPage.pricePerUnitData; /** * Custom SEO data for the product. Learn more [about SEO](https://support.wix.com/en/search?term=seo). */ seoData: ProductPage.SeoData; /** * Product ribbon. Used to highlight relevant information about a product. For example, `"Sale"`, `"New Arrival"`, `"Sold Out"`. */ ribbon: string; }; /** * An object representing an additional info section for a store product. */ type ProductAdditionalInfoSection = { /** * Section title. */ title: string; /** * Section description. */ description: string; }; /** * An object representing a product variant's option choices. */ type ProductChoices = { /** * Value of the choice. This key name is dependent on the * product option. For example, if a product has a size option, this * key value will be something like `"Size"` and its value will be something like * `"Large"`. * * `optionKey` is not case-sensitive. Therefore the values for the option keys "`Size`", "`SIZE`", and "`size`" are combined. */ optionKey: string; }; /** * An object representing a custom text field for a store product. */ type ProductCustomTextFields = { /** * Product customization field title. */ title: string; /** * Maximum length of product customization field in characters. */ maxLength: string; }; /** * An object representing a product discount. */ type ProductDiscount = { /** * Discount type. Required. * * One of: * * * * - `"AMOUNT"` * - `"PERCENT"` * - `"NONE"` */ type: string; /** * Discount value. The discount value cannot be greater than the price of the product or the variant. */ value: string; }; /** * An object representing an option for a store product. */ type ProductOption = { /** * Option type. Either `"color"` or `"drop_down"`. */ optionType: string; /** * Option name. */ name: string; /** * Option choices. */ choices: ProductPage.ProductOptionsChoice[]; }; /** * An object representing all the available options for a store product, such as "Size" and "Color." */ type ProductOptions = { /** * Name of the option. This key name *  is dependent on the options added to the product. For example, if a product has a size * option, this key will be something like `"Size"`. * * `optionKey` is not case-sensitive. Therefore the values for the option keys "`Size`", "`SIZE`", and "`size`" are combined. */ optionKey: ProductPage.ProductOption; }; /** * An object representing an option's choice for a store product, such as choice "Small" for the option "Size." */ type ProductOptionsChoice = { /** * Choice value. */ value: number; /** * Choice description. */ description: number; /** * Choice media. */ media: ProductPage.ProductOptionsChoiceMedia; /** * Indicates whether the product with this choice is in stock. */ inStock: boolean; /** * Indicates whether the product with this option is visible. */ visible: boolean; }; /** * An object representing the choice media. */ type ProductOptionsChoiceMedia = { /** * Main choice media item (image or video thumbnail) URL. */ mainMedia: string; /** * List of choice media items. */ mediaItems: ProductPage.MediaItem; }; /** * An object representing a ribbon for a store product. */ type ProductRibbon = { /** * Ribbon text. */ text: string; }; /** * An object representing custom SEO data for the product. */ type SeoData = { /** * SEO tag details. */ tags: ProductPage.SeoTag[]; }; /** * An object representing the product's custom SEO tags. */ type SeoTag = { /** * SEO tag type. * Supported values: * * + `"title"` * + `"meta"` * + `"script"` * + `"link"` */ type: string; /** * The props property holds an object of `{"key": "value"}` pairs where the key is one of the SEO tag's properties (name, content, rel, href, etc.) * and the value is the value for that property. `{"name": "description", "content": "The description itself."}`. */ props: object; /** * Tag metadata. For example, `{"height": 300, "width": 240}`. */ meta: object; /** * 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; }; /** * An object representing variant information to use when creating or updating variants. */ type VariantInfo = { /** * Variant currency. */ currency: string; /** * Variant price. The variant price must be greater than its discount. If the variant price has been updated, changes to the product price do not affect the variant price. */ price: number; /** * Discounted variant price. */ discountedPrice: number; /** * Variant price formatted with the currency. */ formattedPrice: string; /** * Discounted variant price formatted with the currency. */ formattedDiscountedPrice: string; /** * Variant weight. */ weight: number; /** * Variant stock keeping unit value. */ sku: string; /** * Whether the variant is visible in the store. */ visible: boolean; /** * Price per unit. */ pricePerUnit: number; /** * Price per unit formatted with currency symbol. */ formattedPricePerUnit: string; }; /** * An object representing a product variant item. */ type VariantItem = { /** * Unique variant ID. */ _id: string; /** * The choices of the retrieved variant. */ choices: ProductPage.ProductChoices; /** * Variant information. */ variant: ProductPage.VariantInfo; }; /** * An object representing a product's price per unit data. */ type pricePerUnitData = { /** * Product’s total weight, volume, or area. For example, if your product weighs 1 kilogram, the `totalQuantity` is `1`. */ totalQuantity: number; /** * Total measurement unit of weight, volume, or area. For example, if your product weighs 1 kilogram, the `totalMeasurementUnit` is `"KG"`. * * Supported values: * `"ML"`, `"CL"`, `"L"`, `"CBM"`, `"MG"`, `"G"`, `"KG"`, `"MM"`, `"CM"`, `"M"`, `"SQM"`, `"OZ"`, `"LB"`, `"FLOZ"`, `"PT"`, `"QT"`, `"GAL"`, `"IN"`, `"FT"`, `"YD"`, `"SQFT"`. */ totalMeasurementUnit: string; /** * Product’s base weight, volume, or area. For example, for a product weighing 1 kilogram, the `baseQuantity` could be `100` (grams). */ baseQuantity: number; /** * Base measurement unit of weight, volume, or area. For example, if your product weighs 1 kilogram, and the `baseQuantity` is `100` grams, `baseMeasurementUnit` is `"G"`. * * Supported values: * `"ML"`, `"CL"`, `"L"`, `"CBM"`, `"MG"`, `"G"`, `"KG"`, `"MM"`, `"CM"`, `"M"`, `"SQM"`, `"OZ"`, `"LB"`, `"FLOZ"`, `"PT"`, `"QT"`, `"GAL"`, `"IN"`, `"FT"`, `"YD"`, `"SQFT"`. */ baseMeasurementUnit: string; }; } /** * Event that is fired when a quick action bar item is clicked. * [Read more](https://www.wix.com/corvid/reference/$w.QuickActionBarItemClickedEvent.html#) */ namespace QuickActionBarItemClickedEvent { /** * An object representing a quick action bar item. */ type QuickActionBarItem = { /** * The quick action bar item type. * * One of: * * + `"3dots"` * + `"3dotsvertical"` * + `"about"` * + `"add"` * + `"address"` * + `"arrowdown"` * + `"arrowup"` * + `"blog"` * + `"booking"` * + `"briefcase"` * + `"clock"` * + `"clothes"` * + `"cloud"` * + `"contactform"` * + `"creditcard"` * + `"crown"` * + `"currency"` * + `"earth"` * + `"ecom"` * + `"email"` * + `"facebook"` * + `"flag"` * + `"flickr"` * + `"freebutton"` * + `"gallery"` * + `"googleplus"` * + `"hamburgermenu"` * + `"heart"` * + `"home"` * + `"hot"` * + `"hotel"` * + `"hotsale"` * + `"icecream"` * + `"instagram"` * + `"lightning"` * + `"link"` * + `"linkedin"` * + `"music"` * + `"new"` * + `"page"` * + `"phone"` * + `"pinterest"` * + `"present"` * + `"register"` * + `"restaurant"` * + `"rocket"` * + `"sale"` * + `"search"` * + `"shoppingcart"` * + `"signup"` * + `"smile"` * + `"social"` * + `"speaker"` * + `"star"` * + `"ticket"` * + `"twitter"` * + `"vimeo"` * + `"vk"` * + `"yelp"` * + `"youtube"` */ itemType: string; /** * The quick action bar item label. */ label: string; /** * The quick action bar item link. */ link: string; }; } /** * Radio button groups are used for selecting one of a number of * options. * [Read more](https://www.wix.com/corvid/reference/$w.RadioButtonGroup.html#) */ namespace RadioButtonGroup { /** * An object used by the `options` property that contains the attributes of a radio button item. */ type Option = { /** * The value of the radio button option. This is what you use in code and is what is stored in your collections. Mandatory if `label` is not specified. */ value?: string; /** * The label of the radio button option. This is what a user sees. Mandatory if `value` is not specified. */ label?: string; }; } /** * [Selection Tags](https://support.wix.com/en/article/adding-and-setting-up-selection-tags) are used for selecting one or more options. * [Read more](https://www.wix.com/corvid/reference/$w.SelectionTags.html#) */ namespace SelectionTags { /** * An object used by the [`options`](#options) property that contains the attributes of the selection tag item. */ type Option = { /** * The value of the selection tag option. This is what you use in code and is what is stored in your collections. */ value: string; /** * The label of the selection tag option. This is what a site visitor sees. */ label: string; }; } /** * A table for displaying data. * [Read more](https://www.wix.com/corvid/reference/$w.Table.html#) */ namespace Table { /** * An object used by the `columns` property that * contains the properties that define a table column. Table columns do not * store any data. */ type Column = { /** * The column ID. */ id: string; /** * The location of the data displayed * in the column. * * When the table is populated by a connection to a dataset, the `dataPath` * value is a field key from the collection that the dataset is connected to. The * `dataPath` can contain a [reference field](https://support.wix.com/en/article/about-reference-fields-in-database-collections) * by prefixing the field with the referenced collection name and a period. For example, * `"dataPath": "writer.name"`. * * When the table is populated by using the [`rows`](#rows) or * [`dataFetcher`](#dataFetcher) properties, the `dataPath` value is one of the * property keys from the table's row objects. */ dataPath: string; /** * The column header label. */ label: string; /** * The type of data in this column: `"number"`, `"string"`, `"date"`, `"image"`, `"bool"`, or `"richText"`. */ type: string; /** * The pixel width of the column. */ width?: number; /** * Whether the column is visible. */ visible?: boolean; /** * The location of the links used when * the items in the column are clicked. * * When the table is populated by a connection to a dataset, the `linkPath` * value is a field key from the collection that the dataset is connected to. * The collection field can be a [regular field](https://support.wix.com/en/article/about-database-collections#regular-fields) * that contains URLs, a [calculated field](https://support.wix.com/en/article/about-database-collections#calculated-fields), or a [reference field](https://support.wix.com/en/article/about-reference-fields-in-database-collections) * that contains relative links to dynamic pages. * * When the table is populated by using the [`rows`](#rows) or * [`dataFetcher`](#dataFetcher) properties, the `linkPath` value is one of the * property keys from the table's rows objects. * The property values associated with that key contain URLs or relative links. */ linkPath?: string; }; /** * An object used by the `pagination` property that * contains the pagination options which determine if and how the table * is paginated. */ type PaginationOptions = { /** * The type of pagination. * One of: * * + `"normal"`: No pagination. The table is scrollable if there are more * rows than can be displayed at once. All data is fetched at once. * + `"pagination"`: The data is separated into pages which are navigatable * using paging buttons. New data is fetched when a user clicks on a * paging button. * + `"virtual"`: The data is separated into pages which are navigated by * scrolling. New data is fetched when user a user scrolls below the * displayed rows. */ type: string; /** * The number of rows per page. */ rowsPerPage: number; }; } /** * A thank you page displayed when an order is created. * [Read more](https://www.wix.com/corvid/reference/$w.ThankYouPage.html#) */ namespace ThankYouPage { /** * An object representing address information. */ type Address = { /** * Address in readable format. */ formatted: string; /** * City. */ city?: string; /** * Country. */ country?: string; /** * Main address information. */ addressLine?: string; /** * Additional address information (apt, floor, etc.). */ addressLine2?: string; /** * Alternative property for street name and number. */ streetAddress?: ThankYouPage.StreetAddress; /** * Postal/zip code. */ postalCode?: string; /** * Subdivision of a country, such as a state or province. */ subdivision?: string; }; /** * An object representing a coupon applied to the order. */ type AppliedCoupon = { /** * Coupon ID. */ couponId: string; /** * Coupon name. */ name: string; /** * Coupon code. */ code: string; }; /** * An object representing an order's billing info. */ type BillingInfo = { /** * Billing address. */ address?: ThankYouPage.Address; /** * Last name. */ lastName?: string; /** * First name. */ firstName?: string; /** * Email address. */ email?: string; /** * Phone number. */ phone?: string; /** * Company name. */ company?: string; /** * VAT information. */ vatId?: ThankYouPage.VatId; }; /** * An object representing information about the buyer. */ type BuyerInfo = { /** * Unique buyer's ID. */ id: string; /** * Buyer's email address. */ email: string; /** * Buyer's first name. */ firstName: string; /** * Buyer's last name. */ lastName: string; /** * Buyer's identity. * One of: * * * - `"MEMBER"`: A logged-in site member. * - `"CONTACT"`: A Wix contact. */ identityType: string; /** * Buyer's phone number. */ phone?: string; }; /** * An object representing information about the sales channel that submitted this order. */ type ChannelInfo = { /** * Order ID from an external system (e.g., eBay or Amazon). */ externalOrderId?: string; /** * URL to the order in the external system (e.g., eBay or Amazon). */ externalOrderUrl?: string; /** * Sales channel that submitted the order. * One of: * * * + `"WEB"`: Wix online store. * + `"POS"`: Point of sale. * + `"EBAY"`: eBay. * + `"OTHER_PLATFORM"`: Order imported from another system (e.g., Cart2Cart). * + `"WIX_APP_STORE"`: Order created via the Wix mobile app. */ type: string; }; /** * An object representing a custom field added by the customer during the checkout process. */ type CustomField = { /** * Custom field's title. */ title: string; /** * Title translated into the buyer's language. */ translatedTitle: string; /** * Custom field's text. */ value: string; }; /** * An object representing a custom text field. */ type CustomTextField = { /** * Field title. */ title: string; /** * Field value. */ value: string; }; /** * An object representing a discount applied to the order. */ type Discount = { appliedCoupon: ThankYouPage.AppliedCoupon; }; /** * An object representing information about the identity of the order initiator. * Occasionally, the person that completes the order isn't the buyer. For example, this occurs when an order is created using a point of sale terminal. */ type EnteredBy = { id: string; /** * Order was created by one of the following: * * * + `"USER"`: Wix user who performed a POS transaction on behalf of the buyer. * + `"MEMBER"`: Logged-in site member. * + `"CONTACT"`: A Wix contact. */ identityType: string; }; /** * An object representing an line item's price information. */ type LineItemPriceData = { /** * Price of the item. */ price: number; /** * Total price charged to the customer (per line item) after calculation of quantity and discount. */ totalPrice: number; /** * Whether the price includes tax. */ taxIncludedInPrice: boolean; }; /** * An object representing a line item's primary media item. */ type MediaItem = { /** * Image description for accessibility purposes. */ altText?: string; /** * Unique media item ID. */ id: string; /** * Media item external URL. */ externalImageUrl?: string; /** * Media item source URL for media uploaded to Wix. */ src: string; /** * Media item width. * One of: * * * - `"IMAGE"`: Image item. * - `"UNSPECIFIED_MEDIA_TYPE_ITEM"`: Media item type can't be classified due to an error. */ type: string; }; /** * An object representing a line item option. */ type Option = { /** * Name of the product option. */ option: string; /** * Selected option. */ selection: string; }; /** * An object representing an order. */ type Order = { /** * Unique order ID. */ _id: string; /** * Date and time the order was updated. */ _updatedDate: Date; /** * The site's displayed language. */ buyerLanguage: string; /** * The shopping cart's unique ID. */ cartId?: string; /** * Channel information. */ channelInfo: ThankYouPage.ChannelInfo; /** * Identity of the order's operator. */ enteredBy: ThankYouPage.EnteredBy; /** * Billing information. */ billingInfo?: ThankYouPage.BillingInfo; /** * Buyer information. */ buyerInfo: ThankYouPage.BuyerInfo; /** * A note added by the buyer. */ buyerNote?: string; /** * Date and time the order was created. */ _dateCreated: Date; /** * Order currency. */ currency: string; /** * Running order number. */ number: number; /** * Shipping information. */ shippingInfo?: ThankYouPage.OrderShippingInfo; /** * Order items. */ lineItems: ThankYouPage.OrderLineItem[]; /** * Order totals. */ totals: ThankYouPage.Totals; /** * The unit in which the order's weight is measured. Either `"KG"` or `"LB"`. */ weightUnit: string; /** * Information about a custom field. */ customField?: ThankYouPage.CustomField; /** * Discount information. */ discount?: ThankYouPage.Discount; }; /** * An object representing a line item in an order. */ type OrderLineItem = { /** * Custom text. */ customTextFields?: ThankYouPage.CustomTextField[]; /** * Line item product ID. */ productId?: string; /** * Type of the line item. * One of: * * * - `"DIGITAL"`: Digital item. * - `"PHYSICAL"`: Physical item. * - `"CUSTOM_AMOUNT_ITEM"`: Item with a custom price. */ lineItemType?: string; /** * Information about the line item's primary media item. */ mediaItem: ThankYouPage.MediaItem; /** * Name of the line item. */ name: string; /** * Notes about the line item. */ notes?: string; /** * Line item options. */ options: ThankYouPage.Option[]; /** * Deprecated: see priceData. */ price: number; /** * Line item quantity. */ quantity: number; /** * Line item stock keeping unit. */ sku: string; /** * Deprecated: see priceData. */ totalPrice: number; /** * Line item weight. */ weight: number; /** * Line item index. */ index: number; /** * Line item's name, translated into the customer's language. */ translatedName: string; /** * Line item's discount amount. */ discount?: number; /** * Line item's total amount of tax applied. */ tax?: number; /** * Price information. */ priceData?: ThankYouPage.LineItemPriceData; /** * Tax group ID. */ taxGroupId?: string; /** * Line item's fulfiller ID. */ fulfillerId: string; /** * Line item's variant ID. */ variantId: string; }; /** * An object representing an order's shipping information. */ type OrderShippingInfo = { /** * Expected date of delivery. */ deliverByDate?: Date; /** * Delivery option name. */ deliveryOption: string; /** * Estimated time until delivery. */ estimatedDeliveryTime?: string; /** * Shipment details (empty if order was designated for pickup). */ shipmentDetails?: ThankYouPage.ShipmentDetails; /** * Pickup details (empty if order was designated for delivery). */ pickupDetails?: ThankYouPage.PickupDetails; /** * Shipping region. */ shippingRegion?: string; }; /** * An object representing an order's pickup details. */ type PickupDetails = { /** * Pickup instructions. */ pickupInstructions?: string; /** * Pickup address. */ pickupAddress?: ThankYouPage.Address; /** * First name. */ firstName?: string; /** * Last name. */ lastName?: string; /** * Email address. */ email?: string; /** * Phone number. */ phone?: string; }; /** * An object representing an order's shipping details. */ type ShipmentDetails = { /** * Shipping address. */ address?: ThankYouPage.Address; /** * Last name. */ lastName?: string; /** * First name. */ firstName?: string; /** * Email address. */ email?: string; /** * Phone number. */ phone?: string; /** * Company name. */ company?: string; /** * VAT information. */ vatId?: ThankYouPage.VatId; /** * Deprecated: see priceData. */ tax?: number; /** * Deprecated: see priceData. */ discount?: number; /** * Shipment price information. */ priceData?: ThankYouPage.ShipmentPriceData; }; /** * An object representing shipment price information. */ type ShipmentPriceData = { /** * Price of the item. */ price: number; /** * Whether the price includes tax. */ taxIncludedInPrice: boolean; }; /** * An object representing information about the street name and street number of an address. */ type StreetAddress = { /** * Address street name. */ name: string; /** * Address street number. */ number: string; }; type SubscriptionInfo = { /** * ID of the current subscription's cycle. */ id: string; /** * Current cycle number. For example, if the subscription is in the 3rd month of a 4-month subscription, the value will be `3`. */ cycleNumber: number; /** * Subscription settings. */ subscriptionSettings: ThankYouPage.SubscriptionSettings; /** * Subscription option information. */ subscriptionOptionInfo: ThankYouPage.SubscriptionOptionInfo; }; type SubscriptionOptionInfo = { /** * Subscription option ID. */ id: string; /** * Subscription option title. For example, "Coffee of the week". */ title: string; /** * Subscription option description. For example, "Subscribe and get 15% off". */ description: string; }; type SubscriptionSettings = { /** * Frequency of recurring payment. * Supported values: * * + `"DAY"` * + `"WEEK"` * + `"MONTH"` * + `"YEAR"` */ frequency: string; /** * Whether subscription is renewed automatically at the end of each period. */ autoRenewal: boolean; /** * Number of billing cycles before subscription ends. Ignored if `autoRenewal: false`. */ billingCycles: number; }; /** * An object representing an order's totals. */ type Totals = { /** * Total calculated discount amount. */ discount?: number; /** * Total quantity of the the order's line items. */ quantity: number; /** * Total shipping price, including tax. */ shipping?: number; /** * Subtotal of all the order's line items, excluding tax. */ subtotal: number; /** * Total amount of tax. */ tax?: number; /** * Total price. */ total: number; /** * Total weight of the order's items. */ weight: number; }; /** * An object representing value added tax (VAT) information. */ type VatId = { /** * VAT number. */ number: string; /** * VAT type. Either `"CPF"` or `"CNPJ"`. */ type: string; }; } /** * An input element for capturing the time of day. * [Read more](https://www.wix.com/corvid/reference/$w.TimePicker.html#) */ namespace TimePicker { /** * An object representing an available time slot for a time picker. */ type TimeSlot = { /** * Start time for the time slot. The `startTime` must be earlier than the `endTime`, and * be in one of the following formats: * + `HH:MM` (hours and minutes) * + `HH:MM:SS` (hours, minutes, and seconds) * + `HH:MM:SS.mmm` (hours, minutes, seconds, and milliseconds) * * `HH` is a 2-digit value between 0-23. * * `MM` is a 2-digit value between 0-59. * * `SS` is a 2-digit value between 0-59. Seconds are rounded down to the nearest minute. * * `mmm` is a 3-digit value between 0-999. Milliseconds are rounded down to the nearest second. * * * The time picker's first input time option is the `startTime`. * This means that if the `startTime` is '10:00', the first input time option is '10:00'. */ startTime: string; /** * End time for the time slot. The `endTime` must be later than the `startTime`, and * be in one of the following formats: * + `HH:MM` (hours and minutes) * + `HH:MM:SS` (hours, minutes, and seconds) * + `HH:MM:SS.mmm` (hours, minutes, seconds, and milliseconds) * * `HH` is a 2-digit value between 0-23. * > Note that '24:00' is a valid `endTime` in order for '23:59' to be an input time option. * * `MM` is a 2-digit value between 0-59. * * `SS` is a 2-digit value between 0-59. Seconds are rounded down to the nearest minute. * * `mmm` is a 3-digit value between 0-999. Milliseconds are rounded down to the nearest second. * * * The `endTime` is not included in the time picker's input time options. This means that if the `endTime` * is '11:00', the time picker's last input time option (assuming [`step`](#step) is '1'), is '10:59'. */ endTime: string; }; } /** * An upload button enables site visitors to upload files to your site. * [Read more](https://www.wix.com/corvid/reference/$w.UploadButton.html#) */ namespace UploadButton { /** * The object used by the [`value`](#value) property that represents files ready for upload. */ type File = { /** * File name. */ name: string; /** * File size in bytes. */ size: number; /** * `true` if the file is valid for upload to the Media Manager. */ valid: boolean; /** * Message indicating why the file is invalid. Empty if the file is valid. */ validationMessage: string; }; /** * The error message object returned when the `uploadFiles()`'s Promise is rejected. */ type UploadError = { /** * The error's code. */ errorCode: string; /** * The error's description. */ errorDescription: string; }; /** * Object returned by the `startUpload()`'s Promise. */ type UploadFile = { /** * Wix URL of the successfully uploaded file. */ url: string; /** * Wix media ID of the uploaded file. */ mediaId: string; /** * Title of the uploaded file. */ title: string; /** * Width of an uploaded image or video file. */ width: number; /** * Height of an uploaded image or video file. */ height: number; /** * Duration (in milliseconds) of an uploaded audio file. */ duration: number; }; /** * An array of objects returned by the `uploadFiles()`'s Promise. */ type UploadedFile = { /** * Width of an uploaded image or video file. */ width: number; /** * Height of an uploaded image or video file. */ height: number; /** * Duration (in milliseconds) of an uploaded audio file. */ duration: number; /** * Wix media URL of the successfully uploaded file in the following format: `'wix:image://v1//#originWidth=&originHeight=[&watermark=]'`. * * **Note:** This replaces the old `fileName` parameter. `fileName` will continue to work, but we recommend that you use the updated `fileUrl` parameter instead. */ fileUrl: string; /** * **Deprecated**. Use the `fileUrl` property instead. * * Internal file name of the uploaded file, generated by the Media Manager. The name is the string located in the file's URL. Click [here](https://www.wix.com/velo/forum/tips-tutorials-examples/creating-a-url-for-a-media-file-or-the-truth-about-getfileurl) to learn more. */ fileName: string; /** * Original name of the uploaded file. */ originalFileName: string; }; /** * Contains detailed information about the validity states of a file to upload. */ type ValidityState = { /** * `true` if the file's custom validity message has been set to a non-empty string. */ customError: boolean; /** * `true` if the file to upload meets all validations. */ valid: boolean; /** * `true` if a file is required, and either no file has been selected, or a file has been selected but not uploaded. */ fileNotUploaded: boolean; /** * `true` if a file has been selected but it is too large. Maximum allowed file sizes are listed [here](https://support.wix.com/en/article/supported-media-file-types-and-file-sizes). */ fileSizeExceedsLimit: boolean; /** * `true` if a file has been selected but the file's type is not supported. Supported file types are listed [here](https://support.wix.com/en/article/supported-media-file-types-and-file-sizes). */ fileTypeNotAllowed: boolean; /** * `true` if a file is required but no file has been selected. */ valueMissing: boolean; /** * `true` if the text input element's value does not match its type when the type is email or url. */ typeMismatch: boolean; /** * `true` if the element's value does not match its pattern validation. */ patternMismatch: boolean; /** * `true` if the length of the element's value exceeds its [`maxLength`]($w.TextInputMixin.html#maxLength) property. */ tooLong: boolean; /** * `true` if the length of the element's value is smaller than its `minlength` property. */ tooShort: boolean; /** * `true` if the element's value is less than the its [`min`]($w.TextInput.html#min) property. */ rangeUnderflow: boolean; /** * `true` if the element's value is more than the its [`max`]($w.TextInput.html#max) property. */ rangeOverflow: boolean; /** * `true` if a text input element's numeric value is defined as a whole number but a decimal number is entered. */ stepMismatch: boolean; /** * `true` if the element's value cannot be converted to a value. */ badInput: boolean; /** * `true` if the number of files selected exceeds the limit defined in the `fileLimit` property. */ exceedsFileLimit: boolean; /** * `true` if the element's time value is not a valid time. */ invalidTime: boolean; /** * `true` if the element's date value is not a valid date. */ invalidDate: boolean; }; } /** * Provides functionality for elements that can be validated. * [Read more](https://www.wix.com/corvid/reference/$w.ValidatableMixin.html#) */ namespace ValidatableMixin { /** * Contains detailed information about the validity states of an element. */ type ValidityState = { /** * `true` if the element's custom * validity message has been set to a non-empty string. */ customError: boolean; /** * `true` if the element meets all * constraint validations. */ valid: boolean; /** * `true` if the element's * [`required`]($w.RequiredMixin.html#required) property is `true`, but * it does not contain a value. */ valueMissing: boolean; /** * `true` if the text input element's value * does not match its type when the type is email or url. */ typeMismatch: boolean; /** * `true` if the element's * value does not match its pattern validation. */ patternMismatch: boolean; /** * `true` if the length of the * element's value exceeds its [`maxLength`]($w.TextInputMixin.html#maxLength) * property. */ tooLong: boolean; /** * `true` if the length of the * element's value is smaller than its `minlength` property. */ tooShort: boolean; /** * `true` if the element's * value is less than its [`min`]($w.TextInput.html#min) property. */ rangeUnderflow: boolean; /** * `true` if the element's * value is more than its [`max`]($w.TextInput.html#max) property. */ rangeOverflow: boolean; /** * `true` if the element is * an upload button that is required and a file has been selected but not * uploaded. */ fileNotUploaded: boolean; /** * `true` if a text input * element's numeric value is defined as a whole number but a decimal * number is entered. */ stepMismatch: boolean; /** * `true` if the element's value * cannot be converted to a value. */ badInput: boolean; /** * `true` if the element's time value * is not a valid time. */ invalidTime: boolean; /** * `true` if the element's date value * is not a valid date. */ invalidDate: boolean; }; } /** * The ViewChangeEvent is triggered when the month or year changes on a date picker or appointment field element. * [Read more](https://www.wix.com/corvid/reference/$w.ViewChangeEvent.html#) */ namespace ViewChangeEvent { /** * An object that contains information about the date picker or appointment field for which an event was triggered. */ type ViewChangeEventOptions = { /** * Start date of the currently displayed month. */ startDate: Date; /** * End date of the currently displayed month. */ endDate: Date; /** * Result returned by the operation. */ operationResult: any; }; } /** * A `$w` element for enabling your site contacts and visitors to work with the Wix Forms app. * [Read more](https://www.wix.com/corvid/reference/$w.WixForms.html#) */ namespace WixForms { /** * Handles events fired when the Wix Form is about to be submitted. */ type WixFormSubmitEventHandler = (event: WixFormSubmitEvent) => any | boolean; /** * Handles events fired when the Wix Form is not submitted due to error. */ type WixFormSubmittedErrorEventHandler = (errorEvent: WixFormSubmittedErrorEvent) => void; /** * Handles events fired when the Wix Form is submitted. */ type WixFormSubmittedEventHandler = (event: WixFormSubmittedEvent) => void; } } }