import type { JSX, ValidComponent } from "@solidjs/web"; import type { BaseUIComponentProps, NonNativeButtonProps } from "../../internals/types.js"; import type { MenuRootChangeEventDetails } from "../root/menu-root-context.js"; export type MenuCheckboxItemChangeEventDetails = MenuRootChangeEventDetails; export interface MenuCheckboxItemState { disabled: boolean; highlighted: boolean; checked: boolean; } export interface MenuCheckboxItemProps extends NonNativeButtonProps, Omit, "id"> { /** * Tag/component to render. Defaults to `"div"`. Replaces the * pre-spike `render` prop (axis G). */ as?: ValidComponent; id?: string | undefined; /** * Controlled checked state. When provided (not `undefined`), the * consumer owns the state — pair with {@link onCheckedChange}. When * omitted, the item manages its own checked state (seeded from * {@link defaultChecked}). */ checked?: boolean | undefined; /** * Initial checked state when uncontrolled. Read once at mount. * @default false */ defaultChecked?: boolean | undefined; /** * Fires when the item is ticked or unticked. Calling * `details.cancel()` keeps the item's own (uncontrolled) state * unchanged, mirroring React Base UI. */ onCheckedChange?: ((checked: boolean, details: MenuCheckboxItemChangeEventDetails) => void) | undefined; /** @default false */ disabled?: boolean | undefined; label?: string | undefined; /** @default false */ closeOnClick?: boolean | undefined; } export declare function MenuCheckboxItem(props: MenuCheckboxItemProps): JSX.Element; //# sourceMappingURL=menu-checkbox-item.d.ts.map