/*!
 * Copyright 2020 VMware, Inc.
 * SPDX-License-Identifier: BSD-2-Clause
 */
import { BaseWidgetObject, CorrectReturnTypes, FindableWidget, LocatorDriver } from './widget-object';
/**
 * Knows how to find Cypress chainables in the DOM.
 *
 * T is the type of data that this will output when you call `unwrap`.
 * In almost all cases, this should be a `Cypress.Chainable`.
 * We chose to provide this as a generic because for reasons seen in
 * [this PR](https://github.com/vmware/vmware-cloud-director-ui-components/pull/248)
 * we could not load the Cypress types in our library.
 */
export declare class CypressLocatorDriver<T> implements LocatorDriver<T> {
    private chainable;
    private isRoot;
    private alias;
    constructor(chainable: T, isRoot: boolean, alias: string);
    /**
     * @inheritdoc
     */
    get(cssSelector: string, options?: unknown): CypressLocatorDriver<T>;
    /**
     * @inheritdoc
     */
    getByText(cssSelector: string, value: string, options?: unknown): CypressLocatorDriver<T>;
    /**
     * @inheritdoc
     */
    parents(cssSelector: string, options?: unknown): CypressLocatorDriver<T>;
    /**
     * @inheritdoc
     */
    unwrap(): T;
    /**
     * @inheritdoc
     */
    findWidget<W extends BaseWidgetObject<T>, C extends FindableWidget<T, W>>(widget: C, cssSelector?: string): CorrectReturnTypes<InstanceType<C>, T>;
    /**
     * Gives the correct base for this current query.
     * This is to override the behavior where calls to .find will permanently change the scope of the query.
     */
    private getBase;
}
