return {
							 | 
						|
								  defines = {
							 | 
						|
								    {
							 | 
						|
								      name = "RAYLIB_H",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAYLIB_VERSION_MAJOR",
							 | 
						|
								      type = "INT",
							 | 
						|
								      value = 5,
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAYLIB_VERSION_MINOR",
							 | 
						|
								      type = "INT",
							 | 
						|
								      value = 5,
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAYLIB_VERSION_PATCH",
							 | 
						|
								      type = "INT",
							 | 
						|
								      value = 0,
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAYLIB_VERSION",
							 | 
						|
								      type = "STRING",
							 | 
						|
								      value = "5.5",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "__declspec(x)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "__attribute__((x))",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RLAPI",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "__declspec(dllexport)",
							 | 
						|
								      description = "We are building the library as a Win32 shared library (.dll)"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PI",
							 | 
						|
								      type = "FLOAT",
							 | 
						|
								      value = 3.14159265358979323846,
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DEG2RAD",
							 | 
						|
								      type = "FLOAT_MATH",
							 | 
						|
								      value = "(PI/180.0f)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAD2DEG",
							 | 
						|
								      type = "FLOAT_MATH",
							 | 
						|
								      value = "(180.0f/PI)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_MALLOC(sz)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "malloc(sz)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_CALLOC(n,sz)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "calloc(n,sz)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_REALLOC(ptr,sz)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "realloc(ptr,sz)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_FREE(ptr)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "free(ptr)",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CLITERAL(type)",
							 | 
						|
								      type = "MACRO",
							 | 
						|
								      value = "type",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_COLOR_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_RECTANGLE_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_VECTOR2_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_VECTOR3_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_VECTOR4_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_QUATERNION_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_MATRIX_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LIGHTGRAY",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 200, 200, 200, 255 }",
							 | 
						|
								      description = "Light Gray"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GRAY",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 130, 130, 130, 255 }",
							 | 
						|
								      description = "Gray"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DARKGRAY",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 80, 80, 80, 255 }",
							 | 
						|
								      description = "Dark Gray"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "YELLOW",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 253, 249, 0, 255 }",
							 | 
						|
								      description = "Yellow"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GOLD",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 255, 203, 0, 255 }",
							 | 
						|
								      description = "Gold"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ORANGE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 255, 161, 0, 255 }",
							 | 
						|
								      description = "Orange"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PINK",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 255, 109, 194, 255 }",
							 | 
						|
								      description = "Pink"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RED",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 230, 41, 55, 255 }",
							 | 
						|
								      description = "Red"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MAROON",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 190, 33, 55, 255 }",
							 | 
						|
								      description = "Maroon"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GREEN",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 228, 48, 255 }",
							 | 
						|
								      description = "Green"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LIME",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 158, 47, 255 }",
							 | 
						|
								      description = "Lime"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DARKGREEN",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 117, 44, 255 }",
							 | 
						|
								      description = "Dark Green"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SKYBLUE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 102, 191, 255, 255 }",
							 | 
						|
								      description = "Sky Blue"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BLUE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 121, 241, 255 }",
							 | 
						|
								      description = "Blue"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DARKBLUE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 82, 172, 255 }",
							 | 
						|
								      description = "Dark Blue"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PURPLE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 200, 122, 255, 255 }",
							 | 
						|
								      description = "Purple"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "VIOLET",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 135, 60, 190, 255 }",
							 | 
						|
								      description = "Violet"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DARKPURPLE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 112, 31, 126, 255 }",
							 | 
						|
								      description = "Dark Purple"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BEIGE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 211, 176, 131, 255 }",
							 | 
						|
								      description = "Beige"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BROWN",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 127, 106, 79, 255 }",
							 | 
						|
								      description = "Brown"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DARKBROWN",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 76, 63, 47, 255 }",
							 | 
						|
								      description = "Dark Brown"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WHITE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 255, 255, 255, 255 }",
							 | 
						|
								      description = "White"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BLACK",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 0, 0, 255 }",
							 | 
						|
								      description = "Black"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BLANK",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 0, 0, 0, 0 }",
							 | 
						|
								      description = "Blank (Transparent)"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MAGENTA",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 255, 0, 255, 255 }",
							 | 
						|
								      description = "Magenta"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RAYWHITE",
							 | 
						|
								      type = "COLOR",
							 | 
						|
								      value = "CLITERAL(Color){ 245, 245, 245, 255 }",
							 | 
						|
								      description = "My own White (raylib logo)"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RL_BOOL_TYPE",
							 | 
						|
								      type = "GUARD",
							 | 
						|
								      value = "",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MOUSE_LEFT_BUTTON",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "MOUSE_BUTTON_LEFT",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MOUSE_RIGHT_BUTTON",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "MOUSE_BUTTON_RIGHT",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MOUSE_MIDDLE_BUTTON",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "MOUSE_BUTTON_MIDDLE",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MATERIAL_MAP_DIFFUSE",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "MATERIAL_MAP_ALBEDO",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MATERIAL_MAP_SPECULAR",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "MATERIAL_MAP_METALNESS",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SHADER_LOC_MAP_DIFFUSE",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "SHADER_LOC_MAP_ALBEDO",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SHADER_LOC_MAP_SPECULAR",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "SHADER_LOC_MAP_METALNESS",
							 | 
						|
								      description = ""
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseRay",
							 | 
						|
								      type = "UNKNOWN",
							 | 
						|
								      value = "GetScreenToWorldRay",
							 | 
						|
								      description = "Compatibility hack for previous raylib versions"
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  structs = {
							 | 
						|
								    {
							 | 
						|
								      name = "Vector2",
							 | 
						|
								      description = "Vector2, 2 components",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "x",
							 | 
						|
								          description = "Vector x component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "y",
							 | 
						|
								          description = "Vector y component"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Vector3",
							 | 
						|
								      description = "Vector3, 3 components",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "x",
							 | 
						|
								          description = "Vector x component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "y",
							 | 
						|
								          description = "Vector y component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "z",
							 | 
						|
								          description = "Vector z component"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Vector4",
							 | 
						|
								      description = "Vector4, 4 components",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "x",
							 | 
						|
								          description = "Vector x component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "y",
							 | 
						|
								          description = "Vector y component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "z",
							 | 
						|
								          description = "Vector z component"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "w",
							 | 
						|
								          description = "Vector w component"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Matrix",
							 | 
						|
								      description = "Matrix, 4x4 components, column major, OpenGL style, right-handed",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m0",
							 | 
						|
								          description = "Matrix first row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m4",
							 | 
						|
								          description = "Matrix first row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m8",
							 | 
						|
								          description = "Matrix first row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m12",
							 | 
						|
								          description = "Matrix first row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m1",
							 | 
						|
								          description = "Matrix second row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m5",
							 | 
						|
								          description = "Matrix second row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m9",
							 | 
						|
								          description = "Matrix second row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m13",
							 | 
						|
								          description = "Matrix second row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m2",
							 | 
						|
								          description = "Matrix third row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m6",
							 | 
						|
								          description = "Matrix third row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m10",
							 | 
						|
								          description = "Matrix third row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m14",
							 | 
						|
								          description = "Matrix third row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m3",
							 | 
						|
								          description = "Matrix fourth row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m7",
							 | 
						|
								          description = "Matrix fourth row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m11",
							 | 
						|
								          description = "Matrix fourth row (4 components)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "m15",
							 | 
						|
								          description = "Matrix fourth row (4 components)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Color",
							 | 
						|
								      description = "Color, 4 components, R8G8B8A8 (32bit)",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char",
							 | 
						|
								          name = "r",
							 | 
						|
								          description = "Color red value"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char",
							 | 
						|
								          name = "g",
							 | 
						|
								          description = "Color green value"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char",
							 | 
						|
								          name = "b",
							 | 
						|
								          description = "Color blue value"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char",
							 | 
						|
								          name = "a",
							 | 
						|
								          description = "Color alpha value"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Rectangle",
							 | 
						|
								      description = "Rectangle, 4 components",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "x",
							 | 
						|
								          description = "Rectangle top-left corner position x"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "y",
							 | 
						|
								          description = "Rectangle top-left corner position y"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "width",
							 | 
						|
								          description = "Rectangle width"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "height",
							 | 
						|
								          description = "Rectangle height"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Image",
							 | 
						|
								      description = "Image, pixel data stored in CPU memory (RAM)",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "void *",
							 | 
						|
								          name = "data",
							 | 
						|
								          description = "Image raw data"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "width",
							 | 
						|
								          description = "Image base width"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "height",
							 | 
						|
								          description = "Image base height"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "mipmaps",
							 | 
						|
								          description = "Mipmap levels, 1 by default"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "format",
							 | 
						|
								          description = "Data format (PixelFormat type)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Texture",
							 | 
						|
								      description = "Texture, tex data stored in GPU memory (VRAM)",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "id",
							 | 
						|
								          description = "OpenGL texture id"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "width",
							 | 
						|
								          description = "Texture base width"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "height",
							 | 
						|
								          description = "Texture base height"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "mipmaps",
							 | 
						|
								          description = "Mipmap levels, 1 by default"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "format",
							 | 
						|
								          description = "Data format (PixelFormat type)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RenderTexture",
							 | 
						|
								      description = "RenderTexture, fbo for texture rendering",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "id",
							 | 
						|
								          description = "OpenGL framebuffer object id"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Texture",
							 | 
						|
								          name = "texture",
							 | 
						|
								          description = "Color buffer attachment texture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Texture",
							 | 
						|
								          name = "depth",
							 | 
						|
								          description = "Depth buffer attachment texture"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "NPatchInfo",
							 | 
						|
								      description = "NPatchInfo, n-patch layout info",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Rectangle",
							 | 
						|
								          name = "source",
							 | 
						|
								          description = "Texture source rectangle"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "left",
							 | 
						|
								          description = "Left border offset"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "top",
							 | 
						|
								          description = "Top border offset"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "right",
							 | 
						|
								          description = "Right border offset"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "bottom",
							 | 
						|
								          description = "Bottom border offset"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "layout",
							 | 
						|
								          description = "Layout of the n-patch: 3x3, 1x3 or 3x1"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GlyphInfo",
							 | 
						|
								      description = "GlyphInfo, font characters glyphs info",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "value",
							 | 
						|
								          description = "Character value (Unicode)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "offsetX",
							 | 
						|
								          description = "Character offset X when drawing"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "offsetY",
							 | 
						|
								          description = "Character offset Y when drawing"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "advanceX",
							 | 
						|
								          description = "Character advance position X"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Image",
							 | 
						|
								          name = "image",
							 | 
						|
								          description = "Character image data"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Font",
							 | 
						|
								      description = "Font, font texture and GlyphInfo array data",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "baseSize",
							 | 
						|
								          description = "Base size (default chars height)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "glyphCount",
							 | 
						|
								          description = "Number of glyph characters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "glyphPadding",
							 | 
						|
								          description = "Padding around the glyph characters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Texture2D",
							 | 
						|
								          name = "texture",
							 | 
						|
								          description = "Texture atlas containing the glyphs"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Rectangle *",
							 | 
						|
								          name = "recs",
							 | 
						|
								          description = "Rectangles in texture for the glyphs"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "GlyphInfo *",
							 | 
						|
								          name = "glyphs",
							 | 
						|
								          description = "Glyphs info data"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Camera3D",
							 | 
						|
								      description = "Camera, defines position/orientation in 3d space",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "position",
							 | 
						|
								          description = "Camera position"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "target",
							 | 
						|
								          description = "Camera target it looks-at"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "up",
							 | 
						|
								          description = "Camera up vector (rotation over its axis)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "fovy",
							 | 
						|
								          description = "Camera field-of-view aperture in Y (degrees) in perspective, used as near plane width in orthographic"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "projection",
							 | 
						|
								          description = "Camera projection: CAMERA_PERSPECTIVE or CAMERA_ORTHOGRAPHIC"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Camera2D",
							 | 
						|
								      description = "Camera2D, defines position/orientation in 2d space",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Vector2",
							 | 
						|
								          name = "offset",
							 | 
						|
								          description = "Camera offset (displacement from target)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector2",
							 | 
						|
								          name = "target",
							 | 
						|
								          description = "Camera target (rotation and zoom origin)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "rotation",
							 | 
						|
								          description = "Camera rotation in degrees"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "zoom",
							 | 
						|
								          description = "Camera zoom (scaling), should be 1.0f by default"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Mesh",
							 | 
						|
								      description = "Mesh, vertex data and vao/vbo",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "vertexCount",
							 | 
						|
								          description = "Number of vertices stored in arrays"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "triangleCount",
							 | 
						|
								          description = "Number of triangles stored (indexed or not)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "vertices",
							 | 
						|
								          description = "Vertex position (XYZ - 3 components per vertex) (shader-location = 0)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "texcoords",
							 | 
						|
								          description = "Vertex texture coordinates (UV - 2 components per vertex) (shader-location = 1)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "texcoords2",
							 | 
						|
								          description = "Vertex texture second coordinates (UV - 2 components per vertex) (shader-location = 5)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "normals",
							 | 
						|
								          description = "Vertex normals (XYZ - 3 components per vertex) (shader-location = 2)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "tangents",
							 | 
						|
								          description = "Vertex tangents (XYZW - 4 components per vertex) (shader-location = 4)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char *",
							 | 
						|
								          name = "colors",
							 | 
						|
								          description = "Vertex colors (RGBA - 4 components per vertex) (shader-location = 3)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned short *",
							 | 
						|
								          name = "indices",
							 | 
						|
								          description = "Vertex indices (in case vertex data comes indexed)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "animVertices",
							 | 
						|
								          description = "Animated vertex positions (after bones transformations)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "animNormals",
							 | 
						|
								          description = "Animated normals (after bones transformations)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned char *",
							 | 
						|
								          name = "boneIds",
							 | 
						|
								          description = "Vertex bone ids, max 255 bone ids, up to 4 bones influence by vertex (skinning) (shader-location = 6)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float *",
							 | 
						|
								          name = "boneWeights",
							 | 
						|
								          description = "Vertex bone weight, up to 4 bones influence by vertex (skinning) (shader-location = 7)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Matrix *",
							 | 
						|
								          name = "boneMatrices",
							 | 
						|
								          description = "Bones animated transformation matrices"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "boneCount",
							 | 
						|
								          description = "Number of bones"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "vaoId",
							 | 
						|
								          description = "OpenGL Vertex Array Object id"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int *",
							 | 
						|
								          name = "vboId",
							 | 
						|
								          description = "OpenGL Vertex Buffer Objects id (default vertex data)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Shader",
							 | 
						|
								      description = "Shader",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "id",
							 | 
						|
								          description = "Shader program id"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int *",
							 | 
						|
								          name = "locs",
							 | 
						|
								          description = "Shader locations array (RL_MAX_SHADER_LOCATIONS)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MaterialMap",
							 | 
						|
								      description = "MaterialMap",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Texture2D",
							 | 
						|
								          name = "texture",
							 | 
						|
								          description = "Material map texture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Color",
							 | 
						|
								          name = "color",
							 | 
						|
								          description = "Material map color"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "value",
							 | 
						|
								          description = "Material map value"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Material",
							 | 
						|
								      description = "Material, includes shader and maps",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Shader",
							 | 
						|
								          name = "shader",
							 | 
						|
								          description = "Material shader"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "MaterialMap *",
							 | 
						|
								          name = "maps",
							 | 
						|
								          description = "Material maps array (MAX_MATERIAL_MAPS)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[4]",
							 | 
						|
								          name = "params",
							 | 
						|
								          description = "Material generic parameters (if required)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Transform",
							 | 
						|
								      description = "Transform, vertex transformation data",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "translation",
							 | 
						|
								          description = "Translation"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Quaternion",
							 | 
						|
								          name = "rotation",
							 | 
						|
								          description = "Rotation"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "scale",
							 | 
						|
								          description = "Scale"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BoneInfo",
							 | 
						|
								      description = "Bone, skeletal animation bone",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "char[32]",
							 | 
						|
								          name = "name",
							 | 
						|
								          description = "Bone name"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "parent",
							 | 
						|
								          description = "Bone parent"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Model",
							 | 
						|
								      description = "Model, meshes, materials and animation data",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Matrix",
							 | 
						|
								          name = "transform",
							 | 
						|
								          description = "Local transform matrix"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "meshCount",
							 | 
						|
								          description = "Number of meshes"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "materialCount",
							 | 
						|
								          description = "Number of materials"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Mesh *",
							 | 
						|
								          name = "meshes",
							 | 
						|
								          description = "Meshes array"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Material *",
							 | 
						|
								          name = "materials",
							 | 
						|
								          description = "Materials array"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int *",
							 | 
						|
								          name = "meshMaterial",
							 | 
						|
								          description = "Mesh material number"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "boneCount",
							 | 
						|
								          description = "Number of bones"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "BoneInfo *",
							 | 
						|
								          name = "bones",
							 | 
						|
								          description = "Bones information (skeleton)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Transform *",
							 | 
						|
								          name = "bindPose",
							 | 
						|
								          description = "Bones base transformation (pose)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ModelAnimation",
							 | 
						|
								      description = "ModelAnimation",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "boneCount",
							 | 
						|
								          description = "Number of bones"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "frameCount",
							 | 
						|
								          description = "Number of animation frames"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "BoneInfo *",
							 | 
						|
								          name = "bones",
							 | 
						|
								          description = "Bones information (skeleton)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Transform **",
							 | 
						|
								          name = "framePoses",
							 | 
						|
								          description = "Poses array by frame"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "char[32]",
							 | 
						|
								          name = "name",
							 | 
						|
								          description = "Animation name"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Ray",
							 | 
						|
								      description = "Ray, ray for raycasting",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "position",
							 | 
						|
								          description = "Ray position (origin)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "direction",
							 | 
						|
								          description = "Ray direction (normalized)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RayCollision",
							 | 
						|
								      description = "RayCollision, ray hit information",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "bool",
							 | 
						|
								          name = "hit",
							 | 
						|
								          description = "Did the ray hit something?"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "distance",
							 | 
						|
								          description = "Distance to the nearest hit"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "point",
							 | 
						|
								          description = "Point of the nearest hit"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "normal",
							 | 
						|
								          description = "Surface normal of hit"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BoundingBox",
							 | 
						|
								      description = "BoundingBox",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "min",
							 | 
						|
								          description = "Minimum vertex box-corner"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Vector3",
							 | 
						|
								          name = "max",
							 | 
						|
								          description = "Maximum vertex box-corner"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Wave",
							 | 
						|
								      description = "Wave, audio wave data",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "frameCount",
							 | 
						|
								          description = "Total number of frames (considering channels)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "sampleRate",
							 | 
						|
								          description = "Frequency (samples per second)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "sampleSize",
							 | 
						|
								          description = "Bit depth (bits per sample): 8, 16, 32 (24 not supported)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "channels",
							 | 
						|
								          description = "Number of channels (1-mono, 2-stereo, ...)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "void *",
							 | 
						|
								          name = "data",
							 | 
						|
								          description = "Buffer data pointer"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AudioStream",
							 | 
						|
								      description = "AudioStream, custom audio stream",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "rAudioBuffer *",
							 | 
						|
								          name = "buffer",
							 | 
						|
								          description = "Pointer to internal data used by the audio system"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "rAudioProcessor *",
							 | 
						|
								          name = "processor",
							 | 
						|
								          description = "Pointer to internal data processor, useful for audio effects"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "sampleRate",
							 | 
						|
								          description = "Frequency (samples per second)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "sampleSize",
							 | 
						|
								          description = "Bit depth (bits per sample): 8, 16, 32 (24 not supported)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "channels",
							 | 
						|
								          description = "Number of channels (1-mono, 2-stereo, ...)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Sound",
							 | 
						|
								      description = "Sound",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "AudioStream",
							 | 
						|
								          name = "stream",
							 | 
						|
								          description = "Audio stream"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "frameCount",
							 | 
						|
								          description = "Total number of frames (considering channels)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Music",
							 | 
						|
								      description = "Music, audio stream, anything longer than ~10 seconds should be streamed",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "AudioStream",
							 | 
						|
								          name = "stream",
							 | 
						|
								          description = "Audio stream"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "frameCount",
							 | 
						|
								          description = "Total number of frames (considering channels)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "bool",
							 | 
						|
								          name = "looping",
							 | 
						|
								          description = "Music looping enable"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "ctxType",
							 | 
						|
								          description = "Type of music context (audio filetype)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "void *",
							 | 
						|
								          name = "ctxData",
							 | 
						|
								          description = "Audio context data, depends on type"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "VrDeviceInfo",
							 | 
						|
								      description = "VrDeviceInfo, Head-Mounted-Display device parameters",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "hResolution",
							 | 
						|
								          description = "Horizontal resolution in pixels"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int",
							 | 
						|
								          name = "vResolution",
							 | 
						|
								          description = "Vertical resolution in pixels"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "hScreenSize",
							 | 
						|
								          description = "Horizontal size in meters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "vScreenSize",
							 | 
						|
								          description = "Vertical size in meters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "eyeToScreenDistance",
							 | 
						|
								          description = "Distance between eye and display in meters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "lensSeparationDistance",
							 | 
						|
								          description = "Lens separation distance in meters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float",
							 | 
						|
								          name = "interpupillaryDistance",
							 | 
						|
								          description = "IPD (distance between pupils) in meters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[4]",
							 | 
						|
								          name = "lensDistortionValues",
							 | 
						|
								          description = "Lens distortion constant parameters"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[4]",
							 | 
						|
								          name = "chromaAbCorrection",
							 | 
						|
								          description = "Chromatic aberration correction parameters"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "VrStereoConfig",
							 | 
						|
								      description = "VrStereoConfig, VR stereo rendering configuration for simulator",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "Matrix[2]",
							 | 
						|
								          name = "projection",
							 | 
						|
								          description = "VR projection matrices (per eye)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "Matrix[2]",
							 | 
						|
								          name = "viewOffset",
							 | 
						|
								          description = "VR view offset matrices (per eye)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "leftLensCenter",
							 | 
						|
								          description = "VR left lens center"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "rightLensCenter",
							 | 
						|
								          description = "VR right lens center"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "leftScreenCenter",
							 | 
						|
								          description = "VR left screen center"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "rightScreenCenter",
							 | 
						|
								          description = "VR right screen center"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "scale",
							 | 
						|
								          description = "VR distortion scale"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "float[2]",
							 | 
						|
								          name = "scaleIn",
							 | 
						|
								          description = "VR distortion scale in"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "FilePathList",
							 | 
						|
								      description = "File path list",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "capacity",
							 | 
						|
								          description = "Filepaths max entries"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "count",
							 | 
						|
								          description = "Filepaths entries count"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "char **",
							 | 
						|
								          name = "paths",
							 | 
						|
								          description = "Filepaths entries"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AutomationEvent",
							 | 
						|
								      description = "Automation event",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "frame",
							 | 
						|
								          description = "Event frame"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "type",
							 | 
						|
								          description = "Event type (AutomationEventType)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "int[4]",
							 | 
						|
								          name = "params",
							 | 
						|
								          description = "Event parameters (if required)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AutomationEventList",
							 | 
						|
								      description = "Automation event list",
							 | 
						|
								      fields = {
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "capacity",
							 | 
						|
								          description = "Events max entries (MAX_AUTOMATION_EVENTS)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "unsigned int",
							 | 
						|
								          name = "count",
							 | 
						|
								          description = "Events entries count"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          type = "AutomationEvent *",
							 | 
						|
								          name = "events",
							 | 
						|
								          description = "Events entries"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  aliases = {
							 | 
						|
								    {
							 | 
						|
								      type = "Vector4",
							 | 
						|
								      name = "Quaternion",
							 | 
						|
								      description = "Quaternion, 4 components (Vector4 alias)"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      type = "Texture",
							 | 
						|
								      name = "Texture2D",
							 | 
						|
								      description = "Texture2D, same as Texture"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      type = "Texture",
							 | 
						|
								      name = "TextureCubemap",
							 | 
						|
								      description = "TextureCubemap, same as Texture"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      type = "RenderTexture",
							 | 
						|
								      name = "RenderTexture2D",
							 | 
						|
								      description = "RenderTexture2D, same as RenderTexture"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      type = "Camera3D",
							 | 
						|
								      name = "Camera",
							 | 
						|
								      description = "Camera type fallback, defaults to Camera3D"
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  enums = {
							 | 
						|
								    {
							 | 
						|
								      name = "ConfigFlags",
							 | 
						|
								      description = "System/Window config flags",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_VSYNC_HINT",
							 | 
						|
								          value = 64,
							 | 
						|
								          description = "Set to try enabling V-Sync on GPU"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_FULLSCREEN_MODE",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Set to run program in fullscreen"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_RESIZABLE",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Set to allow resizable window"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_UNDECORATED",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Set to disable window decoration (frame and buttons)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_HIDDEN",
							 | 
						|
								          value = 128,
							 | 
						|
								          description = "Set to hide window"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_MINIMIZED",
							 | 
						|
								          value = 512,
							 | 
						|
								          description = "Set to minimize window (iconify)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_MAXIMIZED",
							 | 
						|
								          value = 1024,
							 | 
						|
								          description = "Set to maximize window (expanded to monitor)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_UNFOCUSED",
							 | 
						|
								          value = 2048,
							 | 
						|
								          description = "Set to window non focused"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_TOPMOST",
							 | 
						|
								          value = 4096,
							 | 
						|
								          description = "Set to window always on top"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_ALWAYS_RUN",
							 | 
						|
								          value = 256,
							 | 
						|
								          description = "Set to allow windows running while minimized"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_TRANSPARENT",
							 | 
						|
								          value = 16,
							 | 
						|
								          description = "Set to allow transparent framebuffer"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_HIGHDPI",
							 | 
						|
								          value = 8192,
							 | 
						|
								          description = "Set to support HighDPI"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_WINDOW_MOUSE_PASSTHROUGH",
							 | 
						|
								          value = 16384,
							 | 
						|
								          description = "Set to support mouse passthrough, only supported when FLAG_WINDOW_UNDECORATED"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_BORDERLESS_WINDOWED_MODE",
							 | 
						|
								          value = 32768,
							 | 
						|
								          description = "Set to run program in borderless windowed mode"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_MSAA_4X_HINT",
							 | 
						|
								          value = 32,
							 | 
						|
								          description = "Set to try enabling MSAA 4X"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FLAG_INTERLACED_HINT",
							 | 
						|
								          value = 65536,
							 | 
						|
								          description = "Set to try enabling interlaced video format (for V3D)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TraceLogLevel",
							 | 
						|
								      description = "Trace log level",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_ALL",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Display all logs"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_TRACE",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Trace logging, intended for internal use only"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_DEBUG",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Debug logging, used for internal debugging, it should be disabled on release builds"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_INFO",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Info logging, used for program execution info"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_WARNING",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Warning logging, used on recoverable failures"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_ERROR",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Error logging, used on unrecoverable failures"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_FATAL",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Fatal logging, used to abort program: exit(EXIT_FAILURE)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "LOG_NONE",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Disable logging"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "KeyboardKey",
							 | 
						|
								      description = "Keyboard keys (US keyboard layout)",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_NULL",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Key: NULL, used for no key pressed"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_APOSTROPHE",
							 | 
						|
								          value = 39,
							 | 
						|
								          description = "Key: '"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_COMMA",
							 | 
						|
								          value = 44,
							 | 
						|
								          description = "Key: ,"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_MINUS",
							 | 
						|
								          value = 45,
							 | 
						|
								          description = "Key: -"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_PERIOD",
							 | 
						|
								          value = 46,
							 | 
						|
								          description = "Key: ."
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SLASH",
							 | 
						|
								          value = 47,
							 | 
						|
								          description = "Key: /"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_ZERO",
							 | 
						|
								          value = 48,
							 | 
						|
								          description = "Key: 0"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_ONE",
							 | 
						|
								          value = 49,
							 | 
						|
								          description = "Key: 1"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_TWO",
							 | 
						|
								          value = 50,
							 | 
						|
								          description = "Key: 2"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_THREE",
							 | 
						|
								          value = 51,
							 | 
						|
								          description = "Key: 3"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_FOUR",
							 | 
						|
								          value = 52,
							 | 
						|
								          description = "Key: 4"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_FIVE",
							 | 
						|
								          value = 53,
							 | 
						|
								          description = "Key: 5"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SIX",
							 | 
						|
								          value = 54,
							 | 
						|
								          description = "Key: 6"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SEVEN",
							 | 
						|
								          value = 55,
							 | 
						|
								          description = "Key: 7"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_EIGHT",
							 | 
						|
								          value = 56,
							 | 
						|
								          description = "Key: 8"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_NINE",
							 | 
						|
								          value = 57,
							 | 
						|
								          description = "Key: 9"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SEMICOLON",
							 | 
						|
								          value = 59,
							 | 
						|
								          description = "Key: ;"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_EQUAL",
							 | 
						|
								          value = 61,
							 | 
						|
								          description = "Key: ="
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_A",
							 | 
						|
								          value = 65,
							 | 
						|
								          description = "Key: A | a"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_B",
							 | 
						|
								          value = 66,
							 | 
						|
								          description = "Key: B | b"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_C",
							 | 
						|
								          value = 67,
							 | 
						|
								          description = "Key: C | c"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_D",
							 | 
						|
								          value = 68,
							 | 
						|
								          description = "Key: D | d"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_E",
							 | 
						|
								          value = 69,
							 | 
						|
								          description = "Key: E | e"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F",
							 | 
						|
								          value = 70,
							 | 
						|
								          description = "Key: F | f"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_G",
							 | 
						|
								          value = 71,
							 | 
						|
								          description = "Key: G | g"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_H",
							 | 
						|
								          value = 72,
							 | 
						|
								          description = "Key: H | h"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_I",
							 | 
						|
								          value = 73,
							 | 
						|
								          description = "Key: I | i"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_J",
							 | 
						|
								          value = 74,
							 | 
						|
								          description = "Key: J | j"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_K",
							 | 
						|
								          value = 75,
							 | 
						|
								          description = "Key: K | k"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_L",
							 | 
						|
								          value = 76,
							 | 
						|
								          description = "Key: L | l"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_M",
							 | 
						|
								          value = 77,
							 | 
						|
								          description = "Key: M | m"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_N",
							 | 
						|
								          value = 78,
							 | 
						|
								          description = "Key: N | n"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_O",
							 | 
						|
								          value = 79,
							 | 
						|
								          description = "Key: O | o"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_P",
							 | 
						|
								          value = 80,
							 | 
						|
								          description = "Key: P | p"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_Q",
							 | 
						|
								          value = 81,
							 | 
						|
								          description = "Key: Q | q"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_R",
							 | 
						|
								          value = 82,
							 | 
						|
								          description = "Key: R | r"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_S",
							 | 
						|
								          value = 83,
							 | 
						|
								          description = "Key: S | s"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_T",
							 | 
						|
								          value = 84,
							 | 
						|
								          description = "Key: T | t"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_U",
							 | 
						|
								          value = 85,
							 | 
						|
								          description = "Key: U | u"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_V",
							 | 
						|
								          value = 86,
							 | 
						|
								          description = "Key: V | v"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_W",
							 | 
						|
								          value = 87,
							 | 
						|
								          description = "Key: W | w"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_X",
							 | 
						|
								          value = 88,
							 | 
						|
								          description = "Key: X | x"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_Y",
							 | 
						|
								          value = 89,
							 | 
						|
								          description = "Key: Y | y"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_Z",
							 | 
						|
								          value = 90,
							 | 
						|
								          description = "Key: Z | z"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT_BRACKET",
							 | 
						|
								          value = 91,
							 | 
						|
								          description = "Key: ["
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_BACKSLASH",
							 | 
						|
								          value = 92,
							 | 
						|
								          description = "Key: '\\'"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT_BRACKET",
							 | 
						|
								          value = 93,
							 | 
						|
								          description = "Key: ]"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_GRAVE",
							 | 
						|
								          value = 96,
							 | 
						|
								          description = "Key: `"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SPACE",
							 | 
						|
								          value = 32,
							 | 
						|
								          description = "Key: Space"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_ESCAPE",
							 | 
						|
								          value = 256,
							 | 
						|
								          description = "Key: Esc"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_ENTER",
							 | 
						|
								          value = 257,
							 | 
						|
								          description = "Key: Enter"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_TAB",
							 | 
						|
								          value = 258,
							 | 
						|
								          description = "Key: Tab"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_BACKSPACE",
							 | 
						|
								          value = 259,
							 | 
						|
								          description = "Key: Backspace"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_INSERT",
							 | 
						|
								          value = 260,
							 | 
						|
								          description = "Key: Ins"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_DELETE",
							 | 
						|
								          value = 261,
							 | 
						|
								          description = "Key: Del"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT",
							 | 
						|
								          value = 262,
							 | 
						|
								          description = "Key: Cursor right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT",
							 | 
						|
								          value = 263,
							 | 
						|
								          description = "Key: Cursor left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_DOWN",
							 | 
						|
								          value = 264,
							 | 
						|
								          description = "Key: Cursor down"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_UP",
							 | 
						|
								          value = 265,
							 | 
						|
								          description = "Key: Cursor up"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_PAGE_UP",
							 | 
						|
								          value = 266,
							 | 
						|
								          description = "Key: Page up"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_PAGE_DOWN",
							 | 
						|
								          value = 267,
							 | 
						|
								          description = "Key: Page down"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_HOME",
							 | 
						|
								          value = 268,
							 | 
						|
								          description = "Key: Home"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_END",
							 | 
						|
								          value = 269,
							 | 
						|
								          description = "Key: End"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_CAPS_LOCK",
							 | 
						|
								          value = 280,
							 | 
						|
								          description = "Key: Caps lock"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_SCROLL_LOCK",
							 | 
						|
								          value = 281,
							 | 
						|
								          description = "Key: Scroll down"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_NUM_LOCK",
							 | 
						|
								          value = 282,
							 | 
						|
								          description = "Key: Num lock"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_PRINT_SCREEN",
							 | 
						|
								          value = 283,
							 | 
						|
								          description = "Key: Print screen"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_PAUSE",
							 | 
						|
								          value = 284,
							 | 
						|
								          description = "Key: Pause"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F1",
							 | 
						|
								          value = 290,
							 | 
						|
								          description = "Key: F1"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F2",
							 | 
						|
								          value = 291,
							 | 
						|
								          description = "Key: F2"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F3",
							 | 
						|
								          value = 292,
							 | 
						|
								          description = "Key: F3"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F4",
							 | 
						|
								          value = 293,
							 | 
						|
								          description = "Key: F4"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F5",
							 | 
						|
								          value = 294,
							 | 
						|
								          description = "Key: F5"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F6",
							 | 
						|
								          value = 295,
							 | 
						|
								          description = "Key: F6"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F7",
							 | 
						|
								          value = 296,
							 | 
						|
								          description = "Key: F7"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F8",
							 | 
						|
								          value = 297,
							 | 
						|
								          description = "Key: F8"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F9",
							 | 
						|
								          value = 298,
							 | 
						|
								          description = "Key: F9"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F10",
							 | 
						|
								          value = 299,
							 | 
						|
								          description = "Key: F10"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F11",
							 | 
						|
								          value = 300,
							 | 
						|
								          description = "Key: F11"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_F12",
							 | 
						|
								          value = 301,
							 | 
						|
								          description = "Key: F12"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT_SHIFT",
							 | 
						|
								          value = 340,
							 | 
						|
								          description = "Key: Shift left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT_CONTROL",
							 | 
						|
								          value = 341,
							 | 
						|
								          description = "Key: Control left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT_ALT",
							 | 
						|
								          value = 342,
							 | 
						|
								          description = "Key: Alt left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_LEFT_SUPER",
							 | 
						|
								          value = 343,
							 | 
						|
								          description = "Key: Super left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT_SHIFT",
							 | 
						|
								          value = 344,
							 | 
						|
								          description = "Key: Shift right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT_CONTROL",
							 | 
						|
								          value = 345,
							 | 
						|
								          description = "Key: Control right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT_ALT",
							 | 
						|
								          value = 346,
							 | 
						|
								          description = "Key: Alt right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_RIGHT_SUPER",
							 | 
						|
								          value = 347,
							 | 
						|
								          description = "Key: Super right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KB_MENU",
							 | 
						|
								          value = 348,
							 | 
						|
								          description = "Key: KB menu"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_0",
							 | 
						|
								          value = 320,
							 | 
						|
								          description = "Key: Keypad 0"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_1",
							 | 
						|
								          value = 321,
							 | 
						|
								          description = "Key: Keypad 1"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_2",
							 | 
						|
								          value = 322,
							 | 
						|
								          description = "Key: Keypad 2"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_3",
							 | 
						|
								          value = 323,
							 | 
						|
								          description = "Key: Keypad 3"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_4",
							 | 
						|
								          value = 324,
							 | 
						|
								          description = "Key: Keypad 4"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_5",
							 | 
						|
								          value = 325,
							 | 
						|
								          description = "Key: Keypad 5"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_6",
							 | 
						|
								          value = 326,
							 | 
						|
								          description = "Key: Keypad 6"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_7",
							 | 
						|
								          value = 327,
							 | 
						|
								          description = "Key: Keypad 7"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_8",
							 | 
						|
								          value = 328,
							 | 
						|
								          description = "Key: Keypad 8"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_9",
							 | 
						|
								          value = 329,
							 | 
						|
								          description = "Key: Keypad 9"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_DECIMAL",
							 | 
						|
								          value = 330,
							 | 
						|
								          description = "Key: Keypad ."
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_DIVIDE",
							 | 
						|
								          value = 331,
							 | 
						|
								          description = "Key: Keypad /"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_MULTIPLY",
							 | 
						|
								          value = 332,
							 | 
						|
								          description = "Key: Keypad *"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_SUBTRACT",
							 | 
						|
								          value = 333,
							 | 
						|
								          description = "Key: Keypad -"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_ADD",
							 | 
						|
								          value = 334,
							 | 
						|
								          description = "Key: Keypad +"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_ENTER",
							 | 
						|
								          value = 335,
							 | 
						|
								          description = "Key: Keypad Enter"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_KP_EQUAL",
							 | 
						|
								          value = 336,
							 | 
						|
								          description = "Key: Keypad ="
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_BACK",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Key: Android back button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_MENU",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Key: Android menu button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_VOLUME_UP",
							 | 
						|
								          value = 24,
							 | 
						|
								          description = "Key: Android volume up button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "KEY_VOLUME_DOWN",
							 | 
						|
								          value = 25,
							 | 
						|
								          description = "Key: Android volume down button"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MouseButton",
							 | 
						|
								      description = "Mouse buttons",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_LEFT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Mouse button left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_RIGHT",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Mouse button right"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_MIDDLE",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Mouse button middle (pressed wheel)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_SIDE",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Mouse button side (advanced mouse device)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_EXTRA",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Mouse button extra (advanced mouse device)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_FORWARD",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Mouse button forward (advanced mouse device)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_BUTTON_BACK",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Mouse button back (advanced mouse device)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MouseCursor",
							 | 
						|
								      description = "Mouse cursor",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_DEFAULT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Default pointer shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_ARROW",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Arrow shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_IBEAM",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Text writing cursor shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_CROSSHAIR",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Cross shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_POINTING_HAND",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Pointing hand cursor"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_RESIZE_EW",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Horizontal resize/move arrow shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_RESIZE_NS",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Vertical resize/move arrow shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_RESIZE_NWSE",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Top-left to bottom-right diagonal resize/move arrow shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_RESIZE_NESW",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "The top-right to bottom-left diagonal resize/move arrow shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_RESIZE_ALL",
							 | 
						|
								          value = 9,
							 | 
						|
								          description = "The omnidirectional resize/move cursor shape"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MOUSE_CURSOR_NOT_ALLOWED",
							 | 
						|
								          value = 10,
							 | 
						|
								          description = "The operation-not-allowed shape"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GamepadButton",
							 | 
						|
								      description = "Gamepad buttons",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_UNKNOWN",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Unknown button, just for error checking"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_FACE_UP",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Gamepad left DPAD up button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_FACE_RIGHT",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Gamepad left DPAD right button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_FACE_DOWN",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Gamepad left DPAD down button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_FACE_LEFT",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Gamepad left DPAD left button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_FACE_UP",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Gamepad right button up (i.e. PS3: Triangle, Xbox: Y)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_FACE_RIGHT",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Gamepad right button right (i.e. PS3: Circle, Xbox: B)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_FACE_DOWN",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Gamepad right button down (i.e. PS3: Cross, Xbox: A)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_FACE_LEFT",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Gamepad right button left (i.e. PS3: Square, Xbox: X)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_TRIGGER_1",
							 | 
						|
								          value = 9,
							 | 
						|
								          description = "Gamepad top/back trigger left (first), it could be a trailing button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_TRIGGER_2",
							 | 
						|
								          value = 10,
							 | 
						|
								          description = "Gamepad top/back trigger left (second), it could be a trailing button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_TRIGGER_1",
							 | 
						|
								          value = 11,
							 | 
						|
								          description = "Gamepad top/back trigger right (first), it could be a trailing button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_TRIGGER_2",
							 | 
						|
								          value = 12,
							 | 
						|
								          description = "Gamepad top/back trigger right (second), it could be a trailing button"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_MIDDLE_LEFT",
							 | 
						|
								          value = 13,
							 | 
						|
								          description = "Gamepad center buttons, left one (i.e. PS3: Select)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_MIDDLE",
							 | 
						|
								          value = 14,
							 | 
						|
								          description = "Gamepad center buttons, middle one (i.e. PS3: PS, Xbox: XBOX)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_MIDDLE_RIGHT",
							 | 
						|
								          value = 15,
							 | 
						|
								          description = "Gamepad center buttons, right one (i.e. PS3: Start)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_LEFT_THUMB",
							 | 
						|
								          value = 16,
							 | 
						|
								          description = "Gamepad joystick pressed button left"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_BUTTON_RIGHT_THUMB",
							 | 
						|
								          value = 17,
							 | 
						|
								          description = "Gamepad joystick pressed button right"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GamepadAxis",
							 | 
						|
								      description = "Gamepad axis",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_LEFT_X",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Gamepad left stick X axis"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_LEFT_Y",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Gamepad left stick Y axis"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_RIGHT_X",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Gamepad right stick X axis"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_RIGHT_Y",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Gamepad right stick Y axis"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_LEFT_TRIGGER",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Gamepad back trigger left, pressure level: [1..-1]"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GAMEPAD_AXIS_RIGHT_TRIGGER",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Gamepad back trigger right, pressure level: [1..-1]"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MaterialMapIndex",
							 | 
						|
								      description = "Material map index",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_ALBEDO",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Albedo material (same as: MATERIAL_MAP_DIFFUSE)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_METALNESS",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Metalness material (same as: MATERIAL_MAP_SPECULAR)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_NORMAL",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Normal material"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_ROUGHNESS",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Roughness material"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_OCCLUSION",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Ambient occlusion material"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_EMISSION",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Emission material"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_HEIGHT",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Heightmap material"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_CUBEMAP",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Cubemap material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_IRRADIANCE",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Irradiance material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_PREFILTER",
							 | 
						|
								          value = 9,
							 | 
						|
								          description = "Prefilter material (NOTE: Uses GL_TEXTURE_CUBE_MAP)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "MATERIAL_MAP_BRDF",
							 | 
						|
								          value = 10,
							 | 
						|
								          description = "Brdf material"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ShaderLocationIndex",
							 | 
						|
								      description = "Shader location index",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_POSITION",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Shader location: vertex attribute: position"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_TEXCOORD01",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Shader location: vertex attribute: texcoord01"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_TEXCOORD02",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Shader location: vertex attribute: texcoord02"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_NORMAL",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Shader location: vertex attribute: normal"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_TANGENT",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Shader location: vertex attribute: tangent"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_COLOR",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Shader location: vertex attribute: color"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MATRIX_MVP",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Shader location: matrix uniform: model-view-projection"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MATRIX_VIEW",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Shader location: matrix uniform: view (camera transform)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MATRIX_PROJECTION",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Shader location: matrix uniform: projection"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MATRIX_MODEL",
							 | 
						|
								          value = 9,
							 | 
						|
								          description = "Shader location: matrix uniform: model (transform)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MATRIX_NORMAL",
							 | 
						|
								          value = 10,
							 | 
						|
								          description = "Shader location: matrix uniform: normal"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VECTOR_VIEW",
							 | 
						|
								          value = 11,
							 | 
						|
								          description = "Shader location: vector uniform: view"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_COLOR_DIFFUSE",
							 | 
						|
								          value = 12,
							 | 
						|
								          description = "Shader location: vector uniform: diffuse color"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_COLOR_SPECULAR",
							 | 
						|
								          value = 13,
							 | 
						|
								          description = "Shader location: vector uniform: specular color"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_COLOR_AMBIENT",
							 | 
						|
								          value = 14,
							 | 
						|
								          description = "Shader location: vector uniform: ambient color"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_ALBEDO",
							 | 
						|
								          value = 15,
							 | 
						|
								          description = "Shader location: sampler2d texture: albedo (same as: SHADER_LOC_MAP_DIFFUSE)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_METALNESS",
							 | 
						|
								          value = 16,
							 | 
						|
								          description = "Shader location: sampler2d texture: metalness (same as: SHADER_LOC_MAP_SPECULAR)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_NORMAL",
							 | 
						|
								          value = 17,
							 | 
						|
								          description = "Shader location: sampler2d texture: normal"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_ROUGHNESS",
							 | 
						|
								          value = 18,
							 | 
						|
								          description = "Shader location: sampler2d texture: roughness"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_OCCLUSION",
							 | 
						|
								          value = 19,
							 | 
						|
								          description = "Shader location: sampler2d texture: occlusion"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_EMISSION",
							 | 
						|
								          value = 20,
							 | 
						|
								          description = "Shader location: sampler2d texture: emission"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_HEIGHT",
							 | 
						|
								          value = 21,
							 | 
						|
								          description = "Shader location: sampler2d texture: height"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_CUBEMAP",
							 | 
						|
								          value = 22,
							 | 
						|
								          description = "Shader location: samplerCube texture: cubemap"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_IRRADIANCE",
							 | 
						|
								          value = 23,
							 | 
						|
								          description = "Shader location: samplerCube texture: irradiance"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_PREFILTER",
							 | 
						|
								          value = 24,
							 | 
						|
								          description = "Shader location: samplerCube texture: prefilter"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_MAP_BRDF",
							 | 
						|
								          value = 25,
							 | 
						|
								          description = "Shader location: sampler2d texture: brdf"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_BONEIDS",
							 | 
						|
								          value = 26,
							 | 
						|
								          description = "Shader location: vertex attribute: boneIds"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_VERTEX_BONEWEIGHTS",
							 | 
						|
								          value = 27,
							 | 
						|
								          description = "Shader location: vertex attribute: boneWeights"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_LOC_BONE_MATRICES",
							 | 
						|
								          value = 28,
							 | 
						|
								          description = "Shader location: array of matrices uniform: boneMatrices"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ShaderUniformDataType",
							 | 
						|
								      description = "Shader uniform data type",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_FLOAT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Shader uniform type: float"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_VEC2",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Shader uniform type: vec2 (2 float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_VEC3",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Shader uniform type: vec3 (3 float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_VEC4",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Shader uniform type: vec4 (4 float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_INT",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Shader uniform type: int"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_IVEC2",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Shader uniform type: ivec2 (2 int)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_IVEC3",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Shader uniform type: ivec3 (3 int)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_IVEC4",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Shader uniform type: ivec4 (4 int)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_UNIFORM_SAMPLER2D",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Shader uniform type: sampler2d"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ShaderAttributeDataType",
							 | 
						|
								      description = "Shader attribute data types",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_ATTRIB_FLOAT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Shader attribute type: float"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_ATTRIB_VEC2",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Shader attribute type: vec2 (2 float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_ATTRIB_VEC3",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Shader attribute type: vec3 (3 float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "SHADER_ATTRIB_VEC4",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Shader attribute type: vec4 (4 float)"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PixelFormat",
							 | 
						|
								      description = "Pixel formats",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_GRAYSCALE",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "8 bit per pixel (no alpha)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_GRAY_ALPHA",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "8*2 bpp (2 channels)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R5G6B5",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "16 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R8G8B8",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "24 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R5G5B5A1",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "16 bpp (1 bit alpha)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R4G4B4A4",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "16 bpp (4 bit alpha)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R8G8B8A8",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "32 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R32",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "32 bpp (1 channel - float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32",
							 | 
						|
								          value = 9,
							 | 
						|
								          description = "32*3 bpp (3 channels - float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R32G32B32A32",
							 | 
						|
								          value = 10,
							 | 
						|
								          description = "32*4 bpp (4 channels - float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R16",
							 | 
						|
								          value = 11,
							 | 
						|
								          description = "16 bpp (1 channel - half float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16",
							 | 
						|
								          value = 12,
							 | 
						|
								          description = "16*3 bpp (3 channels - half float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_UNCOMPRESSED_R16G16B16A16",
							 | 
						|
								          value = 13,
							 | 
						|
								          description = "16*4 bpp (4 channels - half float)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_DXT1_RGB",
							 | 
						|
								          value = 14,
							 | 
						|
								          description = "4 bpp (no alpha)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_DXT1_RGBA",
							 | 
						|
								          value = 15,
							 | 
						|
								          description = "4 bpp (1 bit alpha)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_DXT3_RGBA",
							 | 
						|
								          value = 16,
							 | 
						|
								          description = "8 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_DXT5_RGBA",
							 | 
						|
								          value = 17,
							 | 
						|
								          description = "8 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_ETC1_RGB",
							 | 
						|
								          value = 18,
							 | 
						|
								          description = "4 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_ETC2_RGB",
							 | 
						|
								          value = 19,
							 | 
						|
								          description = "4 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_ETC2_EAC_RGBA",
							 | 
						|
								          value = 20,
							 | 
						|
								          description = "8 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_PVRT_RGB",
							 | 
						|
								          value = 21,
							 | 
						|
								          description = "4 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_PVRT_RGBA",
							 | 
						|
								          value = 22,
							 | 
						|
								          description = "4 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_ASTC_4x4_RGBA",
							 | 
						|
								          value = 23,
							 | 
						|
								          description = "8 bpp"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "PIXELFORMAT_COMPRESSED_ASTC_8x8_RGBA",
							 | 
						|
								          value = 24,
							 | 
						|
								          description = "2 bpp"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextureFilter",
							 | 
						|
								      description = "Texture parameters: filter mode",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_POINT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "No filter, just pixel approximation"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_BILINEAR",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Linear filtering"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_TRILINEAR",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Trilinear filtering (linear with mipmaps)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_ANISOTROPIC_4X",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Anisotropic filtering 4x"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_ANISOTROPIC_8X",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Anisotropic filtering 8x"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_FILTER_ANISOTROPIC_16X",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Anisotropic filtering 16x"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextureWrap",
							 | 
						|
								      description = "Texture parameters: wrap mode",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_WRAP_REPEAT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Repeats texture in tiled mode"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_WRAP_CLAMP",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Clamps texture to edge pixel in tiled mode"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_WRAP_MIRROR_REPEAT",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Mirrors and repeats the texture in tiled mode"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "TEXTURE_WRAP_MIRROR_CLAMP",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Mirrors and clamps to border the texture in tiled mode"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CubemapLayout",
							 | 
						|
								      description = "Cubemap layouts",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "CUBEMAP_LAYOUT_AUTO_DETECT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Automatically detect layout type"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CUBEMAP_LAYOUT_LINE_VERTICAL",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Layout is defined by a vertical line with faces"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CUBEMAP_LAYOUT_LINE_HORIZONTAL",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Layout is defined by a horizontal line with faces"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CUBEMAP_LAYOUT_CROSS_THREE_BY_FOUR",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Layout is defined by a 3x4 cross with cubemap faces"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CUBEMAP_LAYOUT_CROSS_FOUR_BY_THREE",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Layout is defined by a 4x3 cross with cubemap faces"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "FontType",
							 | 
						|
								      description = "Font type, defines generation method",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "FONT_DEFAULT",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Default font generation, anti-aliased"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FONT_BITMAP",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Bitmap font generation, no anti-aliasing"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "FONT_SDF",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "SDF font generation, requires external shader"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BlendMode",
							 | 
						|
								      description = "Color blending modes (pre-defined)",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_ALPHA",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Blend textures considering alpha (default)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_ADDITIVE",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Blend textures adding colors"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_MULTIPLIED",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Blend textures multiplying colors"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_ADD_COLORS",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Blend textures adding colors (alternative)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_SUBTRACT_COLORS",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Blend textures subtracting colors (alternative)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_ALPHA_PREMULTIPLY",
							 | 
						|
								          value = 5,
							 | 
						|
								          description = "Blend premultiplied textures considering alpha"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_CUSTOM",
							 | 
						|
								          value = 6,
							 | 
						|
								          description = "Blend textures using custom src/dst factors (use rlSetBlendFactors())"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "BLEND_CUSTOM_SEPARATE",
							 | 
						|
								          value = 7,
							 | 
						|
								          description = "Blend textures using custom rgb/alpha separate src/dst factors (use rlSetBlendFactorsSeparate())"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Gesture",
							 | 
						|
								      description = "Gesture",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_NONE",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "No gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_TAP",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Tap gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_DOUBLETAP",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Double tap gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_HOLD",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Hold gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_DRAG",
							 | 
						|
								          value = 8,
							 | 
						|
								          description = "Drag gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_SWIPE_RIGHT",
							 | 
						|
								          value = 16,
							 | 
						|
								          description = "Swipe right gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_SWIPE_LEFT",
							 | 
						|
								          value = 32,
							 | 
						|
								          description = "Swipe left gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_SWIPE_UP",
							 | 
						|
								          value = 64,
							 | 
						|
								          description = "Swipe up gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_SWIPE_DOWN",
							 | 
						|
								          value = 128,
							 | 
						|
								          description = "Swipe down gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_PINCH_IN",
							 | 
						|
								          value = 256,
							 | 
						|
								          description = "Pinch in gesture"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "GESTURE_PINCH_OUT",
							 | 
						|
								          value = 512,
							 | 
						|
								          description = "Pinch out gesture"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CameraMode",
							 | 
						|
								      description = "Camera system modes",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_CUSTOM",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Camera custom, controlled by user (UpdateCamera() does nothing)"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_FREE",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Camera free mode"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_ORBITAL",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Camera orbital, around target, zoom supported"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_FIRST_PERSON",
							 | 
						|
								          value = 3,
							 | 
						|
								          description = "Camera first person"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_THIRD_PERSON",
							 | 
						|
								          value = 4,
							 | 
						|
								          description = "Camera third person"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CameraProjection",
							 | 
						|
								      description = "Camera projection",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_PERSPECTIVE",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Perspective projection"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "CAMERA_ORTHOGRAPHIC",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Orthographic projection"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "NPatchLayout",
							 | 
						|
								      description = "N-patch layout",
							 | 
						|
								      values = {
							 | 
						|
								        {
							 | 
						|
								          name = "NPATCH_NINE_PATCH",
							 | 
						|
								          value = 0,
							 | 
						|
								          description = "Npatch layout: 3x3 tiles"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "NPATCH_THREE_PATCH_VERTICAL",
							 | 
						|
								          value = 1,
							 | 
						|
								          description = "Npatch layout: 1x3 tiles"
							 | 
						|
								        },
							 | 
						|
								        {
							 | 
						|
								          name = "NPATCH_THREE_PATCH_HORIZONTAL",
							 | 
						|
								          value = 2,
							 | 
						|
								          description = "Npatch layout: 3x1 tiles"
							 | 
						|
								        }
							 | 
						|
								      }
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  callbacks = {
							 | 
						|
								    {
							 | 
						|
								      name = "TraceLogCallback",
							 | 
						|
								      description = "Logging: Redirect trace log messages",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "logLevel"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "va_list", name = "args"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFileDataCallback",
							 | 
						|
								      description = "FileIO: Load binary data",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int *", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SaveFileDataCallback",
							 | 
						|
								      description = "FileIO: Save binary data",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "void *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFileTextCallback",
							 | 
						|
								      description = "FileIO: Load text data",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SaveFileTextCallback",
							 | 
						|
								      description = "FileIO: Save text data",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AudioCallback",
							 | 
						|
								      description = "",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "void *", name = "bufferData"},
							 | 
						|
								        {type = "unsigned int", name = "frames"}
							 | 
						|
								      }
							 | 
						|
								    }
							 | 
						|
								  },
							 | 
						|
								  functions = {
							 | 
						|
								    {
							 | 
						|
								      name = "InitWindow",
							 | 
						|
								      description = "Initialize window and OpenGL context",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "const char *", name = "title"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CloseWindow",
							 | 
						|
								      description = "Close window and unload OpenGL context",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WindowShouldClose",
							 | 
						|
								      description = "Check if application should close (KEY_ESCAPE pressed or windows close icon clicked)",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowReady",
							 | 
						|
								      description = "Check if window has been initialized successfully",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowFullscreen",
							 | 
						|
								      description = "Check if window is currently fullscreen",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowHidden",
							 | 
						|
								      description = "Check if window is currently hidden",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowMinimized",
							 | 
						|
								      description = "Check if window is currently minimized",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowMaximized",
							 | 
						|
								      description = "Check if window is currently maximized",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowFocused",
							 | 
						|
								      description = "Check if window is currently focused",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowResized",
							 | 
						|
								      description = "Check if window has been resized last frame",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWindowState",
							 | 
						|
								      description = "Check if one specific window flag is enabled",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "flag"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowState",
							 | 
						|
								      description = "Set window configuration state using flags",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "flags"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ClearWindowState",
							 | 
						|
								      description = "Clear window configuration state flags",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "flags"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ToggleFullscreen",
							 | 
						|
								      description = "Toggle window state: fullscreen/windowed, resizes monitor to match window resolution",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ToggleBorderlessWindowed",
							 | 
						|
								      description = "Toggle window state: borderless windowed, resizes window to match monitor resolution",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MaximizeWindow",
							 | 
						|
								      description = "Set window state: maximized, if resizable",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MinimizeWindow",
							 | 
						|
								      description = "Set window state: minimized, if resizable",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "RestoreWindow",
							 | 
						|
								      description = "Set window state: not minimized/maximized",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowIcon",
							 | 
						|
								      description = "Set icon for window (single image, RGBA 32bit)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowIcons",
							 | 
						|
								      description = "Set icon for window (multiple images, RGBA 32bit)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "images"},
							 | 
						|
								        {type = "int", name = "count"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowTitle",
							 | 
						|
								      description = "Set title for window",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "title"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowPosition",
							 | 
						|
								      description = "Set window position on screen",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "x"},
							 | 
						|
								        {type = "int", name = "y"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowMonitor",
							 | 
						|
								      description = "Set monitor for the current window",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowMinSize",
							 | 
						|
								      description = "Set window minimum dimensions (for FLAG_WINDOW_RESIZABLE)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowMaxSize",
							 | 
						|
								      description = "Set window maximum dimensions (for FLAG_WINDOW_RESIZABLE)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowSize",
							 | 
						|
								      description = "Set window dimensions",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowOpacity",
							 | 
						|
								      description = "Set window opacity [0.0f..1.0f]",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "opacity"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetWindowFocused",
							 | 
						|
								      description = "Set window focused",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWindowHandle",
							 | 
						|
								      description = "Get native window handle",
							 | 
						|
								      returnType = "void *"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetScreenWidth",
							 | 
						|
								      description = "Get current screen width",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetScreenHeight",
							 | 
						|
								      description = "Get current screen height",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRenderWidth",
							 | 
						|
								      description = "Get current render width (it considers HiDPI)",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRenderHeight",
							 | 
						|
								      description = "Get current render height (it considers HiDPI)",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorCount",
							 | 
						|
								      description = "Get number of connected monitors",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCurrentMonitor",
							 | 
						|
								      description = "Get current monitor where window is placed",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorPosition",
							 | 
						|
								      description = "Get specified monitor position",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorWidth",
							 | 
						|
								      description = "Get specified monitor width (current video mode used by monitor)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorHeight",
							 | 
						|
								      description = "Get specified monitor height (current video mode used by monitor)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorPhysicalWidth",
							 | 
						|
								      description = "Get specified monitor physical width in millimetres",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorPhysicalHeight",
							 | 
						|
								      description = "Get specified monitor physical height in millimetres",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorRefreshRate",
							 | 
						|
								      description = "Get specified monitor refresh rate",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWindowPosition",
							 | 
						|
								      description = "Get window position XY on monitor",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWindowScaleDPI",
							 | 
						|
								      description = "Get window scale DPI factor",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMonitorName",
							 | 
						|
								      description = "Get the human-readable, UTF-8 encoded name of the specified monitor",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "monitor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetClipboardText",
							 | 
						|
								      description = "Set clipboard text content",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetClipboardText",
							 | 
						|
								      description = "Get clipboard text content",
							 | 
						|
								      returnType = "const char *"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetClipboardImage",
							 | 
						|
								      description = "Get clipboard image",
							 | 
						|
								      returnType = "Image"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EnableEventWaiting",
							 | 
						|
								      description = "Enable waiting for events on EndDrawing(), no automatic event polling",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DisableEventWaiting",
							 | 
						|
								      description = "Disable waiting for events on EndDrawing(), automatic events polling",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ShowCursor",
							 | 
						|
								      description = "Shows cursor",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "HideCursor",
							 | 
						|
								      description = "Hides cursor",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsCursorHidden",
							 | 
						|
								      description = "Check if cursor is not visible",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EnableCursor",
							 | 
						|
								      description = "Enables cursor (unlock cursor)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DisableCursor",
							 | 
						|
								      description = "Disables cursor (lock cursor)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsCursorOnScreen",
							 | 
						|
								      description = "Check if cursor is on the screen",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ClearBackground",
							 | 
						|
								      description = "Set background color (framebuffer clear color)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginDrawing",
							 | 
						|
								      description = "Setup canvas (framebuffer) to start drawing",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndDrawing",
							 | 
						|
								      description = "End canvas drawing and swap buffers (double buffering)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginMode2D",
							 | 
						|
								      description = "Begin 2D mode with custom camera (2D)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera2D", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndMode2D",
							 | 
						|
								      description = "Ends 2D mode with custom camera",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginMode3D",
							 | 
						|
								      description = "Begin 3D mode with custom camera (3D)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera3D", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndMode3D",
							 | 
						|
								      description = "Ends 3D mode and returns to default 2D orthographic mode",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginTextureMode",
							 | 
						|
								      description = "Begin drawing to render texture",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "RenderTexture2D", name = "target"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndTextureMode",
							 | 
						|
								      description = "Ends drawing to render texture",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginShaderMode",
							 | 
						|
								      description = "Begin custom shader drawing",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndShaderMode",
							 | 
						|
								      description = "End custom shader drawing (use default shader)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginBlendMode",
							 | 
						|
								      description = "Begin blending mode (alpha, additive, multiplied, subtract, custom)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "mode"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndBlendMode",
							 | 
						|
								      description = "End blending mode (reset to default: alpha blending)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginScissorMode",
							 | 
						|
								      description = "Begin scissor mode (define screen area for following drawing)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "x"},
							 | 
						|
								        {type = "int", name = "y"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndScissorMode",
							 | 
						|
								      description = "End scissor mode",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "BeginVrStereoMode",
							 | 
						|
								      description = "Begin stereo rendering (requires VR simulator)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "VrStereoConfig", name = "config"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EndVrStereoMode",
							 | 
						|
								      description = "End stereo rendering (requires VR simulator)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadVrStereoConfig",
							 | 
						|
								      description = "Load VR stereo config for VR simulator device parameters",
							 | 
						|
								      returnType = "VrStereoConfig",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "VrDeviceInfo", name = "device"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadVrStereoConfig",
							 | 
						|
								      description = "Unload VR stereo config",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "VrStereoConfig", name = "config"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadShader",
							 | 
						|
								      description = "Load shader from files and bind default locations",
							 | 
						|
								      returnType = "Shader",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "vsFileName"},
							 | 
						|
								        {type = "const char *", name = "fsFileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadShaderFromMemory",
							 | 
						|
								      description = "Load shader from code strings and bind default locations",
							 | 
						|
								      returnType = "Shader",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "vsCode"},
							 | 
						|
								        {type = "const char *", name = "fsCode"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsShaderValid",
							 | 
						|
								      description = "Check if a shader is valid (loaded on GPU)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetShaderLocation",
							 | 
						|
								      description = "Get shader uniform location",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "const char *", name = "uniformName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetShaderLocationAttrib",
							 | 
						|
								      description = "Get shader attribute location",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "const char *", name = "attribName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetShaderValue",
							 | 
						|
								      description = "Set shader uniform value",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "int", name = "locIndex"},
							 | 
						|
								        {type = "const void *", name = "value"},
							 | 
						|
								        {type = "int", name = "uniformType"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetShaderValueV",
							 | 
						|
								      description = "Set shader uniform value vector",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "int", name = "locIndex"},
							 | 
						|
								        {type = "const void *", name = "value"},
							 | 
						|
								        {type = "int", name = "uniformType"},
							 | 
						|
								        {type = "int", name = "count"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetShaderValueMatrix",
							 | 
						|
								      description = "Set shader uniform value (matrix 4x4)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "int", name = "locIndex"},
							 | 
						|
								        {type = "Matrix", name = "mat"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetShaderValueTexture",
							 | 
						|
								      description = "Set shader uniform value for texture (sampler2d)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"},
							 | 
						|
								        {type = "int", name = "locIndex"},
							 | 
						|
								        {type = "Texture2D", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadShader",
							 | 
						|
								      description = "Unload shader from GPU memory (VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Shader", name = "shader"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetScreenToWorldRay",
							 | 
						|
								      description = "Get a ray trace from screen position (i.e mouse)",
							 | 
						|
								      returnType = "Ray",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Camera", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetScreenToWorldRayEx",
							 | 
						|
								      description = "Get a ray trace from screen position (i.e mouse) in a viewport",
							 | 
						|
								      returnType = "Ray",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Camera", name = "camera"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWorldToScreen",
							 | 
						|
								      description = "Get the screen space position for a 3d world space position",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Camera", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWorldToScreenEx",
							 | 
						|
								      description = "Get size position for a 3d world space position",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Camera", name = "camera"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWorldToScreen2D",
							 | 
						|
								      description = "Get the screen space position for a 2d camera world space position",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Camera2D", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetScreenToWorld2D",
							 | 
						|
								      description = "Get the world space position for a 2d camera screen space position",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Camera2D", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCameraMatrix",
							 | 
						|
								      description = "Get camera transform matrix (view matrix)",
							 | 
						|
								      returnType = "Matrix",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCameraMatrix2D",
							 | 
						|
								      description = "Get camera 2d transform matrix",
							 | 
						|
								      returnType = "Matrix",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera2D", name = "camera"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTargetFPS",
							 | 
						|
								      description = "Set target FPS (maximum)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "fps"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFrameTime",
							 | 
						|
								      description = "Get time in seconds for last frame drawn (delta time)",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTime",
							 | 
						|
								      description = "Get elapsed time in seconds since InitWindow()",
							 | 
						|
								      returnType = "double"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFPS",
							 | 
						|
								      description = "Get current FPS",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SwapScreenBuffer",
							 | 
						|
								      description = "Swap back buffer with front buffer (screen drawing)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PollInputEvents",
							 | 
						|
								      description = "Register all input events",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WaitTime",
							 | 
						|
								      description = "Wait for some time (halt program execution)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "double", name = "seconds"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetRandomSeed",
							 | 
						|
								      description = "Set the seed for the random number generator",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "seed"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRandomValue",
							 | 
						|
								      description = "Get a random value between min and max (both included)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "min"},
							 | 
						|
								        {type = "int", name = "max"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadRandomSequence",
							 | 
						|
								      description = "Load random values sequence, no values repeated",
							 | 
						|
								      returnType = "int *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "count"},
							 | 
						|
								        {type = "int", name = "min"},
							 | 
						|
								        {type = "int", name = "max"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadRandomSequence",
							 | 
						|
								      description = "Unload random values sequence",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int *", name = "sequence"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TakeScreenshot",
							 | 
						|
								      description = "Takes a screenshot of current screen (filename extension defines format)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetConfigFlags",
							 | 
						|
								      description = "Setup init configuration flags (view FLAGS)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "flags"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "OpenURL",
							 | 
						|
								      description = "Open URL with default system browser (if available)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "url"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TraceLog",
							 | 
						|
								      description = "Show trace log messages (LOG_DEBUG, LOG_INFO, LOG_WARNING, LOG_ERROR...)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "logLevel"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "...", name = "args"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTraceLogLevel",
							 | 
						|
								      description = "Set the current threshold (minimum) log level",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "logLevel"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MemAlloc",
							 | 
						|
								      description = "Internal memory allocator",
							 | 
						|
								      returnType = "void *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "size"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MemRealloc",
							 | 
						|
								      description = "Internal memory reallocator",
							 | 
						|
								      returnType = "void *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "void *", name = "ptr"},
							 | 
						|
								        {type = "unsigned int", name = "size"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MemFree",
							 | 
						|
								      description = "Internal memory free",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "void *", name = "ptr"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTraceLogCallback",
							 | 
						|
								      description = "Set custom trace log",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "TraceLogCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetLoadFileDataCallback",
							 | 
						|
								      description = "Set custom file binary data loader",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "LoadFileDataCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetSaveFileDataCallback",
							 | 
						|
								      description = "Set custom file binary data saver",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "SaveFileDataCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetLoadFileTextCallback",
							 | 
						|
								      description = "Set custom file text data loader",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "LoadFileTextCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetSaveFileTextCallback",
							 | 
						|
								      description = "Set custom file text data saver",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "SaveFileTextCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFileData",
							 | 
						|
								      description = "Load file data as byte array (read)",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int *", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadFileData",
							 | 
						|
								      description = "Unload file data allocated by LoadFileData()",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned char *", name = "data"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SaveFileData",
							 | 
						|
								      description = "Save data to file from byte array (write), returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "void *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportDataAsCode",
							 | 
						|
								      description = "Export data to code (.h), returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFileText",
							 | 
						|
								      description = "Load text data from file (read), returns a '\\0' terminated string",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadFileText",
							 | 
						|
								      description = "Unload file text data allocated by LoadFileText()",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SaveFileText",
							 | 
						|
								      description = "Save text data to file (write), string must be '\\0' terminated, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "FileExists",
							 | 
						|
								      description = "Check if file exists",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DirectoryExists",
							 | 
						|
								      description = "Check if a directory path exists",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "dirPath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsFileExtension",
							 | 
						|
								      description = "Check file extension (including point: .png, .wav)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "const char *", name = "ext"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFileLength",
							 | 
						|
								      description = "Get file length in bytes (NOTE: GetFileSize() conflicts with windows.h)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFileExtension",
							 | 
						|
								      description = "Get pointer to extension for a filename string (includes dot: '.png')",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFileName",
							 | 
						|
								      description = "Get pointer to filename for a path string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "filePath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFileNameWithoutExt",
							 | 
						|
								      description = "Get filename string without extension (uses static string)",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "filePath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetDirectoryPath",
							 | 
						|
								      description = "Get full path for a given fileName with path (uses static string)",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "filePath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetPrevDirectoryPath",
							 | 
						|
								      description = "Get previous directory path for a given path (uses static string)",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "dirPath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetWorkingDirectory",
							 | 
						|
								      description = "Get current working directory (uses static string)",
							 | 
						|
								      returnType = "const char *"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetApplicationDirectory",
							 | 
						|
								      description = "Get the directory of the running application (uses static string)",
							 | 
						|
								      returnType = "const char *"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MakeDirectory",
							 | 
						|
								      description = "Create directories (including full path requested), returns 0 on success",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "dirPath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ChangeDirectory",
							 | 
						|
								      description = "Change working directory, return true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "dir"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsPathFile",
							 | 
						|
								      description = "Check if a given path is a file or a directory",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "path"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsFileNameValid",
							 | 
						|
								      description = "Check if fileName is valid for the platform/OS",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadDirectoryFiles",
							 | 
						|
								      description = "Load directory filepaths",
							 | 
						|
								      returnType = "FilePathList",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "dirPath"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadDirectoryFilesEx",
							 | 
						|
								      description = "Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result",
							 | 
						|
								      returnType = "FilePathList",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "basePath"},
							 | 
						|
								        {type = "const char *", name = "filter"},
							 | 
						|
								        {type = "bool", name = "scanSubdirs"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadDirectoryFiles",
							 | 
						|
								      description = "Unload filepaths",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "FilePathList", name = "files"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsFileDropped",
							 | 
						|
								      description = "Check if a file has been dropped into window",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadDroppedFiles",
							 | 
						|
								      description = "Load dropped filepaths",
							 | 
						|
								      returnType = "FilePathList"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadDroppedFiles",
							 | 
						|
								      description = "Unload dropped filepaths",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "FilePathList", name = "files"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFileModTime",
							 | 
						|
								      description = "Get file modification time (last write time)",
							 | 
						|
								      returnType = "long",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CompressData",
							 | 
						|
								      description = "Compress data (DEFLATE algorithm), memory must be MemFree()",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int *", name = "compDataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DecompressData",
							 | 
						|
								      description = "Decompress data (DEFLATE algorithm), memory must be MemFree()",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "compData"},
							 | 
						|
								        {type = "int", name = "compDataSize"},
							 | 
						|
								        {type = "int *", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "EncodeDataBase64",
							 | 
						|
								      description = "Encode data to Base64 string, memory must be MemFree()",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int *", name = "outputSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DecodeDataBase64",
							 | 
						|
								      description = "Decode Base64 string data, memory must be MemFree()",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "data"},
							 | 
						|
								        {type = "int *", name = "outputSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ComputeCRC32",
							 | 
						|
								      description = "Compute CRC32 hash code",
							 | 
						|
								      returnType = "unsigned int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ComputeMD5",
							 | 
						|
								      description = "Compute MD5 hash code, returns static int[4] (16 bytes)",
							 | 
						|
								      returnType = "unsigned int *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ComputeSHA1",
							 | 
						|
								      description = "Compute SHA1 hash code, returns static int[5] (20 bytes)",
							 | 
						|
								      returnType = "unsigned int *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadAutomationEventList",
							 | 
						|
								      description = "Load automation events list from file, NULL for empty list, capacity = MAX_AUTOMATION_EVENTS",
							 | 
						|
								      returnType = "AutomationEventList",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadAutomationEventList",
							 | 
						|
								      description = "Unload automation events list from file",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AutomationEventList", name = "list"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportAutomationEventList",
							 | 
						|
								      description = "Export automation events list as text file",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AutomationEventList", name = "list"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAutomationEventList",
							 | 
						|
								      description = "Set automation event list to record to",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AutomationEventList *", name = "list"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAutomationEventBaseFrame",
							 | 
						|
								      description = "Set automation event internal base frame to start recording",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "frame"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "StartAutomationEventRecording",
							 | 
						|
								      description = "Start recording automation events (AutomationEventList must be set)",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "StopAutomationEventRecording",
							 | 
						|
								      description = "Stop recording automation events",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PlayAutomationEvent",
							 | 
						|
								      description = "Play a recorded automation event",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AutomationEvent", name = "event"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsKeyPressed",
							 | 
						|
								      description = "Check if a key has been pressed once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsKeyPressedRepeat",
							 | 
						|
								      description = "Check if a key has been pressed again",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsKeyDown",
							 | 
						|
								      description = "Check if a key is being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsKeyReleased",
							 | 
						|
								      description = "Check if a key has been released once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsKeyUp",
							 | 
						|
								      description = "Check if a key is NOT being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetKeyPressed",
							 | 
						|
								      description = "Get key pressed (keycode), call it multiple times for keys queued, returns 0 when the queue is empty",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCharPressed",
							 | 
						|
								      description = "Get char pressed (unicode), call it multiple times for chars queued, returns 0 when the queue is empty",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetExitKey",
							 | 
						|
								      description = "Set a custom key to exit program (default is ESC)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "key"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGamepadAvailable",
							 | 
						|
								      description = "Check if a gamepad is available",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGamepadName",
							 | 
						|
								      description = "Get gamepad internal name id",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGamepadButtonPressed",
							 | 
						|
								      description = "Check if a gamepad button has been pressed once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGamepadButtonDown",
							 | 
						|
								      description = "Check if a gamepad button is being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGamepadButtonReleased",
							 | 
						|
								      description = "Check if a gamepad button has been released once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGamepadButtonUp",
							 | 
						|
								      description = "Check if a gamepad button is NOT being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGamepadButtonPressed",
							 | 
						|
								      description = "Get the last gamepad button pressed",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGamepadAxisCount",
							 | 
						|
								      description = "Get gamepad axis count for a gamepad",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGamepadAxisMovement",
							 | 
						|
								      description = "Get axis movement value for a gamepad axis",
							 | 
						|
								      returnType = "float",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "int", name = "axis"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetGamepadMappings",
							 | 
						|
								      description = "Set internal gamepad mappings (SDL_GameControllerDB)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "mappings"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetGamepadVibration",
							 | 
						|
								      description = "Set gamepad vibration for both motors (duration in seconds)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "gamepad"},
							 | 
						|
								        {type = "float", name = "leftMotor"},
							 | 
						|
								        {type = "float", name = "rightMotor"},
							 | 
						|
								        {type = "float", name = "duration"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMouseButtonPressed",
							 | 
						|
								      description = "Check if a mouse button has been pressed once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMouseButtonDown",
							 | 
						|
								      description = "Check if a mouse button is being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMouseButtonReleased",
							 | 
						|
								      description = "Check if a mouse button has been released once",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMouseButtonUp",
							 | 
						|
								      description = "Check if a mouse button is NOT being pressed",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "button"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseX",
							 | 
						|
								      description = "Get mouse position X",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseY",
							 | 
						|
								      description = "Get mouse position Y",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMousePosition",
							 | 
						|
								      description = "Get mouse position XY",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseDelta",
							 | 
						|
								      description = "Get mouse delta between frames",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMousePosition",
							 | 
						|
								      description = "Set mouse position XY",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "x"},
							 | 
						|
								        {type = "int", name = "y"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMouseOffset",
							 | 
						|
								      description = "Set mouse offset",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "offsetX"},
							 | 
						|
								        {type = "int", name = "offsetY"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMouseScale",
							 | 
						|
								      description = "Set mouse scaling",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "scaleX"},
							 | 
						|
								        {type = "float", name = "scaleY"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseWheelMove",
							 | 
						|
								      description = "Get mouse wheel movement for X or Y, whichever is larger",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMouseWheelMoveV",
							 | 
						|
								      description = "Get mouse wheel movement for both X and Y",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMouseCursor",
							 | 
						|
								      description = "Set mouse cursor",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "cursor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTouchX",
							 | 
						|
								      description = "Get touch position X for touch point 0 (relative to screen size)",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTouchY",
							 | 
						|
								      description = "Get touch position Y for touch point 0 (relative to screen size)",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTouchPosition",
							 | 
						|
								      description = "Get touch position XY for a touch point index (relative to screen size)",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "index"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTouchPointId",
							 | 
						|
								      description = "Get touch point identifier for given index",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "index"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetTouchPointCount",
							 | 
						|
								      description = "Get number of touch points",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetGesturesEnabled",
							 | 
						|
								      description = "Enable a set of gestures using flags",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "flags"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsGestureDetected",
							 | 
						|
								      description = "Check if a gesture have been detected",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "gesture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGestureDetected",
							 | 
						|
								      description = "Get latest detected gesture",
							 | 
						|
								      returnType = "int"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGestureHoldDuration",
							 | 
						|
								      description = "Get gesture hold time in seconds",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGestureDragVector",
							 | 
						|
								      description = "Get gesture drag vector",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGestureDragAngle",
							 | 
						|
								      description = "Get gesture drag angle",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGesturePinchVector",
							 | 
						|
								      description = "Get gesture pinch delta",
							 | 
						|
								      returnType = "Vector2"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGesturePinchAngle",
							 | 
						|
								      description = "Get gesture pinch angle",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateCamera",
							 | 
						|
								      description = "Update camera position for selected mode",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera *", name = "camera"},
							 | 
						|
								        {type = "int", name = "mode"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateCameraPro",
							 | 
						|
								      description = "Update camera movement/rotation",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera *", name = "camera"},
							 | 
						|
								        {type = "Vector3", name = "movement"},
							 | 
						|
								        {type = "Vector3", name = "rotation"},
							 | 
						|
								        {type = "float", name = "zoom"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetShapesTexture",
							 | 
						|
								      description = "Set texture and rectangle to be used on shapes drawing",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "source"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetShapesTexture",
							 | 
						|
								      description = "Get texture that is used for shapes drawing",
							 | 
						|
								      returnType = "Texture2D"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetShapesTextureRectangle",
							 | 
						|
								      description = "Get texture source rectangle that is used for shapes drawing",
							 | 
						|
								      returnType = "Rectangle"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPixel",
							 | 
						|
								      description = "Draw a pixel using geometry [Can be slow, use with care]",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPixelV",
							 | 
						|
								      description = "Draw a pixel using geometry (Vector version) [Can be slow, use with care]",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLine",
							 | 
						|
								      description = "Draw a line",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "startPosX"},
							 | 
						|
								        {type = "int", name = "startPosY"},
							 | 
						|
								        {type = "int", name = "endPosX"},
							 | 
						|
								        {type = "int", name = "endPosY"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLineV",
							 | 
						|
								      description = "Draw a line (using gl lines)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "startPos"},
							 | 
						|
								        {type = "Vector2", name = "endPos"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLineEx",
							 | 
						|
								      description = "Draw a line (using triangles/quads)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "startPos"},
							 | 
						|
								        {type = "Vector2", name = "endPos"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLineStrip",
							 | 
						|
								      description = "Draw lines sequence (using gl lines)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLineBezier",
							 | 
						|
								      description = "Draw line segment cubic-bezier in-out interpolation",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "startPos"},
							 | 
						|
								        {type = "Vector2", name = "endPos"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircle",
							 | 
						|
								      description = "Draw a color-filled circle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleSector",
							 | 
						|
								      description = "Draw a piece of a circle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "startAngle"},
							 | 
						|
								        {type = "float", name = "endAngle"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleSectorLines",
							 | 
						|
								      description = "Draw circle sector outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "startAngle"},
							 | 
						|
								        {type = "float", name = "endAngle"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleGradient",
							 | 
						|
								      description = "Draw a gradient-filled circle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "inner"},
							 | 
						|
								        {type = "Color", name = "outer"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleV",
							 | 
						|
								      description = "Draw a color-filled circle (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleLines",
							 | 
						|
								      description = "Draw circle outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircleLinesV",
							 | 
						|
								      description = "Draw circle outline (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawEllipse",
							 | 
						|
								      description = "Draw ellipse",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "float", name = "radiusH"},
							 | 
						|
								        {type = "float", name = "radiusV"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawEllipseLines",
							 | 
						|
								      description = "Draw ellipse outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "float", name = "radiusH"},
							 | 
						|
								        {type = "float", name = "radiusV"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRing",
							 | 
						|
								      description = "Draw ring",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "innerRadius"},
							 | 
						|
								        {type = "float", name = "outerRadius"},
							 | 
						|
								        {type = "float", name = "startAngle"},
							 | 
						|
								        {type = "float", name = "endAngle"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRingLines",
							 | 
						|
								      description = "Draw ring outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "innerRadius"},
							 | 
						|
								        {type = "float", name = "outerRadius"},
							 | 
						|
								        {type = "float", name = "startAngle"},
							 | 
						|
								        {type = "float", name = "endAngle"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangle",
							 | 
						|
								      description = "Draw a color-filled rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleV",
							 | 
						|
								      description = "Draw a color-filled rectangle (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Vector2", name = "size"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleRec",
							 | 
						|
								      description = "Draw a color-filled rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectanglePro",
							 | 
						|
								      description = "Draw a color-filled rectangle with pro parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "Vector2", name = "origin"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleGradientV",
							 | 
						|
								      description = "Draw a vertical-gradient-filled rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "top"},
							 | 
						|
								        {type = "Color", name = "bottom"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleGradientH",
							 | 
						|
								      description = "Draw a horizontal-gradient-filled rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "left"},
							 | 
						|
								        {type = "Color", name = "right"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleGradientEx",
							 | 
						|
								      description = "Draw a gradient-filled rectangle with custom vertex colors",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "Color", name = "topLeft"},
							 | 
						|
								        {type = "Color", name = "bottomLeft"},
							 | 
						|
								        {type = "Color", name = "topRight"},
							 | 
						|
								        {type = "Color", name = "bottomRight"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleLines",
							 | 
						|
								      description = "Draw rectangle outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleLinesEx",
							 | 
						|
								      description = "Draw rectangle outline with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "float", name = "lineThick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleRounded",
							 | 
						|
								      description = "Draw rectangle with rounded edges",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "float", name = "roundness"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleRoundedLines",
							 | 
						|
								      description = "Draw rectangle lines with rounded edges",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "float", name = "roundness"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRectangleRoundedLinesEx",
							 | 
						|
								      description = "Draw rectangle with rounded edges outline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "float", name = "roundness"},
							 | 
						|
								        {type = "int", name = "segments"},
							 | 
						|
								        {type = "float", name = "lineThick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangle",
							 | 
						|
								      description = "Draw a color-filled triangle (vertex in counter-clockwise order!)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "v1"},
							 | 
						|
								        {type = "Vector2", name = "v2"},
							 | 
						|
								        {type = "Vector2", name = "v3"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangleLines",
							 | 
						|
								      description = "Draw triangle outline (vertex in counter-clockwise order!)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "v1"},
							 | 
						|
								        {type = "Vector2", name = "v2"},
							 | 
						|
								        {type = "Vector2", name = "v3"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangleFan",
							 | 
						|
								      description = "Draw a triangle fan defined by points (first vertex is the center)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangleStrip",
							 | 
						|
								      description = "Draw a triangle strip defined by points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPoly",
							 | 
						|
								      description = "Draw a regular polygon (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPolyLines",
							 | 
						|
								      description = "Draw a polygon outline of n sides",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPolyLinesEx",
							 | 
						|
								      description = "Draw a polygon outline of n sides with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "float", name = "lineThick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineLinear",
							 | 
						|
								      description = "Draw spline: Linear, minimum 2 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineBasis",
							 | 
						|
								      description = "Draw spline: B-Spline, minimum 4 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineCatmullRom",
							 | 
						|
								      description = "Draw spline: Catmull-Rom, minimum 4 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineBezierQuadratic",
							 | 
						|
								      description = "Draw spline: Quadratic Bezier, minimum 3 points (1 control point): [p1, c2, p3, c4...]",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineBezierCubic",
							 | 
						|
								      description = "Draw spline: Cubic Bezier, minimum 4 points (2 control points): [p1, c2, c3, p4, c5, c6...]",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineSegmentLinear",
							 | 
						|
								      description = "Draw spline segment: Linear, 2 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineSegmentBasis",
							 | 
						|
								      description = "Draw spline segment: B-Spline, 4 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineSegmentCatmullRom",
							 | 
						|
								      description = "Draw spline segment: Catmull-Rom, 4 points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineSegmentBezierQuadratic",
							 | 
						|
								      description = "Draw spline segment: Quadratic Bezier, 2 points, 1 control point",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "c2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSplineSegmentBezierCubic",
							 | 
						|
								      description = "Draw spline segment: Cubic Bezier, 2 points, 2 control points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "c2"},
							 | 
						|
								        {type = "Vector2", name = "c3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetSplinePointLinear",
							 | 
						|
								      description = "Get (evaluate) spline point: Linear",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "startPos"},
							 | 
						|
								        {type = "Vector2", name = "endPos"},
							 | 
						|
								        {type = "float", name = "t"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetSplinePointBasis",
							 | 
						|
								      description = "Get (evaluate) spline point: B-Spline",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "t"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetSplinePointCatmullRom",
							 | 
						|
								      description = "Get (evaluate) spline point: Catmull-Rom",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "t"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetSplinePointBezierQuad",
							 | 
						|
								      description = "Get (evaluate) spline point: Quadratic Bezier",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "c2"},
							 | 
						|
								        {type = "Vector2", name = "p3"},
							 | 
						|
								        {type = "float", name = "t"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetSplinePointBezierCubic",
							 | 
						|
								      description = "Get (evaluate) spline point: Cubic Bezier",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "c2"},
							 | 
						|
								        {type = "Vector2", name = "c3"},
							 | 
						|
								        {type = "Vector2", name = "p4"},
							 | 
						|
								        {type = "float", name = "t"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionRecs",
							 | 
						|
								      description = "Check collision between two rectangles",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec1"},
							 | 
						|
								        {type = "Rectangle", name = "rec2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionCircles",
							 | 
						|
								      description = "Check collision between two circles",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center1"},
							 | 
						|
								        {type = "float", name = "radius1"},
							 | 
						|
								        {type = "Vector2", name = "center2"},
							 | 
						|
								        {type = "float", name = "radius2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionCircleRec",
							 | 
						|
								      description = "Check collision between circle and rectangle",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Rectangle", name = "rec"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionCircleLine",
							 | 
						|
								      description = "Check if circle collides with a line created betweeen two points [p1] and [p2]",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionPointRec",
							 | 
						|
								      description = "Check if point is inside rectangle",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "point"},
							 | 
						|
								        {type = "Rectangle", name = "rec"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionPointCircle",
							 | 
						|
								      description = "Check if point is inside circle",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "point"},
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionPointTriangle",
							 | 
						|
								      description = "Check if point is inside a triangle",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "point"},
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "Vector2", name = "p3"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionPointLine",
							 | 
						|
								      description = "Check if point belongs to line created between two points [p1] and [p2] with defined margin in pixels [threshold]",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "point"},
							 | 
						|
								        {type = "Vector2", name = "p1"},
							 | 
						|
								        {type = "Vector2", name = "p2"},
							 | 
						|
								        {type = "int", name = "threshold"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionPointPoly",
							 | 
						|
								      description = "Check if point is within a polygon described by array of vertices",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "point"},
							 | 
						|
								        {type = "const Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionLines",
							 | 
						|
								      description = "Check the collision between two lines defined by two points each, returns collision point by reference",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector2", name = "startPos1"},
							 | 
						|
								        {type = "Vector2", name = "endPos1"},
							 | 
						|
								        {type = "Vector2", name = "startPos2"},
							 | 
						|
								        {type = "Vector2", name = "endPos2"},
							 | 
						|
								        {type = "Vector2 *", name = "collisionPoint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCollisionRec",
							 | 
						|
								      description = "Get collision rectangle for two rectangles collision",
							 | 
						|
								      returnType = "Rectangle",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Rectangle", name = "rec1"},
							 | 
						|
								        {type = "Rectangle", name = "rec2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImage",
							 | 
						|
								      description = "Load image from file into CPU memory (RAM)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageRaw",
							 | 
						|
								      description = "Load image from RAW file data",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "format"},
							 | 
						|
								        {type = "int", name = "headerSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageAnim",
							 | 
						|
								      description = "Load image sequence from file (frames appended to image.data)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int *", name = "frames"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageAnimFromMemory",
							 | 
						|
								      description = "Load image sequence from memory buffer",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "const unsigned char *", name = "fileData"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int *", name = "frames"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageFromMemory",
							 | 
						|
								      description = "Load image from memory buffer, fileType refers to extension: i.e. '.png'",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "const unsigned char *", name = "fileData"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageFromTexture",
							 | 
						|
								      description = "Load image from GPU texture data",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageFromScreen",
							 | 
						|
								      description = "Load image from screen buffer and (screenshot)",
							 | 
						|
								      returnType = "Image"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsImageValid",
							 | 
						|
								      description = "Check if an image is valid (data and parameters)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadImage",
							 | 
						|
								      description = "Unload image from CPU memory (RAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportImage",
							 | 
						|
								      description = "Export image data to file, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportImageToMemory",
							 | 
						|
								      description = "Export image to memory buffer",
							 | 
						|
								      returnType = "unsigned char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "int *", name = "fileSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportImageAsCode",
							 | 
						|
								      description = "Export image as code file defining an array of bytes, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageColor",
							 | 
						|
								      description = "Generate image: plain color",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageGradientLinear",
							 | 
						|
								      description = "Generate image: linear gradient, direction in degrees [0..360], 0=Vertical gradient",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "direction"},
							 | 
						|
								        {type = "Color", name = "start"},
							 | 
						|
								        {type = "Color", name = "end"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageGradientRadial",
							 | 
						|
								      description = "Generate image: radial gradient",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "float", name = "density"},
							 | 
						|
								        {type = "Color", name = "inner"},
							 | 
						|
								        {type = "Color", name = "outer"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageGradientSquare",
							 | 
						|
								      description = "Generate image: square gradient",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "float", name = "density"},
							 | 
						|
								        {type = "Color", name = "inner"},
							 | 
						|
								        {type = "Color", name = "outer"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageChecked",
							 | 
						|
								      description = "Generate image: checked",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "checksX"},
							 | 
						|
								        {type = "int", name = "checksY"},
							 | 
						|
								        {type = "Color", name = "col1"},
							 | 
						|
								        {type = "Color", name = "col2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageWhiteNoise",
							 | 
						|
								      description = "Generate image: white noise",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "float", name = "factor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImagePerlinNoise",
							 | 
						|
								      description = "Generate image: perlin noise",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "offsetX"},
							 | 
						|
								        {type = "int", name = "offsetY"},
							 | 
						|
								        {type = "float", name = "scale"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageCellular",
							 | 
						|
								      description = "Generate image: cellular algorithm, bigger tileSize means bigger cells",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "tileSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageText",
							 | 
						|
								      description = "Generate image: grayscale image from text data",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageCopy",
							 | 
						|
								      description = "Create an image duplicate (useful for transformations)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageFromImage",
							 | 
						|
								      description = "Create an image from another image piece",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "Rectangle", name = "rec"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageFromChannel",
							 | 
						|
								      description = "Create an image from a selected channel of another image (GRAYSCALE)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "int", name = "selectedChannel"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageText",
							 | 
						|
								      description = "Create an image from text (default font)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageTextEx",
							 | 
						|
								      description = "Create an image from text (custom sprite font)",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageFormat",
							 | 
						|
								      description = "Convert image data to desired format",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "newFormat"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageToPOT",
							 | 
						|
								      description = "Convert image to POT (power-of-two)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Color", name = "fill"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageCrop",
							 | 
						|
								      description = "Crop an image to a defined rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Rectangle", name = "crop"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageAlphaCrop",
							 | 
						|
								      description = "Crop image depending on alpha value",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "float", name = "threshold"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageAlphaClear",
							 | 
						|
								      description = "Clear alpha channel to desired color",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "float", name = "threshold"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageAlphaMask",
							 | 
						|
								      description = "Apply alpha mask to image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Image", name = "alphaMask"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageAlphaPremultiply",
							 | 
						|
								      description = "Premultiply alpha channel",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageBlurGaussian",
							 | 
						|
								      description = "Apply Gaussian blur using a box blur approximation",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "blurSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageKernelConvolution",
							 | 
						|
								      description = "Apply custom square convolution kernel to image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "const float *", name = "kernel"},
							 | 
						|
								        {type = "int", name = "kernelSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageResize",
							 | 
						|
								      description = "Resize image (Bicubic scaling algorithm)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "newWidth"},
							 | 
						|
								        {type = "int", name = "newHeight"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageResizeNN",
							 | 
						|
								      description = "Resize image (Nearest-Neighbor scaling algorithm)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "newWidth"},
							 | 
						|
								        {type = "int", name = "newHeight"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageResizeCanvas",
							 | 
						|
								      description = "Resize canvas and fill with color",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "newWidth"},
							 | 
						|
								        {type = "int", name = "newHeight"},
							 | 
						|
								        {type = "int", name = "offsetX"},
							 | 
						|
								        {type = "int", name = "offsetY"},
							 | 
						|
								        {type = "Color", name = "fill"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageMipmaps",
							 | 
						|
								      description = "Compute all mipmap levels for a provided image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDither",
							 | 
						|
								      description = "Dither image data to 16bpp or lower (Floyd-Steinberg dithering)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "rBpp"},
							 | 
						|
								        {type = "int", name = "gBpp"},
							 | 
						|
								        {type = "int", name = "bBpp"},
							 | 
						|
								        {type = "int", name = "aBpp"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageFlipVertical",
							 | 
						|
								      description = "Flip image vertically",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageFlipHorizontal",
							 | 
						|
								      description = "Flip image horizontally",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageRotate",
							 | 
						|
								      description = "Rotate image by input angle in degrees (-359 to 359)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "degrees"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageRotateCW",
							 | 
						|
								      description = "Rotate image clockwise 90deg",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageRotateCCW",
							 | 
						|
								      description = "Rotate image counter-clockwise 90deg",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorTint",
							 | 
						|
								      description = "Modify image color: tint",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorInvert",
							 | 
						|
								      description = "Modify image color: invert",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorGrayscale",
							 | 
						|
								      description = "Modify image color: grayscale",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorContrast",
							 | 
						|
								      description = "Modify image color: contrast (-100 to 100)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "float", name = "contrast"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorBrightness",
							 | 
						|
								      description = "Modify image color: brightness (-255 to 255)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "int", name = "brightness"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageColorReplace",
							 | 
						|
								      description = "Modify image color: replace color",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "image"},
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "Color", name = "replace"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImageColors",
							 | 
						|
								      description = "Load color data from image as a Color array (RGBA - 32bit)",
							 | 
						|
								      returnType = "Color *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadImagePalette",
							 | 
						|
								      description = "Load colors palette from image as a Color array (RGBA - 32bit)",
							 | 
						|
								      returnType = "Color *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "int", name = "maxPaletteSize"},
							 | 
						|
								        {type = "int *", name = "colorCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadImageColors",
							 | 
						|
								      description = "Unload color data loaded with LoadImageColors()",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color *", name = "colors"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadImagePalette",
							 | 
						|
								      description = "Unload colors palette loaded with LoadImagePalette()",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color *", name = "colors"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetImageAlphaBorder",
							 | 
						|
								      description = "Get image alpha border rectangle",
							 | 
						|
								      returnType = "Rectangle",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "float", name = "threshold"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetImageColor",
							 | 
						|
								      description = "Get image pixel color at (x, y) position",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "int", name = "x"},
							 | 
						|
								        {type = "int", name = "y"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageClearBackground",
							 | 
						|
								      description = "Clear image background with given color",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawPixel",
							 | 
						|
								      description = "Draw pixel within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawPixelV",
							 | 
						|
								      description = "Draw pixel within an image (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawLine",
							 | 
						|
								      description = "Draw line within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "int", name = "startPosX"},
							 | 
						|
								        {type = "int", name = "startPosY"},
							 | 
						|
								        {type = "int", name = "endPosX"},
							 | 
						|
								        {type = "int", name = "endPosY"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawLineV",
							 | 
						|
								      description = "Draw line within an image (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "start"},
							 | 
						|
								        {type = "Vector2", name = "end"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawLineEx",
							 | 
						|
								      description = "Draw a line defining thickness within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "start"},
							 | 
						|
								        {type = "Vector2", name = "end"},
							 | 
						|
								        {type = "int", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawCircle",
							 | 
						|
								      description = "Draw a filled circle within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "int", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawCircleV",
							 | 
						|
								      description = "Draw a filled circle within an image (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "int", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawCircleLines",
							 | 
						|
								      description = "Draw circle outline within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "int", name = "centerX"},
							 | 
						|
								        {type = "int", name = "centerY"},
							 | 
						|
								        {type = "int", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawCircleLinesV",
							 | 
						|
								      description = "Draw circle outline within an image (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "center"},
							 | 
						|
								        {type = "int", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawRectangle",
							 | 
						|
								      description = "Draw rectangle within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawRectangleV",
							 | 
						|
								      description = "Draw rectangle within an image (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Vector2", name = "size"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawRectangleRec",
							 | 
						|
								      description = "Draw rectangle within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawRectangleLines",
							 | 
						|
								      description = "Draw rectangle lines within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "int", name = "thick"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTriangle",
							 | 
						|
								      description = "Draw triangle within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "v1"},
							 | 
						|
								        {type = "Vector2", name = "v2"},
							 | 
						|
								        {type = "Vector2", name = "v3"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTriangleEx",
							 | 
						|
								      description = "Draw triangle with interpolated colors within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "v1"},
							 | 
						|
								        {type = "Vector2", name = "v2"},
							 | 
						|
								        {type = "Vector2", name = "v3"},
							 | 
						|
								        {type = "Color", name = "c1"},
							 | 
						|
								        {type = "Color", name = "c2"},
							 | 
						|
								        {type = "Color", name = "c3"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTriangleLines",
							 | 
						|
								      description = "Draw triangle outline within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2", name = "v1"},
							 | 
						|
								        {type = "Vector2", name = "v2"},
							 | 
						|
								        {type = "Vector2", name = "v3"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTriangleFan",
							 | 
						|
								      description = "Draw a triangle fan defined by points within an image (first vertex is the center)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTriangleStrip",
							 | 
						|
								      description = "Draw a triangle strip defined by points within an image",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Vector2 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDraw",
							 | 
						|
								      description = "Draw a source image within a destination image (tint applied to source)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Image", name = "src"},
							 | 
						|
								        {type = "Rectangle", name = "srcRec"},
							 | 
						|
								        {type = "Rectangle", name = "dstRec"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawText",
							 | 
						|
								      description = "Draw text (using default font) within an image (destination)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ImageDrawTextEx",
							 | 
						|
								      description = "Draw text (custom sprite font) within an image (destination)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image *", name = "dst"},
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadTexture",
							 | 
						|
								      description = "Load texture from file into GPU memory (VRAM)",
							 | 
						|
								      returnType = "Texture2D",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadTextureFromImage",
							 | 
						|
								      description = "Load texture from image data",
							 | 
						|
								      returnType = "Texture2D",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadTextureCubemap",
							 | 
						|
								      description = "Load cubemap from image, multiple image cubemap layouts supported",
							 | 
						|
								      returnType = "TextureCubemap",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "int", name = "layout"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadRenderTexture",
							 | 
						|
								      description = "Load texture for rendering (framebuffer)",
							 | 
						|
								      returnType = "RenderTexture2D",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsTextureValid",
							 | 
						|
								      description = "Check if a texture is valid (loaded in GPU)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadTexture",
							 | 
						|
								      description = "Unload texture from GPU memory (VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsRenderTextureValid",
							 | 
						|
								      description = "Check if a render texture is valid (loaded in GPU)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "RenderTexture2D", name = "target"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadRenderTexture",
							 | 
						|
								      description = "Unload render texture from GPU memory (VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "RenderTexture2D", name = "target"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateTexture",
							 | 
						|
								      description = "Update GPU texture with new data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "const void *", name = "pixels"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateTextureRec",
							 | 
						|
								      description = "Update GPU texture rectangle with new data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "rec"},
							 | 
						|
								        {type = "const void *", name = "pixels"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenTextureMipmaps",
							 | 
						|
								      description = "Generate GPU mipmaps for a texture",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D *", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTextureFilter",
							 | 
						|
								      description = "Set texture scaling filter mode",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "int", name = "filter"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTextureWrap",
							 | 
						|
								      description = "Set texture wrapping mode",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "int", name = "wrap"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTexture",
							 | 
						|
								      description = "Draw a Texture2D",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextureV",
							 | 
						|
								      description = "Draw a Texture2D with position defined as Vector2",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextureEx",
							 | 
						|
								      description = "Draw a Texture2D with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "float", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextureRec",
							 | 
						|
								      description = "Draw a part of a texture defined by a rectangle",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "source"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTexturePro",
							 | 
						|
								      description = "Draw a part of a texture defined by a rectangle with 'pro' parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "source"},
							 | 
						|
								        {type = "Rectangle", name = "dest"},
							 | 
						|
								        {type = "Vector2", name = "origin"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextureNPatch",
							 | 
						|
								      description = "Draws a texture (or part of it) that stretches or shrinks nicely",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "NPatchInfo", name = "nPatchInfo"},
							 | 
						|
								        {type = "Rectangle", name = "dest"},
							 | 
						|
								        {type = "Vector2", name = "origin"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorIsEqual",
							 | 
						|
								      description = "Check if two colors are equal",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "col1"},
							 | 
						|
								        {type = "Color", name = "col2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "Fade",
							 | 
						|
								      description = "Get color with alpha applied, alpha goes from 0.0f to 1.0f",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "float", name = "alpha"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorToInt",
							 | 
						|
								      description = "Get hexadecimal value for a Color (0xRRGGBBAA)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorNormalize",
							 | 
						|
								      description = "Get Color normalized as float [0..1]",
							 | 
						|
								      returnType = "Vector4",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorFromNormalized",
							 | 
						|
								      description = "Get Color from normalized values [0..1]",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector4", name = "normalized"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorToHSV",
							 | 
						|
								      description = "Get HSV values for a Color, hue [0..360], saturation/value [0..1]",
							 | 
						|
								      returnType = "Vector3",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorFromHSV",
							 | 
						|
								      description = "Get a Color from HSV values, hue [0..360], saturation/value [0..1]",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "hue"},
							 | 
						|
								        {type = "float", name = "saturation"},
							 | 
						|
								        {type = "float", name = "value"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorTint",
							 | 
						|
								      description = "Get color multiplied with another color",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorBrightness",
							 | 
						|
								      description = "Get color with brightness correction, brightness factor goes from -1.0f to 1.0f",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "float", name = "factor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorContrast",
							 | 
						|
								      description = "Get color with contrast correction, contrast values between -1.0f and 1.0f",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "float", name = "contrast"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorAlpha",
							 | 
						|
								      description = "Get color with alpha applied, alpha goes from 0.0f to 1.0f",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "float", name = "alpha"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorAlphaBlend",
							 | 
						|
								      description = "Get src alpha-blended into dst color with tint",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "dst"},
							 | 
						|
								        {type = "Color", name = "src"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ColorLerp",
							 | 
						|
								      description = "Get color lerp interpolation between two colors, factor [0.0f..1.0f]",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Color", name = "color1"},
							 | 
						|
								        {type = "Color", name = "color2"},
							 | 
						|
								        {type = "float", name = "factor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetColor",
							 | 
						|
								      description = "Get Color structure from hexadecimal value",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "hexValue"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetPixelColor",
							 | 
						|
								      description = "Get Color from a source pixel pointer of certain format",
							 | 
						|
								      returnType = "Color",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "void *", name = "srcPtr"},
							 | 
						|
								        {type = "int", name = "format"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetPixelColor",
							 | 
						|
								      description = "Set color formatted into destination pixel pointer",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "void *", name = "dstPtr"},
							 | 
						|
								        {type = "Color", name = "color"},
							 | 
						|
								        {type = "int", name = "format"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetPixelDataSize",
							 | 
						|
								      description = "Get pixel data size in bytes for certain format",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "width"},
							 | 
						|
								        {type = "int", name = "height"},
							 | 
						|
								        {type = "int", name = "format"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetFontDefault",
							 | 
						|
								      description = "Get the default Font",
							 | 
						|
								      returnType = "Font"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFont",
							 | 
						|
								      description = "Load font from file into GPU memory (VRAM)",
							 | 
						|
								      returnType = "Font",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFontEx",
							 | 
						|
								      description = "Load font from file with extended parameters, use NULL for codepoints and 0 for codepointCount to load the default character set, font size is provided in pixels height",
							 | 
						|
								      returnType = "Font",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "int *", name = "codepoints"},
							 | 
						|
								        {type = "int", name = "codepointCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFontFromImage",
							 | 
						|
								      description = "Load font from Image (XNA style)",
							 | 
						|
								      returnType = "Font",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "image"},
							 | 
						|
								        {type = "Color", name = "key"},
							 | 
						|
								        {type = "int", name = "firstChar"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFontFromMemory",
							 | 
						|
								      description = "Load font from memory buffer, fileType refers to extension: i.e. '.ttf'",
							 | 
						|
								      returnType = "Font",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "const unsigned char *", name = "fileData"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "int *", name = "codepoints"},
							 | 
						|
								        {type = "int", name = "codepointCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsFontValid",
							 | 
						|
								      description = "Check if a font is valid (font data loaded, WARNING: GPU texture not checked)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadFontData",
							 | 
						|
								      description = "Load font data for further use",
							 | 
						|
								      returnType = "GlyphInfo *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const unsigned char *", name = "fileData"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "int *", name = "codepoints"},
							 | 
						|
								        {type = "int", name = "codepointCount"},
							 | 
						|
								        {type = "int", name = "type"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenImageFontAtlas",
							 | 
						|
								      description = "Generate image font atlas using chars info",
							 | 
						|
								      returnType = "Image",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const GlyphInfo *", name = "glyphs"},
							 | 
						|
								        {type = "Rectangle **", name = "glyphRecs"},
							 | 
						|
								        {type = "int", name = "glyphCount"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "int", name = "padding"},
							 | 
						|
								        {type = "int", name = "packMethod"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadFontData",
							 | 
						|
								      description = "Unload font chars info data (RAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "GlyphInfo *", name = "glyphs"},
							 | 
						|
								        {type = "int", name = "glyphCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadFont",
							 | 
						|
								      description = "Unload font from GPU memory (VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportFontAsCode",
							 | 
						|
								      description = "Export font as code file, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawFPS",
							 | 
						|
								      description = "Draw current FPS",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawText",
							 | 
						|
								      description = "Draw text (using default font)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int", name = "posX"},
							 | 
						|
								        {type = "int", name = "posY"},
							 | 
						|
								        {type = "int", name = "fontSize"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextEx",
							 | 
						|
								      description = "Draw text using font and additional parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextPro",
							 | 
						|
								      description = "Draw text using Font and pro parameters (rotation)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "Vector2", name = "origin"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextCodepoint",
							 | 
						|
								      description = "Draw one character (codepoint)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "int", name = "codepoint"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTextCodepoints",
							 | 
						|
								      description = "Draw multiple character (codepoint)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const int *", name = "codepoints"},
							 | 
						|
								        {type = "int", name = "codepointCount"},
							 | 
						|
								        {type = "Vector2", name = "position"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetTextLineSpacing",
							 | 
						|
								      description = "Set vertical line spacing when drawing with line-breaks",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "spacing"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MeasureText",
							 | 
						|
								      description = "Measure string width for default font",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int", name = "fontSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "MeasureTextEx",
							 | 
						|
								      description = "Measure string size for Font",
							 | 
						|
								      returnType = "Vector2",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "float", name = "fontSize"},
							 | 
						|
								        {type = "float", name = "spacing"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGlyphIndex",
							 | 
						|
								      description = "Get glyph index position in font for a codepoint (unicode character), fallback to '?' if not found",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "int", name = "codepoint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGlyphInfo",
							 | 
						|
								      description = "Get glyph font info data for a codepoint (unicode character), fallback to '?' if not found",
							 | 
						|
								      returnType = "GlyphInfo",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "int", name = "codepoint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetGlyphAtlasRec",
							 | 
						|
								      description = "Get glyph rectangle in font atlas for a codepoint (unicode character), fallback to '?' if not found",
							 | 
						|
								      returnType = "Rectangle",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Font", name = "font"},
							 | 
						|
								        {type = "int", name = "codepoint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadUTF8",
							 | 
						|
								      description = "Load UTF-8 text encoded from codepoints array",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const int *", name = "codepoints"},
							 | 
						|
								        {type = "int", name = "length"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadUTF8",
							 | 
						|
								      description = "Unload UTF-8 text encoded from codepoints array",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadCodepoints",
							 | 
						|
								      description = "Load all codepoints from a UTF-8 text string, codepoints count returned by parameter",
							 | 
						|
								      returnType = "int *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int *", name = "count"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadCodepoints",
							 | 
						|
								      description = "Unload codepoints data from memory",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int *", name = "codepoints"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCodepointCount",
							 | 
						|
								      description = "Get total number of codepoints in a UTF-8 encoded string",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCodepoint",
							 | 
						|
								      description = "Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int *", name = "codepointSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCodepointNext",
							 | 
						|
								      description = "Get next codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int *", name = "codepointSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetCodepointPrevious",
							 | 
						|
								      description = "Get previous codepoint in a UTF-8 encoded string, 0x3f('?') is returned on failure",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int *", name = "codepointSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CodepointToUTF8",
							 | 
						|
								      description = "Encode one codepoint into UTF-8 byte array (array length returned as parameter)",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "codepoint"},
							 | 
						|
								        {type = "int *", name = "utf8Size"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextCopy",
							 | 
						|
								      description = "Copy one string to another, returns bytes copied",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "char *", name = "dst"},
							 | 
						|
								        {type = "const char *", name = "src"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextIsEqual",
							 | 
						|
								      description = "Check if two text string are equal",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text1"},
							 | 
						|
								        {type = "const char *", name = "text2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextLength",
							 | 
						|
								      description = "Get text length, checks for '\\0' ending",
							 | 
						|
								      returnType = "unsigned int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextFormat",
							 | 
						|
								      description = "Text formatting with variables (sprintf() style)",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "...", name = "args"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextSubtext",
							 | 
						|
								      description = "Get a piece of a text string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "int", name = "position"},
							 | 
						|
								        {type = "int", name = "length"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextReplace",
							 | 
						|
								      description = "Replace text string (WARNING: memory must be freed!)",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "const char *", name = "replace"},
							 | 
						|
								        {type = "const char *", name = "by"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextInsert",
							 | 
						|
								      description = "Insert text in a position (WARNING: memory must be freed!)",
							 | 
						|
								      returnType = "char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "const char *", name = "insert"},
							 | 
						|
								        {type = "int", name = "position"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextJoin",
							 | 
						|
								      description = "Join text strings with delimiter",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char **", name = "textList"},
							 | 
						|
								        {type = "int", name = "count"},
							 | 
						|
								        {type = "const char *", name = "delimiter"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextSplit",
							 | 
						|
								      description = "Split text into multiple strings",
							 | 
						|
								      returnType = "const char **",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "char", name = "delimiter"},
							 | 
						|
								        {type = "int *", name = "count"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextAppend",
							 | 
						|
								      description = "Append text at specific position and move cursor!",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "char *", name = "text"},
							 | 
						|
								        {type = "const char *", name = "append"},
							 | 
						|
								        {type = "int *", name = "position"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextFindIndex",
							 | 
						|
								      description = "Find first text occurrence within a string",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"},
							 | 
						|
								        {type = "const char *", name = "find"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToUpper",
							 | 
						|
								      description = "Get upper case version of provided string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToLower",
							 | 
						|
								      description = "Get lower case version of provided string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToPascal",
							 | 
						|
								      description = "Get Pascal case notation version of provided string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToSnake",
							 | 
						|
								      description = "Get Snake case notation version of provided string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToCamel",
							 | 
						|
								      description = "Get Camel case notation version of provided string",
							 | 
						|
								      returnType = "const char *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToInteger",
							 | 
						|
								      description = "Get integer value from text (negative values not supported)",
							 | 
						|
								      returnType = "int",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "TextToFloat",
							 | 
						|
								      description = "Get float value from text (negative values not supported)",
							 | 
						|
								      returnType = "float",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "text"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawLine3D",
							 | 
						|
								      description = "Draw a line in 3D world space",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "startPos"},
							 | 
						|
								        {type = "Vector3", name = "endPos"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPoint3D",
							 | 
						|
								      description = "Draw a point in 3D space, actually a small line",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCircle3D",
							 | 
						|
								      description = "Draw a circle in 3D world space",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Vector3", name = "rotationAxis"},
							 | 
						|
								        {type = "float", name = "rotationAngle"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangle3D",
							 | 
						|
								      description = "Draw a color-filled triangle (vertex in counter-clockwise order!)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "v1"},
							 | 
						|
								        {type = "Vector3", name = "v2"},
							 | 
						|
								        {type = "Vector3", name = "v3"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawTriangleStrip3D",
							 | 
						|
								      description = "Draw a triangle strip defined by points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const Vector3 *", name = "points"},
							 | 
						|
								        {type = "int", name = "pointCount"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCube",
							 | 
						|
								      description = "Draw cube",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "width"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "float", name = "length"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCubeV",
							 | 
						|
								      description = "Draw cube (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "size"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCubeWires",
							 | 
						|
								      description = "Draw cube wires",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "width"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "float", name = "length"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCubeWiresV",
							 | 
						|
								      description = "Draw cube wires (Vector version)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "size"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSphere",
							 | 
						|
								      description = "Draw sphere",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "centerPos"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSphereEx",
							 | 
						|
								      description = "Draw sphere with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "centerPos"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawSphereWires",
							 | 
						|
								      description = "Draw sphere wires",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "centerPos"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCylinder",
							 | 
						|
								      description = "Draw a cylinder/cone",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "radiusTop"},
							 | 
						|
								        {type = "float", name = "radiusBottom"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCylinderEx",
							 | 
						|
								      description = "Draw a cylinder with base at startPos and top at endPos",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "startPos"},
							 | 
						|
								        {type = "Vector3", name = "endPos"},
							 | 
						|
								        {type = "float", name = "startRadius"},
							 | 
						|
								        {type = "float", name = "endRadius"},
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCylinderWires",
							 | 
						|
								      description = "Draw a cylinder/cone wires",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "radiusTop"},
							 | 
						|
								        {type = "float", name = "radiusBottom"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCylinderWiresEx",
							 | 
						|
								      description = "Draw a cylinder wires with base at startPos and top at endPos",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "startPos"},
							 | 
						|
								        {type = "Vector3", name = "endPos"},
							 | 
						|
								        {type = "float", name = "startRadius"},
							 | 
						|
								        {type = "float", name = "endRadius"},
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCapsule",
							 | 
						|
								      description = "Draw a capsule with the center of its sphere caps at startPos and endPos",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "startPos"},
							 | 
						|
								        {type = "Vector3", name = "endPos"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawCapsuleWires",
							 | 
						|
								      description = "Draw capsule wireframe with the center of its sphere caps at startPos and endPos",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "startPos"},
							 | 
						|
								        {type = "Vector3", name = "endPos"},
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawPlane",
							 | 
						|
								      description = "Draw a plane XZ",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "centerPos"},
							 | 
						|
								        {type = "Vector2", name = "size"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawRay",
							 | 
						|
								      description = "Draw a ray line",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawGrid",
							 | 
						|
								      description = "Draw a grid (centered at (0, 0, 0))",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "slices"},
							 | 
						|
								        {type = "float", name = "spacing"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadModel",
							 | 
						|
								      description = "Load model from files (meshes and materials)",
							 | 
						|
								      returnType = "Model",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadModelFromMesh",
							 | 
						|
								      description = "Load model from generated mesh (default material)",
							 | 
						|
								      returnType = "Model",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsModelValid",
							 | 
						|
								      description = "Check if a model is valid (loaded in GPU, VAO/VBOs)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadModel",
							 | 
						|
								      description = "Unload model (including meshes) from memory (RAM and/or VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetModelBoundingBox",
							 | 
						|
								      description = "Compute model bounding box limits (considers all meshes)",
							 | 
						|
								      returnType = "BoundingBox",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModel",
							 | 
						|
								      description = "Draw a model (with texture if set)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModelEx",
							 | 
						|
								      description = "Draw a model with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "rotationAxis"},
							 | 
						|
								        {type = "float", name = "rotationAngle"},
							 | 
						|
								        {type = "Vector3", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModelWires",
							 | 
						|
								      description = "Draw a model wires (with texture if set)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModelWiresEx",
							 | 
						|
								      description = "Draw a model wires (with texture if set) with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "rotationAxis"},
							 | 
						|
								        {type = "float", name = "rotationAngle"},
							 | 
						|
								        {type = "Vector3", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModelPoints",
							 | 
						|
								      description = "Draw a model as points",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawModelPointsEx",
							 | 
						|
								      description = "Draw a model as points with extended parameters",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "rotationAxis"},
							 | 
						|
								        {type = "float", name = "rotationAngle"},
							 | 
						|
								        {type = "Vector3", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawBoundingBox",
							 | 
						|
								      description = "Draw bounding box (wires)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "BoundingBox", name = "box"},
							 | 
						|
								        {type = "Color", name = "color"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawBillboard",
							 | 
						|
								      description = "Draw a billboard texture",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera", name = "camera"},
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "float", name = "scale"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawBillboardRec",
							 | 
						|
								      description = "Draw a billboard texture defined by source",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera", name = "camera"},
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "source"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector2", name = "size"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawBillboardPro",
							 | 
						|
								      description = "Draw a billboard texture defined by source and rotation",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Camera", name = "camera"},
							 | 
						|
								        {type = "Texture2D", name = "texture"},
							 | 
						|
								        {type = "Rectangle", name = "source"},
							 | 
						|
								        {type = "Vector3", name = "position"},
							 | 
						|
								        {type = "Vector3", name = "up"},
							 | 
						|
								        {type = "Vector2", name = "size"},
							 | 
						|
								        {type = "Vector2", name = "origin"},
							 | 
						|
								        {type = "float", name = "rotation"},
							 | 
						|
								        {type = "Color", name = "tint"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UploadMesh",
							 | 
						|
								      description = "Upload mesh vertex data in GPU and provide VAO/VBO ids",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh *", name = "mesh"},
							 | 
						|
								        {type = "bool", name = "dynamic"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateMeshBuffer",
							 | 
						|
								      description = "Update mesh vertex data in GPU for a specific buffer index",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "int", name = "index"},
							 | 
						|
								        {type = "const void *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"},
							 | 
						|
								        {type = "int", name = "offset"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadMesh",
							 | 
						|
								      description = "Unload mesh data from CPU and GPU",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawMesh",
							 | 
						|
								      description = "Draw a 3d mesh with material and transform",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "Material", name = "material"},
							 | 
						|
								        {type = "Matrix", name = "transform"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DrawMeshInstanced",
							 | 
						|
								      description = "Draw multiple mesh instances with material and different transforms",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "Material", name = "material"},
							 | 
						|
								        {type = "const Matrix *", name = "transforms"},
							 | 
						|
								        {type = "int", name = "instances"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMeshBoundingBox",
							 | 
						|
								      description = "Compute mesh bounding box limits",
							 | 
						|
								      returnType = "BoundingBox",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshTangents",
							 | 
						|
								      description = "Compute mesh tangents",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh *", name = "mesh"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportMesh",
							 | 
						|
								      description = "Export mesh data to file, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportMeshAsCode",
							 | 
						|
								      description = "Export mesh as code file (.h) defining multiple arrays of vertex attributes",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshPoly",
							 | 
						|
								      description = "Generate polygonal mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "sides"},
							 | 
						|
								        {type = "float", name = "radius"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshPlane",
							 | 
						|
								      description = "Generate plane mesh (with subdivisions)",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "width"},
							 | 
						|
								        {type = "float", name = "length"},
							 | 
						|
								        {type = "int", name = "resX"},
							 | 
						|
								        {type = "int", name = "resZ"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshCube",
							 | 
						|
								      description = "Generate cuboid mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "width"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "float", name = "length"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshSphere",
							 | 
						|
								      description = "Generate sphere mesh (standard sphere)",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "int", name = "slices"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshHemiSphere",
							 | 
						|
								      description = "Generate half-sphere mesh (no bottom cap)",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "int", name = "rings"},
							 | 
						|
								        {type = "int", name = "slices"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshCylinder",
							 | 
						|
								      description = "Generate cylinder mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "int", name = "slices"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshCone",
							 | 
						|
								      description = "Generate cone/pyramid mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "height"},
							 | 
						|
								        {type = "int", name = "slices"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshTorus",
							 | 
						|
								      description = "Generate torus mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "size"},
							 | 
						|
								        {type = "int", name = "radSeg"},
							 | 
						|
								        {type = "int", name = "sides"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshKnot",
							 | 
						|
								      description = "Generate trefoil knot mesh",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "radius"},
							 | 
						|
								        {type = "float", name = "size"},
							 | 
						|
								        {type = "int", name = "radSeg"},
							 | 
						|
								        {type = "int", name = "sides"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshHeightmap",
							 | 
						|
								      description = "Generate heightmap mesh from image data",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "heightmap"},
							 | 
						|
								        {type = "Vector3", name = "size"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GenMeshCubicmap",
							 | 
						|
								      description = "Generate cubes-based map mesh from image data",
							 | 
						|
								      returnType = "Mesh",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Image", name = "cubicmap"},
							 | 
						|
								        {type = "Vector3", name = "cubeSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadMaterials",
							 | 
						|
								      description = "Load materials from model file",
							 | 
						|
								      returnType = "Material *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int *", name = "materialCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadMaterialDefault",
							 | 
						|
								      description = "Load default material (Supports: DIFFUSE, SPECULAR, NORMAL maps)",
							 | 
						|
								      returnType = "Material"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMaterialValid",
							 | 
						|
								      description = "Check if a material is valid (shader assigned, map textures loaded in GPU)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Material", name = "material"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadMaterial",
							 | 
						|
								      description = "Unload material from GPU memory (VRAM)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Material", name = "material"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMaterialTexture",
							 | 
						|
								      description = "Set texture for a material map type (MATERIAL_MAP_DIFFUSE, MATERIAL_MAP_SPECULAR...)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Material *", name = "material"},
							 | 
						|
								        {type = "int", name = "mapType"},
							 | 
						|
								        {type = "Texture2D", name = "texture"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetModelMeshMaterial",
							 | 
						|
								      description = "Set material for a mesh",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model *", name = "model"},
							 | 
						|
								        {type = "int", name = "meshId"},
							 | 
						|
								        {type = "int", name = "materialId"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadModelAnimations",
							 | 
						|
								      description = "Load model animations from file",
							 | 
						|
								      returnType = "ModelAnimation *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"},
							 | 
						|
								        {type = "int *", name = "animCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateModelAnimation",
							 | 
						|
								      description = "Update model animation pose (CPU)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "ModelAnimation", name = "anim"},
							 | 
						|
								        {type = "int", name = "frame"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateModelAnimationBones",
							 | 
						|
								      description = "Update model animation mesh bone matrices (GPU skinning)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "ModelAnimation", name = "anim"},
							 | 
						|
								        {type = "int", name = "frame"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadModelAnimation",
							 | 
						|
								      description = "Unload animation data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "ModelAnimation", name = "anim"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadModelAnimations",
							 | 
						|
								      description = "Unload animation array data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "ModelAnimation *", name = "animations"},
							 | 
						|
								        {type = "int", name = "animCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsModelAnimationValid",
							 | 
						|
								      description = "Check model animation skeleton match",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Model", name = "model"},
							 | 
						|
								        {type = "ModelAnimation", name = "anim"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionSpheres",
							 | 
						|
								      description = "Check collision between two spheres",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Vector3", name = "center1"},
							 | 
						|
								        {type = "float", name = "radius1"},
							 | 
						|
								        {type = "Vector3", name = "center2"},
							 | 
						|
								        {type = "float", name = "radius2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionBoxes",
							 | 
						|
								      description = "Check collision between two bounding boxes",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "BoundingBox", name = "box1"},
							 | 
						|
								        {type = "BoundingBox", name = "box2"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CheckCollisionBoxSphere",
							 | 
						|
								      description = "Check collision between box and sphere",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "BoundingBox", name = "box"},
							 | 
						|
								        {type = "Vector3", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRayCollisionSphere",
							 | 
						|
								      description = "Get collision info between ray and sphere",
							 | 
						|
								      returnType = "RayCollision",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "Vector3", name = "center"},
							 | 
						|
								        {type = "float", name = "radius"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRayCollisionBox",
							 | 
						|
								      description = "Get collision info between ray and box",
							 | 
						|
								      returnType = "RayCollision",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "BoundingBox", name = "box"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRayCollisionMesh",
							 | 
						|
								      description = "Get collision info between ray and mesh",
							 | 
						|
								      returnType = "RayCollision",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "Mesh", name = "mesh"},
							 | 
						|
								        {type = "Matrix", name = "transform"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRayCollisionTriangle",
							 | 
						|
								      description = "Get collision info between ray and triangle",
							 | 
						|
								      returnType = "RayCollision",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "Vector3", name = "p1"},
							 | 
						|
								        {type = "Vector3", name = "p2"},
							 | 
						|
								        {type = "Vector3", name = "p3"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetRayCollisionQuad",
							 | 
						|
								      description = "Get collision info between ray and quad",
							 | 
						|
								      returnType = "RayCollision",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Ray", name = "ray"},
							 | 
						|
								        {type = "Vector3", name = "p1"},
							 | 
						|
								        {type = "Vector3", name = "p2"},
							 | 
						|
								        {type = "Vector3", name = "p3"},
							 | 
						|
								        {type = "Vector3", name = "p4"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "InitAudioDevice",
							 | 
						|
								      description = "Initialize audio device and context",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "CloseAudioDevice",
							 | 
						|
								      description = "Close the audio device and context",
							 | 
						|
								      returnType = "void"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsAudioDeviceReady",
							 | 
						|
								      description = "Check if audio device has been initialized successfully",
							 | 
						|
								      returnType = "bool"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMasterVolume",
							 | 
						|
								      description = "Set master volume (listener)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float", name = "volume"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMasterVolume",
							 | 
						|
								      description = "Get master volume (listener)",
							 | 
						|
								      returnType = "float"
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadWave",
							 | 
						|
								      description = "Load wave data from file",
							 | 
						|
								      returnType = "Wave",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadWaveFromMemory",
							 | 
						|
								      description = "Load wave from memory buffer, fileType refers to extension: i.e. '.wav'",
							 | 
						|
								      returnType = "Wave",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "const unsigned char *", name = "fileData"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsWaveValid",
							 | 
						|
								      description = "Checks if wave data is valid (data loaded and parameters)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadSound",
							 | 
						|
								      description = "Load sound from file",
							 | 
						|
								      returnType = "Sound",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadSoundFromWave",
							 | 
						|
								      description = "Load sound from wave data",
							 | 
						|
								      returnType = "Sound",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadSoundAlias",
							 | 
						|
								      description = "Create a new sound that shares the same sample data as the source sound, does not own the sound data",
							 | 
						|
								      returnType = "Sound",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "source"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsSoundValid",
							 | 
						|
								      description = "Checks if a sound is valid (data loaded and buffers initialized)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateSound",
							 | 
						|
								      description = "Update sound buffer with new data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"},
							 | 
						|
								        {type = "const void *", name = "data"},
							 | 
						|
								        {type = "int", name = "sampleCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadWave",
							 | 
						|
								      description = "Unload wave data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadSound",
							 | 
						|
								      description = "Unload sound",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadSoundAlias",
							 | 
						|
								      description = "Unload a sound alias (does not deallocate sample data)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "alias"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportWave",
							 | 
						|
								      description = "Export wave data to file, returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ExportWaveAsCode",
							 | 
						|
								      description = "Export wave sample data to code (.h), returns true on success",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"},
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PlaySound",
							 | 
						|
								      description = "Play a sound",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "StopSound",
							 | 
						|
								      description = "Stop playing a sound",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PauseSound",
							 | 
						|
								      description = "Pause a sound",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ResumeSound",
							 | 
						|
								      description = "Resume a paused sound",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsSoundPlaying",
							 | 
						|
								      description = "Check if a sound is currently playing",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetSoundVolume",
							 | 
						|
								      description = "Set volume for a sound (1.0 is max level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"},
							 | 
						|
								        {type = "float", name = "volume"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetSoundPitch",
							 | 
						|
								      description = "Set pitch for a sound (1.0 is base level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"},
							 | 
						|
								        {type = "float", name = "pitch"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetSoundPan",
							 | 
						|
								      description = "Set pan for a sound (0.5 is center)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Sound", name = "sound"},
							 | 
						|
								        {type = "float", name = "pan"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WaveCopy",
							 | 
						|
								      description = "Copy a wave to a new wave",
							 | 
						|
								      returnType = "Wave",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WaveCrop",
							 | 
						|
								      description = "Crop a wave to defined frames range",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave *", name = "wave"},
							 | 
						|
								        {type = "int", name = "initFrame"},
							 | 
						|
								        {type = "int", name = "finalFrame"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "WaveFormat",
							 | 
						|
								      description = "Convert wave data to desired format",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave *", name = "wave"},
							 | 
						|
								        {type = "int", name = "sampleRate"},
							 | 
						|
								        {type = "int", name = "sampleSize"},
							 | 
						|
								        {type = "int", name = "channels"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadWaveSamples",
							 | 
						|
								      description = "Load samples data from wave as a 32bit float data array",
							 | 
						|
								      returnType = "float *",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Wave", name = "wave"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadWaveSamples",
							 | 
						|
								      description = "Unload samples data loaded with LoadWaveSamples()",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "float *", name = "samples"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadMusicStream",
							 | 
						|
								      description = "Load music stream from file",
							 | 
						|
								      returnType = "Music",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileName"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadMusicStreamFromMemory",
							 | 
						|
								      description = "Load music stream from data",
							 | 
						|
								      returnType = "Music",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "const char *", name = "fileType"},
							 | 
						|
								        {type = "const unsigned char *", name = "data"},
							 | 
						|
								        {type = "int", name = "dataSize"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMusicValid",
							 | 
						|
								      description = "Checks if a music stream is valid (context and buffers initialized)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadMusicStream",
							 | 
						|
								      description = "Unload music stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PlayMusicStream",
							 | 
						|
								      description = "Start music playing",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsMusicStreamPlaying",
							 | 
						|
								      description = "Check if music is playing",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateMusicStream",
							 | 
						|
								      description = "Updates buffers for music streaming",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "StopMusicStream",
							 | 
						|
								      description = "Stop music playing",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PauseMusicStream",
							 | 
						|
								      description = "Pause music playing",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ResumeMusicStream",
							 | 
						|
								      description = "Resume playing paused music",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SeekMusicStream",
							 | 
						|
								      description = "Seek music to a position (in seconds)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"},
							 | 
						|
								        {type = "float", name = "position"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMusicVolume",
							 | 
						|
								      description = "Set volume for music (1.0 is max level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"},
							 | 
						|
								        {type = "float", name = "volume"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMusicPitch",
							 | 
						|
								      description = "Set pitch for a music (1.0 is base level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"},
							 | 
						|
								        {type = "float", name = "pitch"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetMusicPan",
							 | 
						|
								      description = "Set pan for a music (0.5 is center)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"},
							 | 
						|
								        {type = "float", name = "pan"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMusicTimeLength",
							 | 
						|
								      description = "Get music time length (in seconds)",
							 | 
						|
								      returnType = "float",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "GetMusicTimePlayed",
							 | 
						|
								      description = "Get current music time played (in seconds)",
							 | 
						|
								      returnType = "float",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "Music", name = "music"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "LoadAudioStream",
							 | 
						|
								      description = "Load audio stream (to stream raw audio pcm data)",
							 | 
						|
								      returnType = "AudioStream",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "unsigned int", name = "sampleRate"},
							 | 
						|
								        {type = "unsigned int", name = "sampleSize"},
							 | 
						|
								        {type = "unsigned int", name = "channels"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsAudioStreamValid",
							 | 
						|
								      description = "Checks if an audio stream is valid (buffers initialized)",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UnloadAudioStream",
							 | 
						|
								      description = "Unload audio stream and free memory",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "UpdateAudioStream",
							 | 
						|
								      description = "Update audio stream buffers with data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "const void *", name = "data"},
							 | 
						|
								        {type = "int", name = "frameCount"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsAudioStreamProcessed",
							 | 
						|
								      description = "Check if any audio stream buffers requires refill",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PlayAudioStream",
							 | 
						|
								      description = "Play audio stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "PauseAudioStream",
							 | 
						|
								      description = "Pause audio stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "ResumeAudioStream",
							 | 
						|
								      description = "Resume audio stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "IsAudioStreamPlaying",
							 | 
						|
								      description = "Check if audio stream is playing",
							 | 
						|
								      returnType = "bool",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "StopAudioStream",
							 | 
						|
								      description = "Stop audio stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAudioStreamVolume",
							 | 
						|
								      description = "Set volume for audio stream (1.0 is max level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "float", name = "volume"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAudioStreamPitch",
							 | 
						|
								      description = "Set pitch for audio stream (1.0 is base level)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "float", name = "pitch"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAudioStreamPan",
							 | 
						|
								      description = "Set pan for audio stream (0.5 is centered)",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "float", name = "pan"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAudioStreamBufferSizeDefault",
							 | 
						|
								      description = "Default size for new audio streams",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "int", name = "size"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "SetAudioStreamCallback",
							 | 
						|
								      description = "Audio thread callback to request new data",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "AudioCallback", name = "callback"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AttachAudioStreamProcessor",
							 | 
						|
								      description = "Attach audio stream processor to stream, receives the samples as 'float'",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "AudioCallback", name = "processor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DetachAudioStreamProcessor",
							 | 
						|
								      description = "Detach audio stream processor from stream",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioStream", name = "stream"},
							 | 
						|
								        {type = "AudioCallback", name = "processor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "AttachAudioMixedProcessor",
							 | 
						|
								      description = "Attach audio stream processor to the entire audio pipeline, receives the samples as 'float'",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioCallback", name = "processor"}
							 | 
						|
								      }
							 | 
						|
								    },
							 | 
						|
								    {
							 | 
						|
								      name = "DetachAudioMixedProcessor",
							 | 
						|
								      description = "Detach audio stream processor from the entire audio pipeline",
							 | 
						|
								      returnType = "void",
							 | 
						|
								      params = {
							 | 
						|
								        {type = "AudioCallback", name = "processor"}
							 | 
						|
								      }
							 | 
						|
								    }
							 | 
						|
								  }
							 | 
						|
								}
							 |