// Copyright 2019 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

@abstract
extern class Module extends HeapObject {
  exports: ObjectHashTable;
  hash: Smi;
  status: Smi;
  module_namespace: JSModuleNamespace|Undefined;
  exception: Object;
}

@generateCppClass
extern class JSModuleNamespace extends JSSpecialObject {
  module: Module;
}