import { UniDriver } from '@wix/unidriver-core';
import { ReactBase } from './ReactBase';
export * from './ReactBase';
export { ReactBase };
/**
 * Find element by `data-hook` (exact match)
 * @param {UniDriver} base
 * @param {string} hook
 */
export declare const findByHook: (base: UniDriver, hook: string) => UniDriver<any, {
    parent?: /*elided*/ any | undefined;
    base?: any;
    selector?: string | Promise<string>;
    idx?: number;
    timeBudget?: number;
}, any>;
/**
 * Async find element by `data-hook` (exact match)
 * @param {UniDriver} base
 * @param {string} hook
 * @returns {Promise<import('@wix/unidriver-core').UniDriver>}
 */
export declare const getByHook: (base: UniDriver, hook: string) => UniDriver<any, {
    parent?: /*elided*/ any | undefined;
    base?: any;
    selector?: string | Promise<string>;
    idx?: number;
    timeBudget?: number;
}, any>;
/**
 * Async find all elements by `data-hook` (exact match)
 * @param {UniDriver} base
 * @param {string} hook
 * @returns {Promise<import('@wix/wix-ui-test-utils/dist/types/unidriver').UniDriverList>}
 */
export declare const getAllByHook: (base: UniDriver, hook: string) => import("@wix/unidriver-core").UniDriverList<any, {
    parent?: /*elided*/ any | undefined;
    base?: any;
    selector?: string | Promise<string>;
    idx?: number;
    timeBudget?: number;
}, any>;
/**
 * Find element by `data-hook` at index (exact match)
 * @param {UniDriver} base
 * @param {string} hook
 * @param index index
 */
export declare const findByHookAtIndex: (base: UniDriver, hook: string, index: number) => UniDriver<any, {
    parent?: /*elided*/ any | undefined;
    base?: any;
    selector?: string | Promise<string>;
    idx?: number;
    timeBudget?: number;
}, any>;
/**
 * Counts elements by `data-hook` (exact match)
 * @param {UniDriver} base
 * @param {string} hook
 */
export declare const countByHook: (base: UniDriver, hook: string) => Promise<number>;
/**
 * Wrapper function which returns null if base doesn't exist.
 * @param {UniDriver} base
 */
export declare const getElement: (base: UniDriver) => Promise<UniDriver | null>;
/**
 * Gets data attribute value
 * @param {UniDriver} base
 * @param {string} attr
 */
export declare const getDataAttributeValue: (base: UniDriver, attr: string) => Promise<string | null>;
/** Checks if given element is focused
 * @param {UniDriver} element
 * @returns {Promise<boolean>}
 */
export declare const isElementFocused: (element: UniDriver) => Promise<boolean | undefined>;
export declare const baseUniDriverFactory: (base: UniDriver) => {
    /**
     * Checks whether the component found with the given data hook
     * @returns {Promise<boolean>}
     */
    exists: () => Promise<boolean>;
    /**
     * Gets the component root element
     * @returns {Promise<any>}
     */
    element: () => Promise<any>;
    /**
     * Clicks on the component root element
     * @returns {Promise<void>}
     */
    click: () => Promise<void>;
    /**
     * Returns UniDriver for the base element
     * @return {UniDriver}
     */
    readonly base: UniDriver;
};
//# sourceMappingURL=index.d.ts.map