import React from 'react';
import { DefaultProps } from '../../theme';
import { AccordionItem, AccordionItemProps } from './AccordionItem/AccordionItem';
import { AccordionControlStylesNames } from './AccordionControl/AccordionControl';
export type { AccordionItemProps };
export { AccordionItem };
export declare type AccordionStylesNames = AccordionControlStylesNames;
export interface AccordionProps extends DefaultProps<AccordionStylesNames>, Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {
    /** <AccordionItem /> components only */
    children: React.ReactNode;
    /** Index of item which is initially opened */
    initialItem?: number;
    /** Initial state (controls opened state of accordion items) for uncontrolled component */
    initialState?: Record<string, boolean>;
    /** Controlled state (controls opened state of accordion items) */
    state?: Record<string, boolean>;
    /** onChange handler for controlled component */
    onChange?(state: Record<string, boolean>): void;
    /** Allow multiple items to be opened at the same time */
    multiple?: boolean;
    /** Open/close item transition duration in ms */
    transitionDuration?: number;
    /** Used to connect accordion items controls to related content */
    id?: string;
}
export declare function Accordion({ children, initialItem, initialState, state, onChange, multiple, transitionDuration, themeOverride, classNames, styles, id, ...others }: AccordionProps): JSX.Element;
export declare namespace Accordion {
    var displayName: string;
}
//# sourceMappingURL=Accordion.d.ts.map