import { UniDriver } from '@wix/wix-ui-test-utils/unidriver';
export declare function EditableTableUniDriver(base: UniDriver, body: UniDriver): {
    /** Number of rendered data rows */
    getRowsCount: () => Promise<number>;
    /** Number of column headers */
    getColumnsCount: () => Promise<number>;
    /** Get column header texts */
    getColumnHeaders: () => Promise<string[]>;
    /** Get a cell driver by row key and column id */
    getCell: (rowKey: string, columnId: string) => {
        click: () => Promise<void>;
        doubleClick: () => Promise<void>;
        getDisplayValue: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isEditing: () => Promise<boolean>;
        isSelected: () => Promise<boolean>;
        isReadOnly: () => Promise<boolean>;
        isInvalid: () => Promise<boolean>;
        getRowKey: () => Promise<string | null>;
        getColumnId: () => Promise<string | null>;
        hasValidationIndicator: () => Promise<boolean>;
        getTextEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            focus: () => Promise<void>;
            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>;
        };
        getNumberEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            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>;
        };
        getUrlEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            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>;
        };
        getBooleanEdit: () => {
            isChecked: () => Promise<boolean>;
            toggle: () => Promise<void>;
            keyDown: (key: string, opts?: Pick<KeyboardEventInit, "altKey" | "ctrlKey" | "metaKey" | "shiftKey"> | undefined) => Promise<void>;
            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>;
        };
        getSpecificValuesEdit: () => {
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            clickInput: () => Promise<void>;
            getValue: () => Promise<string>;
            selectOption: (id: string) => Promise<void>;
            typeInInput: (text: string) => Promise<void>;
            getOptionsContent: () => Promise<string[]>;
            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>;
        };
        getDateEdit: () => {
            getInputValue: () => Promise<string>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            clickInput: () => Promise<void>;
            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>;
        };
        getReferenceEdit: () => {
            hasInput: () => Promise<boolean>;
            /** Number of rendered data rows */
            getInputValue: () => Promise<string>;
            getAutoComplete: () => import("@wix/design-system/dist/types/AutoComplete/AutoComplete.uni.driver").AutoCompleteUniDriver;
            getLoader: () => Promise<UniDriver<any, {
                parent?: any | undefined;
                base?: any;
                selector?: string | Promise<string> | undefined;
                idx?: number | undefined;
                timeBudget?: number | undefined;
            }, any>>;
            typeInInput: (value: string) => Promise<void>;
            /** Get a cell driver by row key and column id */
            pressKeyOnInput: (key: string) => Promise<void>;
            hasDropdown: () => Promise<boolean>;
            hasClearButton: () => Promise<boolean>;
            clickClearButton: () => Promise<void>;
            hasAvatarPrefix: () => Promise<boolean>;
            hasInitialLoader: () => Promise<boolean>;
            getOptionCount: () => Promise<number>;
            getOptionTitleByIndex: (index: number) => Promise<string>;
            clickOptionByIndex: (index: number) => Promise<void>;
            hasOpenCollectionButton: () => Promise<boolean>;
            clickOpenCollection: () => Promise<void>;
            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>;
        };
        rightClick: () => Promise<void>;
        getBoundingBox: () => Promise<any>;
        pressKey: (key: string, opts?: Partial<KeyboardEventInit> | undefined) => Promise<void>;
        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>;
    };
    /** Get a cell driver by row index and column index */
    getCellByIndex: (rowIdx: number, colIdx: number) => {
        click: () => Promise<void>;
        doubleClick: () => Promise<void>;
        getDisplayValue: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        isEditing: () => Promise<boolean>;
        isSelected: () => Promise<boolean>;
        isReadOnly: () => Promise<boolean>;
        isInvalid: () => Promise<boolean>;
        getRowKey: () => Promise<string | null>;
        getColumnId: () => Promise<string | null>;
        hasValidationIndicator: () => Promise<boolean>;
        getTextEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            focus: () => Promise<void>;
            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>;
        };
        getNumberEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            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>;
        };
        getUrlEdit: () => {
            getValue: () => Promise<string>;
            typeValue: (value: string) => Promise<void>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            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>;
        };
        getBooleanEdit: () => {
            isChecked: () => Promise<boolean>;
            toggle: () => Promise<void>;
            keyDown: (key: string, opts?: Pick<KeyboardEventInit, "altKey" | "ctrlKey" | "metaKey" | "shiftKey"> | undefined) => Promise<void>;
            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>;
        };
        getSpecificValuesEdit: () => {
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            clickInput: () => Promise<void>;
            getValue: () => Promise<string>;
            selectOption: (id: string) => Promise<void>;
            typeInInput: (text: string) => Promise<void>;
            getOptionsContent: () => Promise<string[]>;
            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>;
        };
        getDateEdit: () => {
            getInputValue: () => Promise<string>;
            keyDown: (key: string, opts?: {
                shiftKey?: boolean | undefined;
                ctrlKey?: boolean | undefined;
                metaKey?: boolean | undefined;
            } | undefined) => Promise<void>;
            blur: () => Promise<void>;
            clickInput: () => Promise<void>;
            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>;
        };
        getReferenceEdit: () => {
            hasInput: () => Promise<boolean>;
            /** Number of rendered data rows */
            getInputValue: () => Promise<string>;
            getAutoComplete: () => import("@wix/design-system/dist/types/AutoComplete/AutoComplete.uni.driver").AutoCompleteUniDriver;
            getLoader: () => Promise<UniDriver<any, {
                parent?: any | undefined;
                base?: any;
                selector?: string | Promise<string> | undefined;
                idx?: number | undefined;
                timeBudget?: number | undefined;
            }, any>>;
            typeInInput: (value: string) => Promise<void>;
            /** Get a cell driver by row key and column id */
            pressKeyOnInput: (key: string) => Promise<void>;
            hasDropdown: () => Promise<boolean>;
            hasClearButton: () => Promise<boolean>;
            clickClearButton: () => Promise<void>;
            hasAvatarPrefix: () => Promise<boolean>;
            hasInitialLoader: () => Promise<boolean>;
            getOptionCount: () => Promise<number>;
            getOptionTitleByIndex: (index: number) => Promise<string>;
            clickOptionByIndex: (index: number) => Promise<void>;
            hasOpenCollectionButton: () => Promise<boolean>;
            clickOpenCollection: () => Promise<void>;
            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>;
        };
        rightClick: () => Promise<void>;
        getBoundingBox: () => Promise<any>;
        pressKey: (key: string, opts?: Partial<KeyboardEventInit> | undefined) => Promise<void>;
        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>;
    };
    /** Total number of gridcells rendered */
    getCellsCount: () => Promise<number>;
    /** Wait until root element exists */
    wait: (timeout?: number) => Promise<void>;
    /** Wait for the initial fetch loader to be shown */
    waitInitialLoader: (timeout?: number) => Promise<void>;
    /** Wait for the initial fetch loader to be removed */
    waitInitialLoaderRemoved: (timeout?: number, delay?: number) => Promise<void>;
    /** Wait for at least one data row to render */
    waitForRow: (timeout?: number) => Promise<void>;
    /** Get the header actions driver for a column (portaled to body) */
    getHeaderActions: (columnId: string) => {
        exists: () => Promise<boolean>;
        hasMoreButton: () => Promise<boolean>;
        hover: () => Promise<void>;
        clickMoreButton: () => Promise<void>;
        isMenuOpen: () => Promise<boolean>; /** Get column header texts */
        menuItemCount: () => Promise<number>;
        getMenuItemText: (index: number) => Promise<string>;
        clickMenuItem: (index: number) => Promise<void>;
        isMenuItemDisabled: (index: number) => Promise<boolean>;
    };
    /** Get the context menu driver (portaled to body) */
    getContextMenu: () => {
        isShown: () => Promise<boolean>;
        isOptionVisible: (optionId: string) => Promise<boolean>;
        clickOption: (optionId: string) => Promise<void>;
        getOptionText: (optionId: string) => Promise<string>;
    };
    /** Get the add item row driver */
    getAddItemRow: () => {
        getText: () => Promise<string>;
        textExists: () => Promise<boolean>;
        getTooltipContent: () => Promise<string | null>;
        getSubtitle: () => Promise<string>;
        isFocused: () => Promise<boolean>;
        focus: () => Promise<void>;
        blur: () => Promise<void>;
        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>;
    };
    /** Get the delete confirmation modal driver */
    getConfirmActionModal: () => {
        getTheme: () => Promise<string | null>;
        getSkin: () => Promise<string | null>;
        clickCloseButton: () => Promise<void>;
        clickHelpButton: () => Promise<void>;
        childExists: (dataHook: string) => Promise<boolean>;
        getTitleText: () => Promise<string>;
        getSubtitleText: () => Promise<string>;
        secondaryButtonDriver: {
            getButtonTextContent: () => Promise<string>;
            isFocused: () => Promise<boolean>;
            isButtonDisabled: () => Promise<boolean>;
            hasSkin: (skinName: import("@wix/design-system").ButtonSkin) => Promise<boolean>;
            isPrefixIconExists: () => Promise<boolean>;
            isSuffixIconExists: () => 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>;
        };
        getSecondaryButtonDriver: () => Promise<{
            getButtonTextContent: () => Promise<string>;
            isFocused: () => Promise<boolean>;
            isButtonDisabled: () => Promise<boolean>;
            hasSkin: (skinName: import("@wix/design-system").ButtonSkin) => Promise<boolean>;
            isPrefixIconExists: () => Promise<boolean>;
            isSuffixIconExists: () => 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>;
        }>;
        primaryButtonDriver: {
            getButtonTextContent: () => Promise<string>;
            isFocused: () => Promise<boolean>;
            isButtonDisabled: () => Promise<boolean>;
            hasSkin: (skinName: import("@wix/design-system").ButtonSkin) => Promise<boolean>;
            isPrefixIconExists: () => Promise<boolean>;
            isSuffixIconExists: () => Promise<boolean>;
            exists: () => Promise<boolean>;
            element: () => Promise<any>;
            click: () => Promise<void>; /** Get a cell driver by row index and column index */
            base: UniDriver<any, {
                parent?: any | undefined;
                base?: any;
                selector?: string | Promise<string> | undefined;
                idx?: number | undefined;
                timeBudget?: number | undefined;
            }, any>;
        };
        getPrimaryButtonDriver: () => Promise<{
            getButtonTextContent: () => Promise<string>;
            isFocused: () => Promise<boolean>;
            isButtonDisabled: () => Promise<boolean>;
            hasSkin: (skinName: import("@wix/design-system").ButtonSkin) => Promise<boolean>;
            isPrefixIconExists: () => Promise<boolean>;
            isSuffixIconExists: () => 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>;
        }>;
        getPrimaryButtonTooltipContent: () => Promise<string | null>;
        getIllustrationSrc: () => Promise<string | null>;
        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>;
    };
    /** Press a key on the table container (triggers useKeyboardNavigation) */
    pressKey: (key: string, opts?: Record<string, unknown>) => Promise<void>;
    /** Dispatch a paste event on the table container */
    dispatchPaste: (text: string) => Promise<void>;
    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 EditableTableUniDriver;
//# sourceMappingURL=EditableTable.uni.driver.d.ts.map