UNPKG

@gravity-ui/uikit

Version:

Gravity UI base styling and components

22 lines (21 loc) 1.13 kB
import type { AccordionProps, AccordionValue } from "./types.js"; interface AccordionProviderProps<Multiple extends boolean> extends Required<Omit<AccordionProps<Multiple>, 'qa' | 'className' | 'value' | 'defaultValue' | 'multiple' | 'ariaLabel'>> { multiple: Multiple; value: AccordionValue<Multiple>; defaultValue: AccordionValue<Multiple>; onUpdate: (value: AccordionValue<Multiple>) => void; } interface AccordionSummaryRef { element: HTMLButtonElement; disabled: boolean; } type AccordionItemValue = string; export declare function AccordionProvider<Multiple extends boolean>(props: AccordionProviderProps<Multiple>): import("react/jsx-runtime").JSX.Element; export declare function useAccordion(): Required<Omit<AccordionProps<boolean>, "value" | "onUpdate" | "defaultValue" | "className" | "children" | "ariaLabel" | "qa"> & { items: AccordionValue<boolean>; updateItems: (value: AccordionItemValue) => void; registerSummary: (id: string, ref: AccordionSummaryRef) => void; unregisterSummary: (id: string) => void; getSummaryRefs: () => AccordionSummaryRef[]; }>; export {};