
package pod1 {

    @CStruct(spelling = "struct  { int x; }") class IOGPoint constructor(rawPtr: NativePtr /* = NativePtr */) : CStructVar {
        var x: Int
            @CStruct.MemberAt(offset = 0.toLong()) get
            @CStruct.MemberAt(offset = 0.toLong()) set
        @CStruct.VarType(align = 4, size = 4.toLong()) @Deprecated(level = DeprecationLevel.WARNING, message = "Use sizeOf<T>() or alignOf<T>() instead.", replaceWith = ReplaceWith(expression = "", imports = {})) companion object : CStructVar.Type
    }

    enum class NXMouseButton private constructor(value: UInt) : Enum<NXMouseButton>, CEnum {
        @ConstantValue.UInt(value = 0.toUInt()) enum entry NX_OneButton
        override val value: UInt

        class Var constructor(rawPtr: NativePtr /* = NativePtr */) : CEnumVar {
            var value: NXMouseButton
            @CEnumVarTypeSize(size = 4) @Deprecated(level = DeprecationLevel.WARNING, message = "Use sizeOf<T>() or alignOf<T>() instead.", replaceWith = ReplaceWith(expression = "", imports = {})) companion object : CPrimitiveVar.Type
        }

        companion object {
            @Deprecated(level = DeprecationLevel.WARNING, message = "Will be removed.", replaceWith = ReplaceWith(expression = "", imports = {})) fun byValue(value: UInt): NXMouseButton
        }

    }

}

package pod1 {
    @CCall(id = "knifunptr_pod11_IOHIDGetButtonEventNum") external fun IOHIDGetButtonEventNum(button: NXMouseButton): Int
    @CCall(id = "knifunptr_pod10_IOHIDPostEvent") external fun IOHIDPostEvent(location: CValue<IOGPoint>): Int
}

