import type { XCUITestDriver } from '../driver';
export type AlertAction = 'accept' | 'dismiss' | 'getButtons';
interface AlertOptions {
    buttonLabel?: string;
}
/**
 * Gets the text of the currently displayed alert.
 *
 * @returns The alert text, or null if no alert is displayed
 */
export declare function getAlertText(this: XCUITestDriver): Promise<string | null>;
/**
 * Sets the text in an alert input field.
 *
 * @param value - The text to set
 */
export declare function setAlertText(this: XCUITestDriver, value: string): Promise<void>;
/**
 * Accepts the currently displayed alert.
 *
 * @param opts - Options including optional button label
 */
export declare function postAcceptAlert(this: XCUITestDriver, opts?: AlertOptions): Promise<void>;
/**
 * Dismisses the currently displayed alert.
 *
 * @param opts - Options including optional button label
 */
export declare function postDismissAlert(this: XCUITestDriver, opts?: AlertOptions): Promise<void>;
/**
 * Tries to apply the given action to the currently visible alert.
 *
 * @param action - The actual action to apply
 * @param buttonLabel - The name of the button used to perform the chosen alert action. Only makes sense if the action is `accept` or `dismiss`
 * @returns If `action` is `getButtons`, a list of alert button labels; otherwise nothing
 * @remarks This should really be separate commands.
 */
export declare function mobileHandleAlert(this: XCUITestDriver, action: AlertAction, buttonLabel?: string): Promise<string[] | void>;
export {};
//# sourceMappingURL=alert.d.ts.map