import type { Unstable_TriggerAdapter } from "@assistant-ui/core"; import { type ComponentPropsWithoutRef, type ComponentRef } from "react"; import { Primitive } from "../../../utils/Primitive.js"; import { type TriggerPopoverResourceOutput } from "./TriggerPopoverResource.js"; import type { TriggerBehavior } from "./triggerSelectionResource.js"; export declare const useTriggerPopoverScopeContext: () => TriggerPopoverResourceOutput; export declare const useTriggerPopoverScopeContextOptional: () => TriggerPopoverResourceOutput | null; /** Registration API exposed to behavior sub-primitives. */ export type TriggerBehaviorRegistration = { register(behavior: TriggerBehavior): () => void; }; /** Obtain the registration handle from the parent ``. */ export declare const useTriggerBehaviorRegistration: () => TriggerBehaviorRegistration; export declare namespace ComposerPrimitiveTriggerPopover { type Element = ComponentRef; type Props = Omit, "onSelect"> & { /** The character(s) that activate this trigger (e.g. `"@"`, `"/"`). Also serves as the trigger identity within the root. */ readonly char: string; /** Adapter providing categories and items. */ readonly adapter?: Unstable_TriggerAdapter | undefined; }; } /** * Declares a trigger and renders its popover container. The popover only * renders its DOM (and children) when the trigger character is active in the * composer input and a behavior sub-primitive has been registered. * * A behavior is contributed by rendering exactly one of * `` or `` as a child. Without * a behavior the trigger stays closed. * * Must be placed inside `ComposerPrimitive.Unstable_TriggerPopoverRoot`. * * @example * ```tsx * * * * {(cats) => cats.map(...)} * * * {(items) => items.map(...)} * * * ``` */ export declare const ComposerPrimitiveTriggerPopover: import("react").ForwardRefExoticComponent & import("react").HTMLAttributes & { asChild?: boolean; }, "ref"> & { render?: import("react").ReactElement | undefined; } & import("react").RefAttributes, "ref">, "onSelect"> & { /** The character(s) that activate this trigger (e.g. `"@"`, `"/"`). Also serves as the trigger identity within the root. */ readonly char: string; /** Adapter providing categories and items. */ readonly adapter?: Unstable_TriggerAdapter | undefined; } & import("react").RefAttributes>; //# sourceMappingURL=TriggerPopover.d.ts.map