component-fences.ts:5:7 - error SC2009: values of type 'Map<boolean, string>' cannot be compiled: the Map shape is supported, but 'boolean' is outside its supported key domain (numbers, strings, identity references, or unions of identity references)

  4 | // Boolean Map keys remain outside the supported key domain.
  5 | const byFlag = new Map<boolean, string>();
    |       ^~~~~~
  6 | console.log(byFlag);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:5:16 - error SC1090: Map keys of type 'boolean' (Map keys must be numbers, strings, identity references, or unions of identity references) is not supported yet

  4 | // Boolean Map keys remain outside the supported key domain.
  5 | const byFlag = new Map<boolean, string>();
    |                ^~~~~~~~~~~~~~~~~~~~~~~~~~
  6 | console.log(byFlag);

component-fences.ts:6:13 - error SC2004: uses of 'byFlag' inherit the blocker on its declaration

  5 | const byFlag = new Map<boolean, string>();
  6 | console.log(byFlag);
    |             ^~~~~~
  7 | 

  hint: the declaration of 'byFlag' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:9:7 - error SC2009: values of type 'Map<string, () => void>' cannot be compiled: the Map shape is supported, but '() => void' values have no Map slot yet

   8 | // Map values have no slot for functions.
   9 | const listeners = new Map<string, () => void>();
     |       ^~~~~~~~~
  10 | console.log(listeners);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:9:19 - error SC1090: Map values of type '() => void' (Map values must be number, string, boolean, records, class instances, arrays, promises, Maps, Sets, or unions of those — not functions, 'unknown', or 'any') is not supported yet

   8 | // Map values have no slot for functions.
   9 | const listeners = new Map<string, () => void>();
     |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  10 | console.log(listeners);

component-fences.ts:10:13 - error SC2004: uses of 'listeners' inherit the blocker on its declaration

   9 | const listeners = new Map<string, () => void>();
  10 | console.log(listeners);
     |             ^~~~~~~~~
  11 | 

  hint: the declaration of 'listeners' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:13:7 - error SC2009: values of type 'Set<boolean>' cannot be compiled: the Set shape is supported, but 'boolean' is outside its supported element domain (numbers, strings, identity references, or unions of identity references)

  12 | // Boolean Set elements remain outside the supported element domain.
  13 | const flags = new Set<boolean>();
     |       ^~~~~
  14 | console.log(flags);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:13:15 - error SC1090: Set elements of type 'boolean' (Set elements must be numbers, strings, identity references, or unions of identity references) is not supported yet

  12 | // Boolean Set elements remain outside the supported element domain.
  13 | const flags = new Set<boolean>();
     |               ^~~~~~~~~~~~~~~~~~
  14 | console.log(flags);

component-fences.ts:14:13 - error SC2004: uses of 'flags' inherit the blocker on its declaration

  13 | const flags = new Set<boolean>();
  14 | console.log(flags);
     |             ^~~~~
  15 | 

  hint: the declaration of 'flags' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:17:7 - error SC2009: values of type 'Map<string, number>[]' cannot be compiled: the array shape is supported, but 'Map<string, number>' elements have no array representation yet

  16 | // Arrays cannot hold Map elements yet.
  17 | const rows: Map<string, number>[] = [];
     |       ^~~~
  18 | console.log(rows);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:18:13 - error SC2004: uses of 'rows' inherit the blocker on its declaration

  17 | const rows: Map<string, number>[] = [];
  18 | console.log(rows);
     |             ^~~~
  19 | 

  hint: the declaration of 'rows' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:35:7 - error SC2009: values of type '() => WeakMap<object, number>' cannot be compiled: the function shape is supported, but its return type 'WeakMap<object, number>' does not compile

  34 | // Node's ReferenceError at the root instead).
  35 | const makeWeak = (0 as unknown) as () => WeakMap<object, number>;
     |       ^~~~~~~~
  36 | const storedMake = makeWeak;

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:36:7 - error SC2009: values of type '() => WeakMap<object, number>' cannot be compiled: the function shape is supported, but its return type 'WeakMap<object, number>' does not compile

  35 | const makeWeak = (0 as unknown) as () => WeakMap<object, number>;
  36 | const storedMake = makeWeak;
     |       ^~~~~~~~~~
  37 | console.log(storedMake());

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:36:20 - error SC2004: uses of 'makeWeak' inherit the blocker on its declaration

  35 | const makeWeak = (0 as unknown) as () => WeakMap<object, number>;
  36 | const storedMake = makeWeak;
     |                    ^~~~~~~~
  37 | console.log(storedMake());

  hint: the declaration of 'makeWeak' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:37:13 - error SC2004: uses of 'storedMake' inherit the blocker on its declaration

  36 | const storedMake = makeWeak;
  37 | console.log(storedMake());
     |             ^~~~~~~~~~
  38 | 

  hint: the declaration of 'storedMake' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:44:7 - error SC2009: values of type 'Holder' cannot be compiled: the record shape is supported, but its member 'cache' has type 'WeakMap<object, number>', which does not compile

  43 | }
  44 | const held = (0 as unknown) as Holder;
     |       ^~~~
  45 | const kept = held;

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:45:7 - error SC2009: values of type 'Holder' cannot be compiled: the record shape is supported, but its member 'cache' has type 'WeakMap<object, number>', which does not compile

  44 | const held = (0 as unknown) as Holder;
  45 | const kept = held;
     |       ^~~~
  46 | console.log(kept.label);

  hint: the outer shape is supported — the named component is the blocker; restate it inside the compilable set (number, string, boolean, arrays, Maps, Sets, RegExp, functions, classes, records, unions of those, and 'unknown')

component-fences.ts:45:14 - error SC2004: uses of 'held' inherit the blocker on its declaration

  44 | const held = (0 as unknown) as Holder;
  45 | const kept = held;
     |              ^~~~
  46 | console.log(kept.label);

  hint: the declaration of 'held' did not compile — fix the diagnostic reported there and these sites clear with it

component-fences.ts:46:13 - error SC2004: uses of 'kept' inherit the blocker on its declaration

  45 | const kept = held;
  46 | console.log(kept.label);
     |             ^~~~~~~~~~
  47 | 

  hint: the declaration of 'kept' did not compile — fix the diagnostic reported there and these sites clear with it