goog.module('jsoverlay.NativeJsTypeWithOverlay.Companion$impl');

const j_l_Object = goog.require('java.lang.Object$impl');
const $Util = goog.require('nativebootstrap.Util$impl');

let $Overlay = goog.forwardDeclare('jsoverlay.NativeJsTypeWithOverlay.$Overlay$impl');
let NativeJsTypeWithOverlay = goog.forwardDeclare('test.foo.NativeJsTypeWithOverlay');

/**
 * @final
 */
class Companion extends j_l_Object {
 /** @protected @nodts */
 constructor() {
  super();
 }
 /** @nodts @return {!Companion} */
 static $create__() {
  let $instance = new Companion();
  $instance.$ctor__jsoverlay_NativeJsTypeWithOverlay_Companion__void();
  return $instance;
 }
 /** @nodts */
 $ctor__jsoverlay_NativeJsTypeWithOverlay_Companion__void() {
  this.$ctor__java_lang_Object__void();
 }
 /** @final @nodts */
 m_n__void() {
  NativeJsTypeWithOverlay.n();
  return;
 }
 /** @final @nodts @return {number} */
 m_fun__int() {
  return $Overlay.m_fun__int();
 }
 /** @final @nodts @return {number} */
 m_bar__int() {
  return $Overlay.m_bar__int();
 }
 /** @final @nodts @return {number} */
 m_varargs__arrayOf_int__int(/** !Array<number> */ arg0) {
  return $Overlay.m_varargs__arrayOf_int__int(arg0);
 }
 /** @final @nodts */
 m_overlay__jsoverlay_NativeJsTypeWithOverlay__void(/** NativeJsTypeWithOverlay */ arg0) {
  $Overlay.m_overlay__jsoverlay_NativeJsTypeWithOverlay__void(arg0);
 }
 /** @nodts @return {!Companion} */
 static get f_Companion__jsoverlay_NativeJsTypeWithOverlay_Companion() {
  return (Companion.$clinit(), Companion.$static_Companion__jsoverlay_NativeJsTypeWithOverlay_Companion);
 }
 /** @nodts */
 static $clinit() {
  Companion.$clinit = () =>{};
  Companion.$loadModules();
  j_l_Object.$clinit();
  Companion.$static_Companion__jsoverlay_NativeJsTypeWithOverlay_Companion = Companion.$create__();
 }
 /** @nodts @return {boolean} */
 static $isInstance(/** ? */ instance) {
  return instance instanceof Companion;
 }
 
 /** @nodts */
 static $loadModules() {
  $Overlay = goog.module.get('jsoverlay.NativeJsTypeWithOverlay.$Overlay$impl');
  NativeJsTypeWithOverlay = goog.module.get('test.foo.NativeJsTypeWithOverlay');
 }
}
/**@private {!Companion} @nodts*/
Companion.$static_Companion__jsoverlay_NativeJsTypeWithOverlay_Companion;
$Util.$setClassMetadata(Companion, 'jsoverlay.NativeJsTypeWithOverlay$Companion');

exports = Companion;

//# sourceMappingURL=NativeJsTypeWithOverlay$Companion.js.map
