import { AriaRole } from "../utils/types/AriaRole.js"; import { FCWithSlotMarker, SlotMarker, WithSlotMarker } from "../utils/types/Slots.js"; import { ForwardRefComponent } from "../utils/polymorphic.js"; import { DistributiveOmit, PolymorphicProps } from "../utils/modern-polymorphic.js"; import { ActionListTrailingActionProps } from "./TrailingAction.js"; import { ActionListGroupHeadingTrailingActionProps } from "./GroupHeadingTrailingAction.js"; import { ActionListItemProps, ActionListProps } from "./shared.js"; import { ActionListHeadingProps } from "./Heading.js"; import { ActionListGroupHeadingProps, ActionListGroupProps } from "./Group.js"; import { ActionListDividerProps } from "./Divider.js"; import { ActionListDescriptionProps } from "./Description.js"; import { ActionListLeadingVisualProps, ActionListTrailingVisualProps, VisualProps } from "./Visuals.js"; import { ActionListLinkItemProps } from "./LinkItem.js"; //#region src/ActionList/index.d.ts /** * Collection of list-related components. */ declare const ActionList: ((props: DistributiveOmit & { variant?: "inset" | "horizontal-inset" | "full"; selectionVariant?: "single" | "radio" | "multiple"; showDividers?: boolean; role?: AriaRole; disableFocusZone?: boolean; className?: string; } & { children?: import("react").ReactNode | undefined; }, "as"> & { as?: As | undefined; } & import("react").RefAttributes) => React.ReactNode) & { /** Context for the `ActionList` container. */ContainerContext: import("react").Context<{ container?: string; listRole?: AriaRole; selectionVariant?: "single" | "multiple" | "radio"; selectionAttribute?: "aria-selected" | "aria-checked"; listLabelledBy?: string; afterSelect?: Function; enableFocusZone?: boolean; defaultTrailingVisual?: React.ReactElement; }>; /** Collects related `Items` in an `ActionList`. */ Group: FCWithSlotMarker>; /** An actionable or selectable `Item` */ Item: ((props: (PolymorphicProps extends infer T ? T extends PolymorphicProps ? T extends any ? Omit : never : never : never) & { children?: React.ReactNode; onSelect?: (event: React.MouseEvent | React.KeyboardEvent) => void; selected?: boolean; active?: boolean; variant?: "default" | "danger"; size?: "medium" | "large"; disabled?: boolean; role?: AriaRole; id?: string; inactiveText?: string; loading?: boolean; _PrivateItemWrapper?: React.FC) => void; onKeyPress?: (event: React.KeyboardEvent) => void; 'aria-disabled'?: boolean; tabIndex?: number; 'aria-labelledby'?: string; 'aria-describedby'?: string; role?: string; className?: string; }>>; _PrivateTooltipText?: string; className?: string; groupId?: string; renderItem?: (item: React.FC) => void; onKeyPress?: (event: React.KeyboardEvent) => void; 'aria-disabled'?: boolean; tabIndex?: number; 'aria-labelledby'?: string; 'aria-describedby'?: string; role?: string; className?: string; }>>) => React.ReactNode; handleAddItem?: (item: React.FC) => void; onKeyPress?: (event: React.KeyboardEvent) => void; 'aria-disabled'?: boolean; tabIndex?: number; 'aria-labelledby'?: string; 'aria-describedby'?: string; role?: string; className?: string; }>>) => void; as?: As | undefined; } & import("react").RefAttributes) => React.ReactNode) & { displayName: string; __SLOT__: symbol; }; /** A `Item` that renders a full-size anchor inside ListItem */ LinkItem: WithSlotMarker<((props: DistributiveOmit & Pick & { download?: string; href?: string; hrefLang?: string; media?: string; ping?: string; rel?: string; target?: string; type?: string; referrerPolicy?: React.AnchorHTMLAttributes["referrerPolicy"]; className?: string; }, "as"> & { as?: As | undefined; } & { _PrivateTooltipText?: string; } & import("react").RefAttributes) => React.ReactNode)>; /** Visually separates `Item`s or `Group`s in an `ActionList`. */ Divider: FCWithSlotMarker>; /** Secondary text which provides additional information about an `Item`. */ Description: FCWithSlotMarker>; /** Icon (or similar) positioned before `Item` text. */ LeadingVisual: FCWithSlotMarker>; /** Icon (or similar) positioned after `Item` text. */ TrailingVisual: FCWithSlotMarker>; /** Heading for an `ActionList`. */ Heading: ForwardRefComponent<"h1" | "h2" | "h3" | "h4" | "h5" | "h6", ActionListHeadingProps>; /** Context for `ActionList.Group` to propagate selectionVariant and other group-level props. */ GroupContext: import("react").Context & { groupHeadingId: string | undefined; }>; /** Heading for `ActionList.Group` */ GroupHeading: import("react").FC> & SlotMarker & { TrailingAction: ForwardRefComponent<"a" | "button", ActionListGroupHeadingTrailingActionProps> & { __SLOT__?: SlotMarker; displayName?: string; }; }; /** Secondary action */ TrailingAction: ForwardRefComponent<"a" | "button", ActionListTrailingActionProps>; }; //#endregion export { ActionList, type ActionListDescriptionProps, type ActionListDividerProps, type ActionListGroupHeadingProps, type ActionListGroupHeadingTrailingActionProps, type ActionListGroupProps, type ActionListItemProps, type ActionListLeadingVisualProps, type ActionListLinkItemProps, type ActionListProps, type ActionListTrailingActionProps, type ActionListTrailingVisualProps };