package events

open external class internal {
  external var property: Int
    external get
    external set

  open external class EventEmitterP : internal {
    external constructor() /* primary */

  }

  open external class EventEmitterS : internal {
    external constructor(a: Any)

  }

  external enum class NestedExternalEnum : Enum<NestedExternalEnum> {
    A = NestedExternalEnum()

    B = NestedExternalEnum()

    private external constructor() /* primary */

    external /* static */ fun valueOf(value: String): NestedExternalEnum /* Synthetic body for ENUM_VALUEOF */

    external /* static */ fun values(): Array<NestedExternalEnum> /* Synthetic body for ENUM_VALUES */

    external /* static */ val entries: EnumEntries<NestedExternalEnum>
      external get(): EnumEntries<NestedExternalEnum> /* Synthetic body for ENUM_ENTRIES */

  }

  external interface NestedExternalInterface {
  }

  external object NestedExternalObject : internal {
    private external constructor() /* primary */

  }

  external constructor() /* primary */

  external fun function(): String

}

external interface A {
  external companion object Companion {
    private external constructor() /* primary */

  }

}

