Resolve a name through the lookup chain. Returns undefined when the name is unknown OR has a tombstone-suppressed default.
Resolved view: defaults layered with persistent layered with
session, tombstones honored. Read-only — mutate via setAlias /
removeAlias.
True iff getAlias(name) would return a defined entry.
Bare per-tier override view. Defaults excluded. Used by
diagnostics (alias list rendering, debug introspection) and for
round-trip persistence assertions.
Drop an alias. Returns true iff something was effectively removed (or a tombstone was newly written for a default-only name). Tombstones the persistent tier when removing a name that has a default; otherwise just deletes the override.
Set or override an alias. Persistent unless opts.lifetime === 'session'. Validates name shape and body shape at set-time;
throws on invalid input.
Public shape provided by AliasMixin — methods only, per the inter-stuff contract. The persistent (
aliases) and session (aliasesSession) stores live as public fields on the implementing class so the Hydrator can reflect into them by name, but they are NOT part of the contract surface; every external read or write goes through the methods below. Tests that need to seed raw state reach for the concrete class type rather than theAliasnarrowing.