import { type Readable } from '@vielzeug/ripple'; import type { ComponentSize, SurfaceVariant } from '../../types'; /** Context provided by ore-accordion to its ore-accordion-item children. */ export type AccordionContext = { selectionMode: Readable<'single' | 'multiple' | undefined>; size: Readable; variant: Readable; }; /** Injection key for the accordion context. */ export declare const ACCORDION_CTX: import("@vielzeug/ore").InjectionKey; /** Accordion component properties */ export type OreAccordionEvents = { change: { expandedItem: HTMLElement; }; }; export type OreAccordionProps = { /** Selection mode (single = only one opens, multiple = multiple can be open) */ selectionMode?: 'single' | 'multiple'; /** Size for all items (propagated via context) */ size?: ComponentSize; /** Visual variant for all items (propagated via context) */ variant?: SurfaceVariant; }; /** * A container for accordion items with single or multiple selection modes. * * @element ore-accordion * @element ore-accordion-item - Child element for each collapsible panel * * @attr {string} selection-mode - Selection mode: 'single' | 'multiple' * @attr {string} size - Size for all items: 'sm' | 'md' | 'lg' (propagated to children) * @attr {string} variant - Visual variant: 'solid' | 'flat' | 'bordered' | 'text' | 'glass' | 'frost' (propagated to children) * * @fires expand - Emitted when an item expands. detail: { expanded: boolean; item: HTMLElement } * @fires change - Emitted when selection changes (single mode). detail: { expandedItem: HTMLElement } * * @slot - `ore-accordion-item` elements * * @cssprop --accordion-bg - Container background color (solid/flat/glass/frost variants) * @cssprop --accordion-border-color - Container border color (solid/flat variants) * @cssprop --accordion-divider-color - Divider color between items (text variant) * @cssprop --accordion-shadow - Container box shadow * @example * ```html * * * What is Refine? *

Refine is a headless web component library.

*
* * How do I install it? *

Run npm install @vielzeug/refine.

*
*
* * Open by default

Content

*
* ``` */ export declare const ACCORDION_TAG: "ore-accordion"; //# sourceMappingURL=accordion.d.ts.map