import type { GadgetDescriptor } from '../types/data-contract.js'; /** * The first-party `@ggui-ai/gadgets` package name. Used as * the default `package` for every entry in {@link STDLIB_GADGETS} * and as the `DEFAULT_GADGET_PACKAGE` literal in the hygiene linter. */ export declare const STDLIB_GADGETS_PACKAGE = "@ggui-ai/gadgets"; /** * Pinned semver of the stdlib gadgets every descriptor declares on * its `version` field. Mirrors * `packages/gadgets/package.json#version`; a cross-package parity test * in `@ggui-ai/gadgets` asserts the two stay in sync, so a release-time * bump to the runtime package without updating this constant fails CI. */ export declare const STDLIB_GADGETS_VERSION = "0.20.0"; /** * v1 catalog of stdlib gadget descriptors. Every entry's * `package` defaults to {@link STDLIB_GADGETS_PACKAGE}; the * `permission` field, where present, mirrors the Web Permissions API * name and lines up with the hygiene linter's * `KNOWN_PERMISSION_HOOKS` table. * * **Ordering:** alphabetical by hook name. Stable so consumers can * diff the list across protocol minor bumps without false positives * from re-ordering. * * **Shape note:** entries are typed `Readonly` so * downstream consumers (App.gadgets default-on-read, the LLM * generator's catalog, the `ggui_list_gadgets` handler) * can structurally clone without mutating the source. Callers that * need a mutable copy should `structuredClone` explicitly. */ export declare const STDLIB_GADGETS: readonly Readonly[]; /** * Hook-name index over {@link STDLIB_GADGETS}. Lazily * constructed for callers that need O(1) "is hook X part of the * stdlib?" checks (the hygiene linter, the per-app gadget validator, * the `ggui_list_gadgets` handler). * * Frozen so accidental mutation is loud, not silent. */ export declare const STDLIB_GADGET_HOOKS: ReadonlySet; //# sourceMappingURL=stdlib-gadgets.d.ts.map