/**
 * @file DropdownMenuRadioItem.tsx
 * @input React, stylex, Item + Icon + DropdownMenu context + tokens from core
 * @output DropdownMenuRadioItem — a single option in a radio group.
 * @position Sub-component; must be used inside a DropdownMenuRadioGroup.
 *
 * A menu item representing one option in a single-select group
 * (role="menuitemradio"). The row owns the role and aria-checked; there is no
 * nested native <input> (per the WAI-ARIA menuitemradio pattern). Selection
 * state + onChange come from DropdownMenuRadioGroupContext. Keyboard nav +
 * Enter/Space activation come from the parent DropdownMenu.
 *
 * The round radio visual is the shared radio indicator, decorative
 * (aria-hidden) — the row owns the checked state, and menu radios pick up the
 * same `radio` theming (and any theme replacement) as RadioList. This row keeps
 * the marker box: its size is derived from the menu's item size and it swaps to
 * the inline-end of the row on coarse-pointer (touch) devices via CSS `order`.
 */
import { type ReactNode } from 'react';
import { type IconType } from '../Icon';
import type { BaseProps } from '../BaseProps';
export interface DropdownMenuRadioItemProps extends Omit<BaseProps, 'role' | 'aria-checked' | 'tabIndex'> {
    /**
     * The value this item represents within its group. The group's `value`
     * matches against this to determine the checked state.
     */
    value: string;
    /**
     * Primary label text identifying the option.
     */
    label: ReactNode;
    /**
     * Secondary description text displayed below the label.
     */
    description?: ReactNode;
    /**
     * Icon to display before the label. Accepts a semantic icon name (see
     * `npx astryx docs icons`) or a rendered node.
     */
    icon?: ReactNode | IconType;
    /**
     * Whether this individual radio item is disabled. Disabled items stay
     * focusable (via `aria-disabled`) so they remain discoverable by keyboard
     * and assistive technology, but selection is blocked.
     * @default false
     */
    isDisabled?: boolean;
    /**
     * Content to render after the label and description, such as a badge or
     * metadata.
     */
    endContent?: ReactNode;
}
/**
 * A single option in a DropdownMenuRadioGroup (role="menuitemradio").
 *
 * @example
 * ```
 * <DropdownMenuRadioGroup value={sort} onChange={setSort} label="Sort by">
 *   <DropdownMenuRadioItem value="newest" label="Newest" />
 *   <DropdownMenuRadioItem value="oldest" label="Oldest" icon="clock" />
 * </DropdownMenuRadioGroup>
 * ```
 */
export declare function DropdownMenuRadioItem({ value, label, description, icon, isDisabled, endContent, xstyle, className, style, ...rest }: DropdownMenuRadioItemProps): import("react").JSX.Element;
export declare namespace DropdownMenuRadioItem {
    var displayName: string;
}
//# sourceMappingURL=DropdownMenuRadioItem.d.ts.map