import * as React from 'react'; import { View } from 'react-native'; import type { TransitionStatus } from '../../internals/useTransitionStatus'; import type { ZestUIComponentProps } from '../../types'; import type { ZestChangeEventDetails } from '../../utils/createChangeEventDetails'; import type { REASONS } from '../../utils/reasons'; import { type UseCollapsibleRootReturnValue } from './useCollapsibleRoot'; /** * Groups all parts of the collapsible. * Renders a ``. */ export declare function CollapsibleRoot(componentProps: CollapsibleRoot.Props): React.JSX.Element; export interface CollapsibleRootState extends Pick { /** * The transition status of the component. */ transitionStatus: TransitionStatus; } export interface CollapsibleRootProps extends ZestUIComponentProps { /** * Whether the collapsible panel is currently open. * * To render an uncontrolled collapsible, use the `defaultOpen` prop instead. */ open?: boolean | undefined; /** * Whether the collapsible panel is initially open. * * To render a controlled collapsible, use the `open` prop instead. * @default false */ defaultOpen?: boolean | undefined; /** * Event handler called when the panel is opened or closed. */ onOpenChange?: ((open: boolean, eventDetails: CollapsibleRoot.ChangeEventDetails) => void) | undefined; /** * Whether the component should ignore user interaction. * @default false */ disabled?: boolean | undefined; } export type CollapsibleRootChangeEventReason = typeof REASONS.triggerPress | typeof REASONS.none; export type CollapsibleRootChangeEventDetails = ZestChangeEventDetails; export declare namespace CollapsibleRoot { type State = CollapsibleRootState; type Props = CollapsibleRootProps; type ChangeEventReason = CollapsibleRootChangeEventReason; type ChangeEventDetails = CollapsibleRootChangeEventDetails; } //# sourceMappingURL=CollapsibleRoot.d.ts.map