import type { Signature as FloatingUiComponentSignature } from '../floating-ui/component'; import type { Signature as HookSignature } from "../floating-ui/modifier.ts"; import type { TOC } from "@ember/component/template-only"; import type { ModifierLike, WithBoundArgs } from "@glint/template"; export interface Signature { Args: { /** * See the Floating UI's [flip docs](https://floating-ui.com/docs/flip) for possible values. * * This argument is forwarded to the `` component. */ flipOptions?: HookSignature["Args"]["Named"]["flipOptions"]; /** * Array of one or more objects to add to Floating UI's list of [middleware](https://floating-ui.com/docs/middleware) * * This argument is forwarded to the `` component. */ middleware?: HookSignature["Args"]["Named"]["middleware"]; /** * See the Floating UI's [offset docs](https://floating-ui.com/docs/offset) for possible values. * * This argument is forwarded to the `` component. */ offsetOptions?: HookSignature["Args"]["Named"]["offsetOptions"]; /** * One of the possible [`placements`](https://floating-ui.com/docs/computeposition#placement). The default is 'bottom'. * * Possible values are * - top * - bottom * - right * - left * * And may optionally have `-start` or `-end` added to adjust position along the side. * * This argument is forwarded to the `` component. */ placement?: `${"top" | "bottom" | "left" | "right"}${"" | "-start" | "-end"}`; /** * See the Floating UI's [shift docs](https://floating-ui.com/docs/shift) for possible values. * * This argument is forwarded to the `` component. */ shiftOptions?: HookSignature["Args"]["Named"]["shiftOptions"]; /** * CSS position property, either `fixed` or `absolute`. * * Pros and cons of each strategy are explained on [Floating UI's Docs](https://floating-ui.com/docs/computePosition#strategy) * * This argument is forwarded to the `` component. */ strategy?: HookSignature["Args"]["Named"]["strategy"]; }; Blocks: { default: [ { reference: FloatingUiComponentSignature["Blocks"]["default"][0]; setReference: FloatingUiComponentSignature["Blocks"]["default"][2]["setReference"]; Content: WithBoundArgs; data: FloatingUiComponentSignature["Blocks"]["default"][2]["data"]; arrow: ModifierLike<{ Element: HTMLElement; }>; } ]; }; } /** * Content uses `popover="manual"` + `showPopover()` to promote * the element to the browser's top layer. This escapes all ancestor * overflow clipping and stacking contexts — the same guarantee that * portalling provided, but using the browser's native mechanism. */ declare const Content: TOC<{ Element: HTMLDivElement; Args: { floating: ModifierLike<{ Element: HTMLElement; }>; /** * By default the popover content is wrapped in a div. * You may change this by supplying the name of an element here. * * For example: * ```gjs * * * this is now focus trapped * * * ``` */ as?: string; }; Blocks: { default: []; }; }>; export declare const Popover: TOC; export default Popover; //# sourceMappingURL=popover.d.ts.map