library {
  // module name: <pod1.def>

  library fragment {
    // package name: pod1

    // class name: pod1/EnumWithoutConstant
    // class name: pod1/EnumWithoutConstant.Companion
    // class name: pod1/EnumWithoutConstant.Var
    // class name: pod1/EnumWithoutConstant.Var.Companion
    // class name: pod1/ForwardEnum
    // class name: pod1/ForwardEnum.Companion
    // class name: pod1/ForwardEnum.Var
    // class name: pod1/ForwardEnum.Var.Companion

    public final enum class pod1/EnumWithoutConstant : kotlin/Enum<pod1/EnumWithoutConstant>, kotlinx/cinterop/CEnum {

      private constructor(value: kotlin/Long)

      public open val value: kotlin/Long
        public open /* non-default */ get

      // companion object: Companion

      // nested class: Var

      // nested class: Companion

      // has Enum.entries
    }

    public final companion object pod1/EnumWithoutConstant.Companion {

      private constructor()

      @kotlin/Deprecated(message = "Will be removed.", replaceWith = kotlin/ReplaceWith(imports = [], expression = ""), level = kotlin/DeprecationLevel.WARNING)
      public final fun byValue(value: kotlin/Long): pod1/EnumWithoutConstant
    }

    public final class pod1/EnumWithoutConstant.Var : kotlinx/cinterop/CEnumVar {

      public constructor(rawPtr: kotlin/native/internal/NativePtr /* = kotlinx/cinterop/NativePtr^ */)

      public final var value: pod1/EnumWithoutConstant
        public final /* non-default */ external get
        public final /* non-default */ external set(value: pod1/EnumWithoutConstant)

      // companion object: Companion

      // nested class: Companion
    }

    @kotlinx/cinterop/internal/CEnumVarTypeSize(size = 8)
    @kotlin/Deprecated(message = "Use sizeOf<T>() or alignOf<T>() instead.", replaceWith = kotlin/ReplaceWith(imports = [], expression = ""), level = kotlin/DeprecationLevel.WARNING)
    public final companion object pod1/EnumWithoutConstant.Var.Companion : kotlinx/cinterop/CPrimitiveVar.Type {

      private constructor()
    }

    public final enum class pod1/ForwardEnum : kotlin/Enum<pod1/ForwardEnum>, kotlinx/cinterop/CEnum {

      private constructor(value: kotlin/Long)

      public open val value: kotlin/Long
        public open /* non-default */ get

      // companion object: Companion

      // nested class: Var

      // nested class: Companion

      @kotlinx/cinterop/internal/ConstantValue.Long(value = 0L)
      A,

      @kotlinx/cinterop/internal/ConstantValue.Long(value = 1L)
      B,

      // has Enum.entries
    }

    public final companion object pod1/ForwardEnum.Companion {

      private constructor()

      @kotlin/Deprecated(message = "Will be removed.", replaceWith = kotlin/ReplaceWith(imports = [], expression = ""), level = kotlin/DeprecationLevel.WARNING)
      public final fun byValue(value: kotlin/Long): pod1/ForwardEnum
    }

    public final class pod1/ForwardEnum.Var : kotlinx/cinterop/CEnumVar {

      public constructor(rawPtr: kotlin/native/internal/NativePtr /* = kotlinx/cinterop/NativePtr^ */)

      public final var value: pod1/ForwardEnum
        public final /* non-default */ external get
        public final /* non-default */ external set(value: pod1/ForwardEnum)

      // companion object: Companion

      // nested class: Companion
    }

    @kotlinx/cinterop/internal/CEnumVarTypeSize(size = 8)
    @kotlin/Deprecated(message = "Use sizeOf<T>() or alignOf<T>() instead.", replaceWith = kotlin/ReplaceWith(imports = [], expression = ""), level = kotlin/DeprecationLevel.WARNING)
    public final companion object pod1/ForwardEnum.Var.Companion : kotlinx/cinterop/CPrimitiveVar.Type {

      private constructor()
    }

    package {

      public final var enumWithoutConstantVar: pod1/EnumWithoutConstant
        @kotlinx/cinterop/internal/CGlobalAccess(name = "enumWithoutConstantVar")
        @kotlinx/cinterop/internal/CCall(id = "knifunptr_pod1_enumWithoutConstantVar_getter_0")
        public final /* non-default */ external get
        @kotlinx/cinterop/internal/CGlobalAccess(name = "enumWithoutConstantVar")
        @kotlinx/cinterop/internal/CCall(id = "knifunptr_pod1_enumWithoutConstantVar_setter_0")
        public final /* non-default */ external set(value: pod1/EnumWithoutConstant)

      public final var forwardEnumVar: pod1/ForwardEnum
        @kotlinx/cinterop/internal/CGlobalAccess(name = "forwardEnumVar")
        @kotlinx/cinterop/internal/CCall(id = "knifunptr_pod1_forwardEnumVar_getter_0")
        public final /* non-default */ external get
        @kotlinx/cinterop/internal/CGlobalAccess(name = "forwardEnumVar")
        @kotlinx/cinterop/internal/CCall(id = "knifunptr_pod1_forwardEnumVar_setter_0")
        public final /* non-default */ external set(value: pod1/ForwardEnum)
    }
  }
}
