import Component from "@glimmer/component"; import { cell } from "ember-resources"; import { type Signature as LinkSignature } from './link'; import { type Signature as PopoverSignature } from './popover'; import type { TOC } from "@ember/component/template-only"; import type { WithBoundArgs } from "@glint/template"; type Cell = ReturnType>; type LinkArgs = LinkSignature["Args"]; type PopoverArgs = PopoverSignature["Args"]; type PopoverBlockParams = PopoverSignature["Blocks"]["default"][0]; export interface Signature { Args: PopoverArgs; Blocks: { default: [ { arrow: PopoverBlockParams["arrow"]; trigger: WithBoundArgs; Trigger: WithBoundArgs; Content: WithBoundArgs; isOpen: boolean; } ]; }; } export interface SeparatorSignature { Element: HTMLDivElement; Blocks: { default: []; }; } declare const Separator: TOC; interface PrivateItemSignature { Element: HTMLButtonElement; Args: { onSelect?: (event: Event) => void; toggle: () => void; }; Blocks: { default: []; }; } export interface ItemSignature { Element: PrivateItemSignature["Element"]; Args: Omit; Blocks: PrivateItemSignature["Blocks"]; } declare const Item: TOC; interface LinkItemArgs extends LinkArgs { toggle: () => void; } interface PrivateLinkItemSignature { Element: HTMLAnchorElement; Args: LinkItemArgs; Blocks: { default: []; }; } export interface LinkItemSignature { Element: PrivateLinkItemSignature["Element"]; Args: LinkArgs; Blocks: PrivateLinkItemSignature["Blocks"]; } declare const LinkItem: TOC; interface PrivateContentSignature { Element: HTMLDivElement; Args: { triggerElement: Cell; contentId: string; isOpen: Cell; PopoverContent: PopoverBlockParams["Content"]; }; Blocks: { default: [ { Item: WithBoundArgs; LinkItem: WithBoundArgs; Separator: typeof Separator; } ]; }; } export interface ContentSignature { Element: PrivateContentSignature["Element"]; Blocks: PrivateContentSignature["Blocks"]; } declare const Content: TOC; interface PrivateTriggerModifierSignature { Element: HTMLElement; Args: { Named: { triggerElement: Cell; isOpen: Cell; contentId: string; setReference: PopoverBlockParams["setReference"]; stopPropagation?: boolean; preventDefault?: boolean; }; }; } export interface TriggerModifierSignature { Element: PrivateTriggerModifierSignature["Element"]; } declare const trigger: import("ember-modifier").FunctionBasedModifier<{ Element: HTMLElement; Args: { Named: { triggerElement: Cell; isOpen: Cell; contentId: string; setReference: PopoverBlockParams["setReference"]; stopPropagation?: boolean; preventDefault?: boolean; }; Positional: []; }; }>; interface PrivateTriggerSignature { Element: HTMLButtonElement; Args: { triggerModifier: WithBoundArgs; stopPropagation?: boolean; preventDefault?: boolean; }; Blocks: { default: []; }; } export interface TriggerSignature { Element: PrivateTriggerSignature["Element"]; Blocks: PrivateTriggerSignature["Blocks"]; } declare const Trigger: TOC; export declare class Menu extends Component { contentId: string; } export default Menu; //# sourceMappingURL=menu.d.ts.map