/** * Compat-mode `{{unique-id}}` — stable per-(render-context, call-site) id. * * Ember's `{{unique-id}}` returns a unique identifier string that is STABLE for * a given call-site across re-renders of the same component instance, and * DISTINCT across instances (and across sibling call-sites). Classic Glimmer * gets this for free from its per-instance reference cache; GXT's fine-grained * getters re-invoke a helper on every read, so a naive `unique-id()` would mint * a fresh id each time. * * The compiler (serializers/value.ts `buildHelper`) assigns every `{{unique-id}}` * / `(unique-id)` call-site a stable per-template site index and emits * `$_uid(this, SITE_INDEX)`. This runtime helper keeps a `WeakMap` * so: * - the SAME ctx + SAME site index returns the SAME id (stable re-renders), * - a DIFFERENT ctx (a different instance) gets a DIFFERENT id, * - a DIFFERENT site index (a sibling `{{unique-id}}`) gets a DIFFERENT id. * * This retires the Ember bridge's positional call-site rewrite * (`$_maybeHelper("unique-id",…)` → `_uid[N]`) and its `uidOuterScope` * pre-computed-array injection — the stability now lives in the emission + * runtime, not in a host-side code rewrite. */ /** * Reset the module-global unique-id counter (test hook). Mirrors the * `resetNodeCounter` / `resetLogSiteCounter` idioms. */ export declare function resetUniqueIdCounter(): void; export declare function $_uid(ctx: unknown, siteIndex: number): string;