import { ReactNode } from 'react';
/** Heading level for accordion item headers. */
export type AccordionHeading = 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
/** Describes a single accordion item. */
export interface AccordionItem {
    /** Unique ID for linking trigger to panel via aria-controls. */
    id: string;
    /** Text or node displayed in the accordion header. */
    heading: string | ReactNode;
    /** Content revealed when the item is expanded. */
    content: ReactNode;
    /** Optional icon element displayed before the heading text. */
    icon?: ReactNode;
    /** Accessible label for the icon. When set, the icon is not aria-hidden. */
    iconA11yLabel?: string;
    /** Force focus state for demos. */
    focused?: boolean;
    /** Force hover state for demos. */
    hover?: boolean;
}
export interface AccordionProps {
    /** Array of accordion items to render. */
    items: AccordionItem[];
    /** Allow multiple items to be expanded simultaneously. Defaults to `false`. */
    allowMultiple?: boolean;
    /** IDs of items expanded by default (uncontrolled). */
    defaultExpandedIds?: string[];
    /** Heading level for all item headers. Defaults to `'h2'`. */
    heading?: AccordionHeading;
    /** Whether to render dividers between items. Defaults to `true`. */
    hasDivider?: boolean;
    /** Enable inverse (dark background) styling. */
    inverse?: boolean;
    /** Additional CSS class names on the root element. */
    className?: string;
}
//# sourceMappingURL=Accordion.types.d.ts.map