import React from 'react';
import { type HeadingProps } from '../..';
/**
 * Design tokens
 */
import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/river/river.css';
export declare const RiverAccordionVariants: readonly ["default", "gridline"];
export type RiverAccordionVariant = (typeof RiverAccordionVariants)[number];
export type RiverAccordionProps = React.PropsWithChildren<{
    align?: 'start' | 'end';
    variant?: RiverAccordionVariant;
}> & React.HTMLAttributes<HTMLDivElement>;
export type RiverAccordionItemProps = React.HTMLAttributes<HTMLDivElement> & {
    children: React.ReactElement<RiverAccordionHeadingProps | RiverAccordionContentProps>[];
    index?: number;
};
export type RiverAccordionHeadingProps = HeadingProps;
export type RiverAccordionContentProps = React.HTMLAttributes<HTMLDivElement>;
export type RiverAccordionVisualProps = React.HTMLAttributes<HTMLDivElement>;
/**
 * Use the RiverAccordion to create collapsible content panels with associated visuals.
 * @see https://primer.style/brand/components/RiverAccordion
 */
export declare const RiverAccordion: React.ForwardRefExoticComponent<{
    align?: "start" | "end";
    variant?: RiverAccordionVariant;
} & {
    children?: React.ReactNode | undefined;
} & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>> & {
    Content: ({ className, children, ...props }: RiverAccordionContentProps) => import("react/jsx-runtime").JSX.Element;
    Heading: ({ as, children, className, size, ...props }: RiverAccordionHeadingProps) => import("react/jsx-runtime").JSX.Element;
    Item: ({ className, index, children, ...props }: RiverAccordionItemProps) => import("react/jsx-runtime").JSX.Element | null;
    Visual: ({ className, ...props }: RiverAccordionVisualProps) => import("react/jsx-runtime").JSX.Element;
};
