import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
export declare const tableActionCellUniDriverFactory: (base: UniDriver, body: UniDriver) => {
    /**
     * Get the driver of the primary action <Button/> from the action column
     * @returns {Promise<buttonDriverFactory>}
     */
    getPrimaryActionButtonDriver: () => {
        getButtonTextContent: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isButtonDisabled: () => Promise<boolean>;
        hasSkin: (skinName: import("..").ButtonSkin) => Promise<boolean>;
        isPrefixIconExists: () => Promise<boolean>;
        isSuffixIconExists: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver;
    };
    /**
     * Get the driver of a specific primary action <Button/> by dataHook (for array format)
     * @param {string} dataHook - DataHook of the primary action
     * @returns {Promise<buttonDriverFactory>}
     */
    getPrimaryActionButtonDriverByDataHook: (dataHook: string) => {
        getButtonTextContent: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isButtonDisabled: () => Promise<boolean>;
        hasSkin: (skinName: import("..").ButtonSkin) => Promise<boolean>;
        isPrefixIconExists: () => Promise<boolean>;
        isSuffixIconExists: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver;
    };
    /**
     * Get the number of primary actions (for array format)
     * @returns {Promise<number>} number of primary actions
     */
    getPrimaryActionsCount: () => Promise<number>;
    /**
     * Gets primary action visibility value
     * @returns {Promise<'onHover' | 'always'>}
     */
    getPrimaryActionButtonVisibility: () => Promise<string | null>;
    /**
     * Clicks the primary action button of the action column
     * @returns {Promise<void>}
     */
    clickPrimaryActionButton: () => Promise<void>;
    /**
     * Clicks a specific primary action button by index (for array format)
     * @param {number} actionIndex - Index of the primary action to click
     * @returns {Promise<void>}
     */
    clickPrimaryAction: (actionIndex: number) => Promise<void>;
    /**
     * Clicks a specific primary action button by dataHook (for array format)
     * @param {string} dataHook - DataHook of the primary action to click
     * @returns {Promise<void>}
     */
    clickPrimaryActionByDataHook: (dataHook: string) => Promise<void>;
    /**
     * Checks whether the primary action button is disabled
     * @returns {Promise<boolean>}
     */
    getIsPrimaryActionButtonDisabled: () => Promise<boolean>;
    /**
     * Checks whether the primary action button has an prefix icon
     * @returns {Promise<boolean>}
     */
    primaryActionButtonPrefixIconExists: () => Promise<boolean>;
    /**
     * Checks whether the primary action button has an suffix icon
     * @returns {Promise<boolean>}
     */
    primaryActionButtonSuffixIconExists: () => Promise<boolean>;
    /**
     * Get the number of the visible secondary actions
     * @returns {Promise<number>} number of visible secondary actions
     */
    getVisibleActionsCount: () => Promise<number>;
    /**
     * Get the number of hidden secondary actions (in the <PopoverMenu/>, requires it to be open)
     * @returns {Promise<number>} number of hidden secondary actions
     */
    getHiddenActionsCount: () => Promise<number>;
    /**
     * Gets a specific visible secondary action <Tooltip/> driver
     * @param {actionIndex} actionIndex
     * @returns {Promise<tooltipDriverFactory>}
     */
    getVisibleActionTooltipDriver: (actionIndex: number) => {
        click: () => Promise<void>;
        tooltipExists: () => Promise<boolean>;
        mouseEnter: () => Promise<void>;
        mouseLeave: () => Promise<void>;
        clickOutside: () => Promise<void>;
        getTooltipText: () => Promise<string | null>;
        hasSize: (sizeName: import("..").TooltipSize) => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        base: UniDriver;
    };
    /**
     * Get the driver of a specific visible secondary action <Tooltip/> by its specified dataHook
     * @param {dataHook} tooltip dataHook
     * @returns {Promise<tooltipDriverFactory>}
     */
    getVisibleActionByDataHookTooltipDriver: (dataHook: string) => {
        click: () => Promise<void>;
        tooltipExists: () => Promise<boolean>;
        mouseEnter: () => Promise<void>;
        mouseLeave: () => Promise<void>;
        clickOutside: () => Promise<void>;
        getTooltipText: () => Promise<string | null>;
        hasSize: (sizeName: import("..").TooltipSize) => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        base: UniDriver;
    };
    /**
     * Get the driver of a specific visible secondary action <Button/>
     * @param {actionIndex} actionIndex
     * @returns {Promise<buttonDriverFactory>}
     */
    getVisibleActionButtonDriver: (actionIndex: number) => {
        getButtonTextContent: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isButtonDisabled: () => Promise<boolean>;
        hasSkin: (skinName: import("..").ButtonSkin) => Promise<boolean>;
        isPrefixIconExists: () => Promise<boolean>;
        isSuffixIconExists: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver;
    };
    /**
     * Gets a specific visible secondary action <Button/> driver by its specified dataHook
     * @param {dataHook} button dataHook
     * @returns {Promise<buttonDriverFactory>} visible action button driver
     */
    getVisibleActionByDataHookButtonDriver: (dataHook: string) => {
        getButtonTextContent: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isButtonDisabled: () => Promise<boolean>;
        hasSkin: (skinName: import("..").ButtonSkin) => Promise<boolean>;
        isPrefixIconExists: () => Promise<boolean>;
        isSuffixIconExists: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver;
    };
    /**
     * Gets the hidden secondary action <PopoverMenu/> driver
     * @returns {Promise<PopoverMenuUniDriver>}
     */
    getHiddenActionsPopoverMenuDriver: () => import("../PopoverMenu/PopoverMenu.uni.driver").PopoverMenuUniDriver;
    /**
     * Clicks on a visible secondary action
     * @param {actionIndex} actionIndex
     * @returns {Promise<void>}
     */
    clickVisibleAction: (actionIndex: number) => Promise<void>;
    /**
     * Clicks on a visible secondary action by its specified dataHook
     * @param {actionDataHook} actionDataHook
     * @returns {Promise<void>}
     */
    clickVisibleActionByDataHook: (actionDataHook: string) => Promise<void>;
    /**
     * Clicks on the hidden secondary actions <PopoverMenu/>
     * @returns {Promise<void>}
     */
    clickPopoverMenu: () => Promise<void>;
    /**
     * Clicks on a hidden secondary action (requires the <PopoverMenu/> to be open)
     * @param {actionIndex} actionIndex
     * @returns {Promise<void>}
     */
    clickHiddenAction: (actionIndex: number) => Promise<void>;
    /**
     * Clicks hidden action by data hook
     * @param {actionDataHook} actionDataHook
     * @returns {Promise<void>}
     */
    clickHiddenActionByDataHook: (actionDataHook: string) => Promise<void>;
    /**
     * Gets tooltip text of more actions toggle button
     * @return {Promise<string>}
     */
    getMoreActionsTooltipText: () => Promise<string | null>;
    exists: () => Promise<boolean>;
    element: () => Promise<any>;
    click: () => Promise<void>;
    base: UniDriver;
};
export type TableActionCellUniDriver = ReturnType<typeof tableActionCellUniDriverFactory>;
//# sourceMappingURL=TableActionCell.uni.driver.d.ts.map