import { innerText } from "@interactors/html"; /** * Call this {@link InteractorConstructor} to initialize a button {@link Interactor}. * The button interactor can be used to interact with buttons on the page and * to assert on their state. * * The button is located by the `aria-label` attribute or the visible text on the button in otherwise. * * ### Example * * ``` typescript * await Button('Submit').click(); * await Button('Submit').is({ disabled: true }); * await Button({ id: 'submit-button', disabled: true }).exists(); * ``` * * ### Filters * * - `title`: *string* – Filter by title * - `id`: *string* – Filter by id * - `visible`: *boolean* – Filter by visibility. Defaults to `true`. See {@link isVisible}. * - `disabled`: *boolean* – Filter by whether the button is disabled. Defaults to `false`. * - `focused`: *boolean* – Filter by whether the button is focused. See {@link focused}. * - `href`: *string* - Filter by href if it's button link * * ### Actions * * - `click()`: *{@link Interaction}* – Click on the button * - `focus()`: *{@link Interaction}* – Move focus to the button * - `blur()`: *{@link Interaction}* – Move focus away from the button * * @category Interactor */ export declare const Button: 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; }>, { href?: import("@interactors/html").MaybeMatcher | undefined; disabled?: 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 | null; disabled: { apply: (element: HTMLButtonElement | HTMLLinkElement) => boolean; 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>>>; //# sourceMappingURL=button.d.ts.map