import React, { type DetailsHTMLAttributes, type HTMLAttributes, type ReactElement } from 'react';
import { type HeadingProps } from '../';
/**
* Design tokens
*/
import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/accordion/colors-with-modes.css';
export type AccordionRootProps = DetailsHTMLAttributes & {
children: ReactElement[];
variant?: 'default' | 'emphasis';
handleOpen?: (isOpen: boolean) => void;
};
export declare const AccordionRoot: React.ForwardRefExoticComponent & {
children: ReactElement[];
variant?: "default" | "emphasis";
handleOpen?: (isOpen: boolean) => void;
} & React.RefAttributes>;
export declare const AccordionToggleColors: readonly ["default", "blue", "coral", "green", "gray", "indigo", "lemon", "lime", "orange", "pink", "purple", "red", "teal", "yellow", "blue-purple", "green-blue", "pink-blue", "purple-red", "red-orange"];
export type AccordionHeadingProps = HTMLAttributes & {
as?: HeadingProps['as'];
reversedToggles?: boolean;
toggleColor?: (typeof AccordionToggleColors)[number];
weight?: HeadingProps['weight'];
};
/**
* TODO This type is incorrect
* The ref is applied to the summary, not the heading, so the correct type is
* `forwardRef`
*/
export declare const AccordionHeading: React.ForwardRefExoticComponent & {
as?: HeadingProps["as"];
reversedToggles?: boolean;
toggleColor?: (typeof AccordionToggleColors)[number];
weight?: HeadingProps["weight"];
} & React.RefAttributes>;
export type AccordionContentProps = HTMLAttributes;
export declare const AccordionContent: ({ className, ...rest }: AccordionContentProps) => import("react/jsx-runtime").JSX.Element;
export declare const Accordion: React.ForwardRefExoticComponent & {
children: ReactElement[];
variant?: "default" | "emphasis";
handleOpen?: (isOpen: boolean) => void;
} & React.RefAttributes> & {
Content: ({ className, ...rest }: AccordionContentProps) => import("react/jsx-runtime").JSX.Element;
Heading: React.ForwardRefExoticComponent & {
as?: HeadingProps["as"];
reversedToggles?: boolean;
toggleColor?: (typeof AccordionToggleColors)[number];
weight?: HeadingProps["weight"];
} & React.RefAttributes>;
};