import { Locator } from "playwright/test";
/**
 * Asserts that two values are equal.
 *
 * @param {unknown} actual - the actual value.
 * @param {unknown} expected - the expected value.
 */
export declare function uiAssertEqual(actual: unknown, expected: unknown): Promise<void>;
/**
 * Asserts that two values are not equal.
 *
 * @param {unknown} actual - the actual value.
 * @param {unknown} expected - the expected value.
 */
export declare function uiAssertNotEqual(actual: unknown, expected: unknown): Promise<void>;
/**
 * Asserts that the value of an input field matches the expected value.
 *
 * @param {string} elementId - the Id of the element.
 * @param {string} [expectedValue] - the expected value of the input field.
 * @returns {error} - throws an error if the value does not match.
 */
export declare function uiAssertValue(elementId: string, expectedValue?: string): Promise<void>;
/**
 * Asserts that an element has the expected attribute value using Playwright's toHaveAttribute.
 */
export declare function uiAssertAttribute(elementId: string, attributeName: string, expectedValue: string): Promise<void>;
/**
 * Asserts that the inner text of an element matches the expected value.
 *
 * @param {string} elementId - the Id of the element.
 * @param {string} expectedValue - the expected inner text of the element.
 * @returns {Error} - throws an error if the text does not match.
 */
export declare function uiAssertInnerText(elementId: string, expectedValue?: string): Promise<void>;
export declare function uiAssertElementVisibility(elementId: string, expectedValue: boolean): Promise<void>;
export declare function uiAssertInnerHtml(elementId: string, expectedHtml: string): Promise<void>;
export declare function uiAssertAllElementsHaveText(elementsToAssert: Locator[], expectedValue: string): Promise<void>;
export declare function uiAssertImage(imageElementId: string, expectedUrl: string): Promise<void>;
export declare function uiAssertScreenshot(screenshotName: string): Promise<void>;
/**
 * Asserts that a checkbox or switch has the expected checked value.
 * Supports native <input type="checkbox">, Base UI Switch (nested input), and role="checkbox" + aria-checked.
 *
 * @param elementId - The id of the checkbox/switch element.
 * @param expected - The expected checked state.
 * @throws {Error} If the checkbox value does not match the expected value.
 */
export declare function uiAssertCheckboxValue(elementId: string, expected: boolean): Promise<void>;
/**
 * Clicks a checkbox or switch. Uses the visible [role="checkbox"] (Switch UI), not the
 * hidden form input, which is outside the viewport and fails Playwright click.
 */
export declare function uiClickCheckboxOrSwitch(elementId: string): Promise<void>;
export declare function uiAssertElementDoesntExist(elementId: string): Promise<void>;
