import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
export declare function PickerModalUniDriver(base: UniDriver, body: UniDriver, { dataHook }?: {
    dataHook?: string;
}): {
    isOpen: () => Promise<boolean>;
    wait: (timeout?: number) => Promise<void>;
    modalLayoutExists: () => Promise<boolean>;
    pickerExists: () => Promise<boolean>;
    waitPicker: (timeout?: number) => Promise<void>;
    waitModalClosed: (timeout?: number) => Promise<void>;
    /** Indicates whether the modal is open */
    isModalOpen: () => Promise<boolean>;
    /** Get the modal layout title text */
    getTitleText: () => Promise<string>;
    /** Get the modal layout subtitle text */
    getSubtitleText: () => Promise<string>;
    /** Clear the search input */
    clearSearchTerm: () => Promise<void>;
    /** Enter a value to the search input */
    enterSearchTerm: (value: string) => Promise<void>;
    /** Get the value of the search input  */
    getSearchTerm: () => Promise<string>;
    /** Get the placeholder of the search input */
    getSearchPlaceholder: () => Promise<string | null>;
    searchExists: () => Promise<boolean>;
    waitSearchLoader: (timeout?: number) => Promise<void>;
    waitSearchLoaderRemoved: (timeout?: number) => Promise<void>;
    floatingNotificationExists: () => Promise<boolean>;
    /**
     * Get the text of the floating notification at the top of the list
     */
    getFloatingNotificationText: () => Promise<string>;
    waitInitialLoader: (timeout?: number) => Promise<void>;
    waitInitialLoaderRemoved: (timeout?: number) => Promise<void>;
    /** Get the number of rows currently rendered inside the selector list */
    numberOfItemsInList: () => Promise<number>;
    /** Get the number of selected rows */
    getTotalSelected: () => Promise<number>;
    /**
     * Triggers "scroll" event on the list.
     */
    scrollDown: () => Promise<void>;
    /**
     * Toggles selector of the item at the passed index.
     * @param {number} index Item index
     * @returns {Promise<void>} Resolves when selector is toggled.
     */
    toggleSelectorAt: (index: number) => Promise<void>;
    /**
     * Checks whether the selector of the item at the passed index is checked.
     * @param {number} index Item index
     * @returns {Promise<boolean>}
     */
    isSelectorCheckedAt: (index: number) => Promise<boolean>;
    /**
     * Checks whether the item at the passed index is disabled.
     * @param {number} index Item index
     * @returns {Promise<boolean>}
     */
    isListItemDisabledAt: (index: number) => Promise<boolean>;
    /**
     * Wait for a item to be added to the list
     * @param index
     * @param timeout
     */
    waitListItemAt: (index: number, timeout?: number) => Promise<void>;
    /**
     * Get the title text of a list item
     * @param index
     */
    getTitleTextAt: (index: number) => Promise<string>;
    /** Indicates whether item checkbox is in indeterminate mode  */
    isIndeterminateAt: (index: number) => Promise<boolean>;
    /**
     * Get the sub-title text of a list item
     * @param index
     */
    getSubtitleTextAt: (index: number) => Promise<string>;
    /**
     * Get the image element of a list item
     * @param index
     */
    getImageElementAt: (index: number) => Promise<HTMLImageElement>;
    /**
     * Get the extra node element of a list item
     * @param index
     */
    getExtraNodeElementAt: (index: number) => Promise<HTMLElement>;
    /**
     * Get the tooltip toggle text of a list item
     * @param index
     */
    getToggleTooltipTextAt: (index: number) => Promise<string | null>;
    /**
     * Indicates whether the initial loader of the modal is shown
     */
    initialLoaderExists: () => Promise<boolean>;
    /** Get empty state within the modal that by a specific data hook */
    getEmptyStateByDataHook: (dataHook: string) => import("@wix/design-system/dist/types/EmptyState/EmptyState.uni.driver").EmptyStateUniDriver;
    /** Indicates whether the loader after search exists */
    searchLoaderExists: () => Promise<boolean>;
    /** Indicates whether the CTA button exists */
    ctaButtonExists: () => Promise<boolean>;
    /** Click the CTA button of the modal */
    clickCTAButton: () => Promise<void>;
    /** Click the back button on the additional step */
    clickBackButton: () => Promise<void>;
    /** Indicates whether the back button exists on the additional step */
    backButtonExists: () => Promise<boolean>;
    /** Get the text of the suffix content if exists on the additional step */
    additionalStepSuffixText: () => Promise<string>;
    /** Get the node of the suffix content if exists on the additional step */
    additionalStepSuffixNode: () => UniDriver<any, {
        parent?: any | undefined;
        base?: any;
        selector?: string | Promise<string> | undefined;
        idx?: number | undefined;
        timeBudget?: number | undefined;
    }, any>;
    /** Get the text of the item title on the additional step */
    additionalStepTitleText: () => Promise<string>;
    /** Get the text of the item subtitle on the additional step */
    additionalStepSubtitleText: () => Promise<string>;
    /** Click modal cancel button **/
    clickCancelButton: () => Promise<void>;
    /** Get the text of the cancel button */
    getCancelButtonText: () => Promise<string>;
    /** Indicates whether the cancel button exists */
    cancelButtonExists: () => Promise<boolean>;
    /** Click modal close (x) button **/
    clickCloseButton: () => Promise<void>;
    /** Get the text of the CTA button */
    getCTAButtonText: () => Promise<string>;
    /** Indicates whether the CTA button is disabled */
    isCTAButtonDisabled: () => Promise<boolean>;
    /** Get the error state before the modal content is fetched */
    getSplashErrorStateByDataHook: (dataHook: string) => import("@wix/design-system/dist/types/EmptyState/EmptyState.uni.driver").EmptyStateUniDriver;
    /** Get the error state within the modal content */
    getErrorStateByDataHook: (dataHook: string) => import("@wix/design-system/dist/types/EmptyState/EmptyState.uni.driver").EmptyStateUniDriver;
    customContentButtonExists: () => Promise<boolean>;
    getCustomContentButtonText: () => Promise<string>;
    isCustomContentButtonDisabled: () => Promise<boolean>;
    customContentButtonTooltipExists: () => Promise<boolean>;
    getCustomContentButtonTooltipText: () => Promise<string | null>;
    clickCustomContentButton: () => Promise<void>;
    getMaxSelectionLabelText: () => Promise<string>;
    getSelectAllCheckbox: () => {
        click: () => Promise<void>;
        focus: () => Promise<void>;
        isFocused: () => Promise<boolean>;
        blur: () => Promise<void>;
        isChecked: () => Promise<boolean>;
        isDisabled: () => Promise<boolean>;
        isRequired: () => Promise<boolean>;
        isIndeterminate: () => Promise<boolean>;
        isTooltipEnabled: () => Promise<boolean>;
        hasError: () => Promise<boolean>;
        getTooltipContent: () => Promise<string | null>;
        getLabel: () => Promise<string>;
        getLabelSize: () => Promise<import("@wix/design-system").TextSize>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        base: UniDriver<any, {
            parent?: any | undefined;
            base?: any;
            selector?: string | Promise<string> | undefined;
            idx?: number | undefined;
            timeBudget?: number | undefined;
        }, any>;
    };
    getSelectedItemsCountText: () => {
        getTagName: () => Promise<string>;
        getText: () => Promise<string>;
        getSize: () => Promise<import("@wix/design-system").TextSize>;
        getSkin: () => Promise<import("@wix/design-system").TextSkin>;
        getWeight: () => Promise<import("@wix/design-system").TextWeight>;
        getId: () => Promise<string>;
        isLight: () => Promise<boolean>;
        isSecondary: () => Promise<boolean>;
        isMasked: () => Promise<boolean>;
        isWidows: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver<any, {
            parent?: any | undefined;
            base?: any;
            selector?: string | Promise<string> | undefined;
            idx?: number | undefined;
            timeBudget?: number | undefined;
        }, any>;
    };
    customNotificationExists: () => Promise<boolean>;
    getFilterDropdown: (filterName: string) => import("@wix/design-system/dist/types/Dropdown/Dropdown.uni.driver").DropdownUniDriver;
    filterDropdownExists: (filterName: string) => Promise<boolean>;
    getSelectedFilterName: (filterName: string) => Promise<string>;
    selectFilterItem: (filterName: string, index: number) => Promise<void>;
    selectFilterItems: (filterName: string, ids: string[]) => Promise<void>;
    getNoResultsSubtitle: () => {
        getTagName: () => Promise<string>;
        getText: () => Promise<string>;
        getSize: () => Promise<import("@wix/design-system").TextSize>;
        getSkin: () => Promise<import("@wix/design-system").TextSkin>;
        getWeight: () => Promise<import("@wix/design-system").TextWeight>;
        getId: () => Promise<string>;
        isLight: () => Promise<boolean>;
        isSecondary: () => Promise<boolean>;
        isMasked: () => Promise<boolean>;
        isWidows: () => Promise<boolean>;
        exists: () => Promise<boolean>;
        element: () => Promise<any>;
        click: () => Promise<void>;
        base: UniDriver<any, {
            parent?: any | undefined;
            base?: any;
            selector?: string | Promise<string> | undefined;
            idx?: number | undefined;
            timeBudget?: number | undefined;
        }, any>;
    };
    getNoResultsResetButton: () => import("@wix/design-system/dist/types/Button/ButtonCore/ButtonCore.uni.driver").ButtonCoreDriver;
    exists: () => Promise<boolean>;
    click: () => Promise<void>;
    element: () => Promise<any>;
    base: UniDriver<any, {
        parent?: any | undefined;
        base?: any;
        selector?: string | Promise<string> | undefined;
        idx?: number | undefined;
        timeBudget?: number | undefined;
    }, any>;
};
export default PickerModalUniDriver;
//# sourceMappingURL=PickerModal.uni.driver.d.ts.map