export interface EntityIdInfo { /** The raw identifier (usually a UUID) to display + copy. */ id: string; /** Human name of the entity (e.g. "My Project"). Shown as the dialog subtitle. */ name?: string; /** Entity kind (e.g. "Project", "Agent", "Vibe"). Used in the title. */ type?: string; /** Optional extra copyable fields (e.g. slug, workspace id). */ details?: Array<{ label: string; value: string; }>; } export interface EntityIdModalControl { open: boolean; entity: EntityIdInfo | null; /** Open the modal for a given entity. */ show: (entity: EntityIdInfo) => void; hide: () => void; setOpen: (open: boolean) => void; } /** * State manager for the reusable {@link EntityIdModal}. Use it once per page, * then call `show({ id, name, type, details })` from a "Get ID" menu item. */ export declare function useEntityIdModal(): EntityIdModalControl; /** * Reusable modal that shows an entity's identifier (and optional detail fields) * with click-to-copy. Pair with {@link useEntityIdModal} and a "Get ID" action * in the entity's dropdown so raw UUIDs never have to be rendered inline. */ export declare function EntityIdModal({ control }: { control: EntityIdModalControl; }): import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=entity-id-modal.d.ts.map