import * as React from 'react'; import { View } from 'react-native'; import type { AccordionRootState } from '../root/AccordionRoot'; import type { ZestUIComponentProps } from '../../types'; import type { ZestChangeEventDetails } from '../../utils/createChangeEventDetails'; import type { REASONS } from '../../utils/reasons'; /** * Groups an accordion header with the corresponding panel. * Renders a ``. * * Each item owns a Collapsible root context, so `Accordion.Trigger` and * `Accordion.Panel` are the Collapsible parts wearing accordion semantics. */ export declare function AccordionItem(componentProps: AccordionItem.Props): React.JSX.Element; export interface AccordionItemState extends AccordionRootState { /** * Whether the accordion item's panel is currently hidden. */ hidden: boolean; /** * Whether the component is open. */ open: boolean; } export interface AccordionItemProps extends Omit>, 'value'> { /** * A unique value that identifies this accordion item. * If no value is provided, a unique ID will be generated automatically. */ value?: Value | undefined; /** * Whether the component should ignore user interaction. * @default false */ disabled?: boolean | undefined; /** * Event handler called when the panel is opened or closed. */ onOpenChange?: ((open: boolean, eventDetails: AccordionItem.ChangeEventDetails) => void) | undefined; } export type AccordionItemChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.none; export type AccordionItemChangeEventDetails = ZestChangeEventDetails; export declare namespace AccordionItem { type State = AccordionItemState; type Props = AccordionItemProps; type ChangeEventReason = AccordionItemChangeEventReason; type ChangeEventDetails = AccordionItemChangeEventDetails; } //# sourceMappingURL=AccordionItem.d.ts.map