import React from "react"; import type { AkselColor } from "../types"; import type { OverridableComponent } from "../utils-external"; import { ExpansionCardContentProps } from "./ExpansionCardContent"; import { ExpansionCardDescriptionProps } from "./ExpansionCardDescription"; import { ExpansionCardHeaderProps } from "./ExpansionCardHeader"; import { ExpansionCardTitleProps } from "./ExpansionCardTitle"; interface ExpansionCardComponent extends React.ForwardRefExoticComponent> { /** * @see 🏷️ {@link ExpansionCardHeaderProps} */ Header: React.ForwardRefExoticComponent>; /** * @see 🏷️ {@link ExpansionCardTitleProps} * @see [🤖 OverridableComponent](https://aksel.nav.no/grunnleggende/kode/overridablecomponent) support */ Title: OverridableComponent; /** * @see 🏷️ {@link ExpansionCardDescriptionProps} */ Description: React.ForwardRefExoticComponent>; /** * @see 🏷️ {@link ExpansionCardContentProps} */ Content: React.ForwardRefExoticComponent>; } interface ExpansionCardCommonProps extends Omit, "onToggle"> { children: React.ReactNode; /** * Callback for when Card is opened/closed. */ onToggle?: (open: boolean) => void; /** * Controlled open-state. * * Using this removes automatic control of open-state. */ open?: boolean; /** * The open state when initially rendered. Use when you do not need to control the open state. * @default false */ defaultOpen?: boolean; /** * @default "medium" */ size?: "medium" | "small"; /** * Overrides inherited color. * @see 🏷️ {@link AkselColor} * @see [📝 Documentation](https://aksel.nav.no/grunnleggende/styling/farger-tokens) */ "data-color"?: AkselColor; } type ExpansionCardConditionalProps = { /** * Should be set if not using 'aria-labelledby' */ "aria-label": string; } | { /** * Should be set if not using 'aria-label' */ "aria-labelledby": string; }; export type ExpansionCardProps = ExpansionCardCommonProps & ExpansionCardConditionalProps; /** * A component that displays an expandable card. * * @see [📝 Documentation](https://aksel.nav.no/komponenter/core/expansioncard) * @see 🏷️ {@link ExpansionCardProps} * * @example * ```jsx * * * Utbetaling av sykepenger * * * * * * ``` */ export declare const ExpansionCard: ExpansionCardComponent; export default ExpansionCard;