@vibe/testkit
Version:
Vibe e2e testing toolkit
103 lines • 3.7 kB
TypeScript
import { Locator, Page } from "@playwright/test";
import { BaseElement } from "./BaseElement";
/**
* Class representing a Steps component.
* Extends the BaseElement class.
* Provides methods to interact with all Steps component functionality including navigation buttons,
* step indicators, and step content.
*/
export declare class Steps extends BaseElement {
private backButton;
private nextButton;
private finishButton;
/**
* Create a Steps element.
* @param {Page} page - The Playwright page object.
* @param {Locator} locator - The locator for the Steps element.
* @param {string} elementReportName - The name for reporting purposes.
*/
constructor(page: Page, locator: Locator, elementReportName: string);
/**
* Click the back button to go to the previous step.
* @returns {Promise<void>}
*/
goToPreviousStep(): Promise<void>;
/**
* Click the next button to go to the next step.
* @returns {Promise<void>}
*/
goToNextStep(): Promise<void>;
/**
* Click the finish button to complete the steps.
* @returns {Promise<void>}
*/
finish(): Promise<void>;
/**
* Check if the back button is enabled.
* @returns {Promise<boolean>} True if the back button is enabled.
*/
isBackButtonEnabled(): Promise<boolean>;
/**
* Check if the next button is enabled.
* @returns {Promise<boolean>} True if the next button is enabled.
*/
isNextButtonEnabled(): Promise<boolean>;
/**
* Check if the finish button is visible.
* @returns {Promise<boolean>} True if the finish button is visible.
*/
isFinishButtonVisible(): Promise<boolean>;
/**
* Get all step dots (for gallery type steps).
* @returns {Promise<Locator[]>} An array of step dot locators.
*/
private getStepDots;
/**
* Click on a specific step dot to navigate to that step.
* @param {number} stepIndex - The index of the step to navigate to (0-based).
* @returns {Promise<void>}
*/
clickStepDot(stepIndex: number): Promise<void>;
/**
* Get the current step index from the steps numbers header (for numbers type steps).
* @returns {Promise<number>} The current step index (0-based).
*/
getCurrentStepIndex(): Promise<number>;
/**
* Get the total number of steps from the steps numbers header (for numbers type steps).
* @returns {Promise<number>} The total number of steps.
*/
getTotalStepsCount(): Promise<number>;
/**
* Check if a specific step dot is active (for gallery type steps).
* @param {number} stepIndex - The index of the step to check (0-based).
* @returns {Promise<boolean>} True if the step dot is active.
*/
isStepDotActive(stepIndex: number): Promise<boolean>;
/**
* Get the active step dot index (for gallery type steps).
* @returns {Promise<number>} The index of the active step dot (-1 if none active).
*/
getActiveStepDotIndex(): Promise<number>;
/**
* Get the current step content element.
* @returns {Promise<Locator>} The locator for the current step content.
*/
getCurrentStepContent(): Promise<Locator>;
/**
* Wait for the steps component to be fully loaded and interactive.
* @returns {Promise<void>}
*/
waitForStepsToLoad(): Promise<void>;
/**
* Navigate through all steps from beginning to end.
* @returns {Promise<void>}
*/
navigateToEnd(): Promise<void>;
/**
* Navigate back to the first step.
* @returns {Promise<void>}
*/
navigateToBeginning(): Promise<void>;
}
//# sourceMappingURL=Steps.d.ts.map