// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
///
// ***************************************************************
// Each command should be properly documented using JSDoc.
// See https://jsdoc.app/index.html for reference.
// Basic requirements for documentation are the following:
// - Meaningful description
// - Each parameter with `@params`
// - Return value with `@returns`
// - Example usage with `@example`
// Custom command should follow naming convention of having `ui` prefix, e.g. `uiOpenFilePreviewModal`.
// ***************************************************************
declare namespace Cypress {
interface Chainable {
/**
* Get file thumbnail from a post
*
* @param {string} filename
*
* @example
* cy.uiGetFileThumbnail('image.png');
*/
uiGetFileThumbnail(filename: string): Chainable;
/**
* Get file upload preview located below post textbox
*
* @example
* cy.uiGetFileUploadPreview();
*/
uiGetFileUploadPreview(): Chainable;
/**
* Wait for file upload preview located below post textbox
*
* @example
* cy.uiGetFileUploadPreview();
*/
uiGetFileUploadPreview(): Chainable;
/**
* Get file preview modal
*
* @param {bool} option.exist - Set to false to not verify if the element exists. Otherwise, true (default) to check existence.
*
* @example
* cy.uiGetFilePreviewModal();
*/
uiGetFilePreviewModal(option: Record): Chainable;
/**
* Get Public Link
*
* @param {bool} option.exist - Set to false to not verify if the element exists. Otherwise, true (default) to check existence.
*
* @example
* cy.uiGetPublicLink();
*/
uiGetPublicLink(option: Record): Chainable;
/**
* Open file preview modal
*
* @param {string} filename
*
* @example
* cy.uiOpenFilePreviewModal('image.png');
*/
uiOpenFilePreviewModal(filename: string): Chainable;
/**
* Close file preview modal
*
* @example
* cy.uiCloseFilePreviewModal();
*/
uiCloseFilePreviewModal(): Chainable;
/**
* Get main content of file preview modal
*
* @example
* cy.uiGetContentFilePreviewModal();
*/
uiGetContentFilePreviewModal(): Chainable;
/**
* Get download link button from file preview modal
*
* @example
* cy.uiGetDownloadLinkFilePreviewModal();
*/
uiGetDownloadLinkFilePreviewModal(): Chainable;
/**
* Get download button from file preview modal
*
* @example
* cy.uiGetDownloadFilePreviewModal();
*/
uiGetDownloadFilePreviewModal(): Chainable;
/**
* Get arrow left button from file preview modal
*
* @example
* cy.uiGetArrowLeftFilePreviewModal();
*/
uiGetArrowLeftFilePreviewModal(): Chainable;
/**
* Get arrow right button from file preview modal
*
* @example
* cy.uiGetArrowRightFilePreviewModal();
*/
uiGetArrowRightFilePreviewModal(): Chainable;
}
}