import { innerText } from "@interactors/html";
import { isDisabled } from "./helpers";
/**
* Call this {@link InteractorConstructor} to initialize a tab {@link Interactor}.
* The tab interactor can be used to interact with tabs on the page and
* to assert on their state.
*
* The tab is located by the text of its label or by text content.
*
* ### Example
*
* ``` typescript
* await Tab('Preview').click();
* await Tab({ id: 'preview-tab' }).exists();
* ```
*
* ### Filters
*
* - `id`: *string* – Filter by id
* - `visible`: *boolean* – Filter by visibility. Defaults to `true`. See {@link isVisible}.
* - `disabled`: *boolean* – Filter by whether the tab is disabled. Defaults to `false`.
* - `active`: *boolean* – Filter by whether the tab is active.
*
* ### Actions
*
* - `click()`: *{@link Interaction}* – Click on the tab
*
* @category Interactor
*/
export declare const Tab: import("@interactors/html").InteractorConstructor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>, {
active?: import("@interactors/html").MaybeMatcher | undefined;
disabled?: import("@interactors/html").MaybeMatcher;
}>, import("@interactors/html").MergeObjects string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}>>, import("@interactors/html").FilterMethods boolean;
disabled: {
apply: typeof isDisabled;
default: boolean;
};
}>>, import("@interactors/html").MergeObjects | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject, init?: MouseEventInit | undefined) => import("@interactors/html").ActionInteraction;
focus: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
blur: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
}, import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject>>>;
/**
* Call this {@link InteractorConstructor} to initialize a tabs {@link Interactor}.
* The tabs interactor can be used to interact with tabs containers on the page and
* to assert on their state.
*
* The tabs is located by the `aria-label` attribute.
*
* ### Example
*
* ``` typescript
* await Tab('View modes').click();
* await Tab({ value: 'preview' }).exists();
* ```
*
* ### Filters
*
* - `id`: *string* – Filter by id
* - `visible`: *boolean* – Filter by visibility. Defaults to `true`. See {@link isVisible}.
* - `disabled`: *boolean* – Filter by whether the tabs are disabled. Defaults to `false`.
* - `value`: *string* – Filter by the active tab.
*
* ### Actions
*
* - `click(value: string)`: *{@link Interaction}* – Click on the specific tab
*
* @category Interactor
*/
export declare const Tabs: import("@interactors/html").InteractorConstructor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>, {
value?: import("@interactors/html").MaybeMatcher | undefined;
}>, import("@interactors/html").MergeObjects string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}>>, import("@interactors/html").FilterMethods string;
}>>, import("@interactors/html").MergeObjects | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject, init?: MouseEventInit | undefined) => import("@interactors/html").ActionInteraction;
focus: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
blur: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
}, import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject>>, import("@interactors/html").ActionMethods | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>, {
value?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
}> & Omit string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}>>, "value"> & import("@interactors/html").ActionMethods | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject, init?: MouseEventInit | undefined) => import("@interactors/html").ActionInteraction;
focus: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
blur: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
}, import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject> & Omit, value: string): Promise;
}, import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>, {
value?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
}> & Omit string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}>>, "value"> & import("@interactors/html").ActionMethods | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject, init?: MouseEventInit | undefined) => import("@interactors/html").ActionInteraction;
focus: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
blur: ({ perform }: import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject) => import("@interactors/html").ActionInteraction;
}, import("@interactors/html").Interactor | undefined;
title?: import("@interactors/html").MaybeMatcher | undefined;
id?: import("@interactors/html").MaybeMatcher | undefined;
visible?: import("@interactors/html").MaybeMatcher | undefined;
className?: import("@interactors/html").MaybeMatcher | undefined;
classList?: import("@interactors/html").MaybeMatcher | undefined;
focused?: import("@interactors/html").MaybeMatcher | undefined;
}>> & import("@interactors/html").FilterMethods string;
id: (element: HTMLElement) => string;
visible: {
apply: typeof import("element-is-visible").isVisible;
default: boolean;
};
className: (element: HTMLElement) => string;
classList: (element: HTMLElement) => string[];
focused: (element: HTMLElement) => boolean;
}> & Omit & import("@interactors/html").EmptyObject> & Omit>>>;
//# sourceMappingURL=tabs.d.ts.map