JSObject typedef
The representation type of all JavaScript objects for inline classes, JSObject <: JSAny.
This is the supertype of all JS objects, but not other JS types, like
primitives. This is the only allowed on
type for inline classes written by
users to model JS interop objects. See https://dart.cn/web/js-interop for
more details on how to use JS interop.
Implementation
// TODO(srujzs): This class _must_ be sealed before we can make this library
// public. Either use the CFE mechanisms that exist today, or use the Dart 3
// sealed classes feature.
// TODO(joshualitt): Do we need to seal any other JS types on JS backends? We
// probably want to seal all JS types on Wasm backends.
// TODO(joshualitt): Add a [JSObject] constructor.
typedef JSObject = js_types.JSObject;