maps.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 keys remain outside the scalar/reference key domain.
  5 | const byFlag = new Map<boolean, string>();
    |       ^~~~~~
  6 | 

  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')

maps.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 keys remain outside the scalar/reference key domain.
  5 | const byFlag = new Map<boolean, string>();
    |                ^~~~~~~~~~~~~~~~~~~~~~~~~~
  6 | 

maps.ts:8: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

  7 | // Values exclude functions (no closure story in the uniform value slot yet).
  8 | const handlers = new Map<string, () => void>();
    |       ^~~~~~~~
  9 | 

  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')

maps.ts:8:18 - 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

  7 | // Values exclude functions (no closure story in the uniform value slot yet).
  8 | const handlers = new Map<string, () => void>();
    |                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  9 | 

maps.ts:14:17 - error SC2009: values of type 'Map<boolean, number>' 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)

  13 | // Map-typed slots elsewhere report the ordinary unsupported-type diagnostic.
  14 | function useBad(m: Map<boolean, number>): number {
     |                 ^
  15 |   return m.size;

  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')

maps.ts:29:28 - error SC1090: JSON.stringify of 'Map<string, number>' values (only number, string, boolean, records, arrays, unions of those, and 'unknown' stringify) are not supported yet

  28 | const m = new Map<string, number>();
  29 | console.log(JSON.stringify(m));
     |                            ^
  30 | 

maps.ts:32:16 - error SC1090: Map methods as values (call 'get' directly) are not supported yet

  31 | // Map methods have no bound-value form — call them directly.
  32 | const getter = m.get;
     |                ^~~~~
  33 | 

maps.ts:36:1 - error SC2004: uses of 'useBad' inherit the blocker on its declaration

  35 | // them relevant; these references are what makes them count.
  36 | useBad(new Map<boolean, number>());
     | ^~~~~~
  37 | maybeMap(true);

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