import * as React from "react";
import { type ReactElement } from "react";
export type TAccordionSize = "xs" | "sm" | "md" | "lg" | "xl";
export interface IAccordionHeaderProps {
    children: React.ReactNode;
    /**
     * Overwrite the styles for AccordionHeader by passing space separated class names
     */
    className?: string;
}
declare const AccordionHeader: React.ForwardRefExoticComponent<IAccordionHeaderProps & React.RefAttributes<HTMLSpanElement>>;
export interface IAccordionBodyProps {
    children: React.ReactNode | React.ReactElement;
    /**
     * Overwrite the styles for AccordionBody by passing space separated class names
     */
    className?: string;
}
declare const AccordionBody: React.ForwardRefExoticComponent<IAccordionBodyProps & React.RefAttributes<HTMLDivElement>>;
export interface IAccordionProps extends React.HTMLAttributes<HTMLDivElement> {
    children?: Array<ReactElement<IAccordionBodyProps | IAccordionHeaderProps>>;
    /**
     * Expand or collapse the Accordion
     */
    expand?: boolean;
    /**
     * Set it to false if you want the Accordion to Expand or Collapse only on click of the arrow
     */
    clickableHeader?: boolean;
    /**
     * Size of the Accordion Header (Text and Spacing)
     * @default sm
     */
    size?: TAccordionSize;
    /**
     * Overwrite the styles for Accordion by passing space separated class names
     */
    className?: string;
}
export interface IAccordionType extends React.ForwardRefExoticComponent<IAccordionProps & React.RefAttributes<HTMLDivElement>> {
    Header: typeof AccordionHeader;
    Body: typeof AccordionBody;
}
export declare const Accordion: IAccordionType;
export {};
