import { innerText } from "@interactors/html";
/**
* Call this {@link InteractorConstructor} to initialize a accordion {@link Interactor}.
* The accordion interactor can be used to interact with accordions on the page and
* to assert on their state.
*
* The accordion is located by the `aria-label` attribute or visible text on the accordion's summary in otherwise.
*
* ### Example
*
* ``` typescript
* await Accordion('Overview').toggle();
* await Accordion('Overview').is({ expanded: true });
* await Accordion({ id: 'overview-accordion', 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 accordion is disabled. Defaults to `false`.
* - `expanded`: *boolean* – Filter by whether the accordion is expanded.
*
* ### Actions
*
* - `expand()`: *{@link Interaction}* – Expand the accordion
* - `collapse()`: *{@link Interaction}* – Collapse the accordion
* - `toggle()`: *{@link Interaction}* – Toggle the accordion
*
* @category Interactor
*/
export declare const Accordion: 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;
}>, {
expanded?: 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: (element: HTMLElement) => boolean | undefined;
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>>, 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;
}>, {
expanded?: import("@interactors/html").MaybeMatcher | undefined;
disabled?: import("@interactors/html").MaybeMatcher;
}>> & import("@interactors/html").FilterMethods boolean;
disabled: {
apply: (element: HTMLElement) => boolean | undefined;
default: boolean;
};
}> & 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;
}>>, "expanded" | "disabled"> & 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) => Promise;
collapse: (interactor: 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;
}>, {
expanded?: import("@interactors/html").MaybeMatcher | undefined;
disabled?: import("@interactors/html").MaybeMatcher;
}>> & import("@interactors/html").FilterMethods boolean;
disabled: {
apply: (element: HTMLElement) => boolean | undefined;
default: boolean;
};
}> & 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;
}>>, "expanded" | "disabled"> & 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) => Promise;
toggle: (interactor: 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;
}>, {
expanded?: import("@interactors/html").MaybeMatcher | undefined;
disabled?: import("@interactors/html").MaybeMatcher;
}>> & import("@interactors/html").FilterMethods boolean;
disabled: {
apply: (element: HTMLElement) => boolean | undefined;
default: boolean;
};
}> & 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;
}>>, "expanded" | "disabled"> & 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) => 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;
}>, {
expanded?: import("@interactors/html").MaybeMatcher | undefined;
disabled?: import("@interactors/html").MaybeMatcher;
}>> & import("@interactors/html").FilterMethods boolean;
disabled: {
apply: (element: HTMLElement) => boolean | undefined;
default: boolean;
};
}> & 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;
}>>, "expanded" | "disabled"> & 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