import { default as React, ReactElement, ReactNode } from 'react'; /** * Slot contract for components that can act as actions. * * @category Actions */ export interface ActionProps { /** Text label for the action. */ label?: string; /** Accessible label for actions without visible text. */ 'aria-label'?: string; /** Leading icon for the action. */ icon?: React.ReactElement; /** Custom leading slot content. */ leading?: ReactNode; /** Custom trailing slot content. */ trailing?: ReactNode; /** Disables the action. */ disabled?: boolean; } /** * Props for action groups used by surface components such as cards and dialogs. * * @category Actions */ export interface ActionsProps { /** Action elements rendered inside the group. */ actions?: ReactNode; /** Alignment of the action group. */ align?: 'start' | 'center' | 'end'; /** Stacks actions vertically instead of horizontally. */ stack?: boolean; /** Additional class names for the action wrapper. */ className?: string; /** Maximum number of visible actions before the rest collapse into an overflow menu. */ maxActions?: number; /** Accessible label for the overflow actions button. Default: "More actions" */ moreLabel?: string; /** Custom icon for the overflow actions button. */ moreIcon?: ReactElement; } /** * Shared action group renderer used by components that expose footer or inline actions. * * Filters children to known action elements and applies placement, alignment, * and stacking styles. * * @category Actions */ declare const Actions: { ({ actions, className, align, stack, maxActions, moreLabel, moreIcon }: ActionsProps): import("react/jsx-runtime").JSX.Element | null; displayName: string; }; export { Actions as DialogActions, Actions as CardActions }; export type { ActionsProps as DialogActionsProps, ActionsProps as CardActionsProps };