import Gtk from "gi://Gtk"; import type { GjsContext } from "../../../../reconciler/gjs-renderer"; import type { HostContext } from "../../../../reconciler/host-context"; import { BaseElement, type GjsElement } from "../../../gjs-element"; import { ChildOrderController } from "../../../utils/element-extenders/child-order-controller"; import { ElementLifecycleController } from "../../../utils/element-extenders/element-lifecycle-controller"; import type { SyntheticEvent } from "../../../utils/element-extenders/event-handlers"; import { EventHandlers } from "../../../utils/element-extenders/event-handlers"; import type { DiffedProps } from "../../../utils/element-extenders/map-properties"; import { PropertyMapper } from "../../../utils/element-extenders/map-properties"; import type { PointerData } from "../../../utils/gdk-events/pointer-event"; import type { AccelProps } from "../../../utils/property-maps-factories/create-accel-prop-mapper"; import type { ChildPropertiesProps } from "../../../utils/property-maps-factories/create-child-props-mapper"; import type { MarginProps } from "../../../utils/property-maps-factories/create-margin-prop-mapper"; import type { SizeRequestProps } from "../../../utils/property-maps-factories/create-size-request-prop-mapper"; import type { StyleProps } from "../../../utils/property-maps-factories/create-style-prop-mapper"; import type { TooltipProps } from "../../../utils/property-maps-factories/create-tooltip-prop-mapper"; import type { TextNode } from "../../text-node"; import type { PopoverMenuElement } from "../popover-menu"; import { PopoverMenuContentElement } from "../popover-menu-content"; import { PopoverMenuCheckButtonElement } from "./popover-menu-check-button"; import { PopoverMenuItemElement } from "./popover-menu-item"; import { PopoverMenuRadioButtonElement } from "./popover-menu-radio-button"; import { PopoverMenuSeparatorElement } from "./popover-menu-separator"; type PopoverMenuEntryPropsMixin = ChildPropertiesProps & SizeRequestProps & MarginProps & StyleProps & TooltipProps & AccelProps; export type PopoverMenuEntryEvent

= {}> = SyntheticEvent; export interface PopoverMenuEntryProps extends PopoverMenuEntryPropsMixin { label?: string; icon?: Rg.IconName; centered?: boolean; inverted?: boolean; submenuBackButtonLabel?: string; onClick?: (e: PopoverMenuEntryEvent) => void; onPressed?: (event: PopoverMenuEntryEvent) => void; onReleased?: (event: PopoverMenuEntryEvent) => void; onMouseEnter?: (event: PopoverMenuEntryEvent) => void; onMouseLeave?: (event: PopoverMenuEntryEvent) => void; } export declare class PopoverMenuEntryElement extends BaseElement implements GjsElement<"POPOVER_MENU_ENTRY", Gtk.ModelButton> { protected context: HostContext; static getContext(currentContext: HostContext): HostContext; static createSubmenu(): { widget: Gtk.Box; goBackButton: Gtk.ModelButton; isRegistered: boolean; }; readonly kind = "POPOVER_MENU_ENTRY"; protected widget: Gtk.ModelButton; parentMenu: string; rootMenu: PopoverMenuElement | null; ownMenuName: string; submenu: { widget: Gtk.Box; goBackButton: Gtk.ModelButton; isRegistered: boolean; }; protected parent: PopoverMenuEntryElement | PopoverMenuContentElement | null; readonly lifecycle: ElementLifecycleController; protected readonly children: ChildOrderController; protected readonly handlers: EventHandlers; protected readonly propsMapper: PropertyMapper; constructor(props: DiffedProps, context: HostContext); setParentMenu(name: string): void; setRootMenu(root: PopoverMenuElement): void; registerSubmenu(): void; unregisterSubmenu(): void; updateProps(props: DiffedProps): void; appendChild(child: TextNode | GjsElement): void; insertBefore(child: TextNode | GjsElement, beforeChild: GjsElement): void; remove(parent: GjsElement): void; render(): void; notifyWillMountTo(parent: GjsElement): boolean; notifyMounted(): void; notifyChildWillUnmount(child: GjsElement): void; show(): void; hide(): void; getWidget(): Gtk.ModelButton; getParentElement(): PopoverMenuEntryElement | PopoverMenuContentElement | null; } export {};