import { type CSSResultGroup, type PropertyDeclarations } from 'lit'; import { AriaDisclosureButtonController, AriaDisclosurePanelController, AriaDisclosureSectionController } from '../../controllers/aria-disclosure-controller.js'; import { ElementSlug } from '../../definitions/enums.js'; import type { AriaDisclosureButtonElementEventMap, AriaDisclosureElementEventMap, AriaDisclosurePanelElementEventMap, AriaDisclosureSectionElementEventMap } from '../../definitions/events.js'; import type { QueryDeclarations } from '../../definitions/interfaces.js'; import { AracnaBaseElement as BaseElement } from '../core/base-element.js'; declare global { interface HTMLElementTagNameMap { 'aracna-aria-disclosure': AriaDisclosureElement; 'aracna-aria-disclosure-button': AriaDisclosureButtonElement; 'aracna-aria-disclosure-panel': AriaDisclosurePanelElement; 'aracna-aria-disclosure-section': AriaDisclosureSectionElement; } } declare class AriaDisclosureElement extends BaseElement { /** * Queries */ /** */ buttonElements: AriaDisclosureButtonElement[]; connectedCallback(): void; disconnectedCallback(): void; onKeyDown: (event: KeyboardEvent) => void; get focusedButtonElement(): AriaDisclosureButtonElement | undefined; get slug(): ElementSlug; static queries: QueryDeclarations; } declare class AriaDisclosureSectionElement extends BaseElement { protected aria: AriaDisclosureSectionController; /** * Properties */ /** */ expanded?: boolean; /** * Queries */ /** */ buttonElement?: AriaDisclosureButtonElement; panelElement?: AriaDisclosurePanelElement; collapse(): void; expand(): void; get slug(): ElementSlug; static properties: PropertyDeclarations; static queries: QueryDeclarations; } declare class AriaDisclosureButtonElement extends BaseElement { protected aria: AriaDisclosureButtonController; /** * Queries */ sectionElement?: AriaDisclosureSectionElement; connectedCallback(): void; disconnectedCallback(): void; onClick(): void; onKeyDown(event: KeyboardEvent): void; get slug(): ElementSlug; static queries: QueryDeclarations; static styles: CSSResultGroup; } declare class AriaDisclosurePanelElement extends BaseElement { protected aria: AriaDisclosurePanelController; get slug(): ElementSlug; } export { AriaDisclosureButtonElement as AracnaAriaDisclosureButtonElement, AriaDisclosureElement as AracnaAriaDisclosureElement, AriaDisclosurePanelElement as AracnaAriaDisclosurePanelElement, AriaDisclosureSectionElement as AracnaAriaDisclosureSectionElement };