type UniformType =
| | "bool" | "vec2<bool>" | "vec3<bool>" | "vec4<bool>" | "u32" | "vec2<u32>" | "vec3<u32>" | "vec4<u32>" | "i32" | "vec2<i32>" | "vec3<i32>" | "vec4<i32>" | "f16" | "vec2<f16>" | "vec3<f16>" | "vec4<f16>" | "f32" | "vec2<f32>" | "vec3<f32>" | "vec4<f32>" | "f64" | "vec2<f64>" | "vec3<f64>" | "vec4<f64>" | "mat2x2<u32>" | "mat3x2<u32>" | "mat2x3<u32>" | "mat2x4<u32>" | "mat4x2<u32>" | "mat3x3<u32>" | "mat3x4<u32>" | "mat4x3<u32>" | "mat4x4<u32>" | "mat2x2<i32>" | "mat3x2<i32>" | "mat2x3<i32>" | "mat2x4<i32>" | "mat4x2<i32>" | "mat3x3<i32>" | "mat3x4<i32>" | "mat4x3<i32>" | "mat4x4<i32>" | "mat2x2<f16>" | "mat3x2<f16>" | "mat2x3<f16>" | "mat2x4<f16>" | "mat4x2<f16>" | "mat3x3<f16>" | "mat3x4<f16>" | "mat4x3<f16>" | "mat4x4<f16>" | "mat2x2<f32>" | "mat3x2<f32>" | "mat2x3<f32>" | "mat2x4<f32>" | "mat4x2<f32>" | "mat3x3<f32>" | "mat3x4<f32>" | "mat4x3<f32>" | "mat4x4<f32>" | "mat2x2<f64>" | "mat3x2<f64>" | "mat2x3<f64>" | "mat2x4<f64>" | "mat4x2<f64>" | "mat3x3<f64>" | "mat3x4<f64>" | "mat4x3<f64>" | "mat4x4<f64>" | "atomic<u32>" | "atomic<i32>" | "u8" | "i8" | "u16" | "i16" | "vec2<u8>" | "vec2<i8>" | "vec2<u16>" | "vec2<i16>" | "vec3<u8>" | "vec3<i8>" | "vec3<u16>" | "vec3<i16>" | "vec4<u8>" | "vec4<i8>" | "vec4<u16>" | "vec4<i16>" | "vec3to4<u8>" | "vec3to4<i8>" | "vec3to4<u16>" | "vec3to4<i16>" | "vec3to4<u32>" | "vec3to4<i32>" | "vec3to4<f32>"
| | "array<bool>" | "array<vec2<bool>>" | "array<vec3<bool>>" | "array<vec4<bool>>" | "array<u32>" | "array<vec2<u32>>" | "array<vec3<u32>>" | "array<vec4<u32>>" | "array<i32>" | "array<vec2<i32>>" | "array<vec3<i32>>" | "array<vec4<i32>>" | "array<f16>" | "array<vec2<f16>>" | "array<vec3<f16>>" | "array<vec4<f16>>" | "array<f32>" | "array<vec2<f32>>" | "array<vec3<f32>>" | "array<vec4<f32>>" | "array<f64>" | "array<vec2<f64>>" | "array<vec3<f64>>" | "array<vec4<f64>>" | "array<mat2x2<u32>>" | "array<mat3x2<u32>>" | "array<mat2x3<u32>>" | "array<mat2x4<u32>>" | "array<mat4x2<u32>>" | "array<mat3x3<u32>>" | "array<mat3x4<u32>>" | "array<mat4x3<u32>>" | "array<mat4x4<u32>>" | "array<mat2x2<i32>>" | "array<mat3x2<i32>>" | "array<mat2x3<i32>>" | "array<mat2x4<i32>>" | "array<mat4x2<i32>>" | "array<mat3x3<i32>>" | "array<mat3x4<i32>>" | "array<mat4x3<i32>>" | "array<mat4x4<i32>>" | "array<mat2x2<f16>>" | "array<mat3x2<f16>>" | "array<mat2x3<f16>>" | "array<mat2x4<f16>>" | "array<mat4x2<f16>>" | "array<mat3x3<f16>>" | "array<mat3x4<f16>>" | "array<mat4x3<f16>>" | "array<mat4x4<f16>>" | "array<mat2x2<f32>>" | "array<mat3x2<f32>>" | "array<mat2x3<f32>>" | "array<mat2x4<f32>>" | "array<mat4x2<f32>>" | "array<mat3x3<f32>>" | "array<mat3x4<f32>>" | "array<mat4x3<f32>>" | "array<mat4x4<f32>>" | "array<mat2x2<f64>>" | "array<mat3x2<f64>>" | "array<mat2x3<f64>>" | "array<mat2x4<f64>>" | "array<mat4x2<f64>>" | "array<mat3x3<f64>>" | "array<mat3x4<f64>>" | "array<mat4x3<f64>>" | "array<mat4x4<f64>>" | "array<atomic<u32>>" | "array<atomic<i32>>" | "array<u8>" | "array<i8>" | "array<u16>" | "array<i16>" | "array<vec2<u8>>" | "array<vec2<i8>>" | "array<vec2<u16>>" | "array<vec2<i16>>" | "array<vec3<u8>>" | "array<vec3<i8>>" | "array<vec3<u16>>" | "array<vec3<i16>>" | "array<vec4<u8>>" | "array<vec4<i8>>" | "array<vec4<u16>>" | "array<vec4<i16>>" | "array<vec3to4<u8>>" | "array<vec3to4<i8>>" | "array<vec3to4<u16>>" | "array<vec3to4<i16>>" | "array<vec3to4<u32>>" | "array<vec3to4<i32>>" | "array<vec3to4<f32>>"
| | "array<array<bool>>" | "array<array<vec2<bool>>>" | "array<array<vec3<bool>>>" | "array<array<vec4<bool>>>" | "array<array<u32>>" | "array<array<vec2<u32>>>" | "array<array<vec3<u32>>>" | "array<array<vec4<u32>>>" | "array<array<i32>>" | "array<array<vec2<i32>>>" | "array<array<vec3<i32>>>" | "array<array<vec4<i32>>>" | "array<array<f16>>" | "array<array<vec2<f16>>>" | "array<array<vec3<f16>>>" | "array<array<vec4<f16>>>" | "array<array<f32>>" | "array<array<vec2<f32>>>" | "array<array<vec3<f32>>>" | "array<array<vec4<f32>>>" | "array<array<f64>>" | "array<array<vec2<f64>>>" | "array<array<vec3<f64>>>" | "array<array<vec4<f64>>>" | "array<array<mat2x2<u32>>>" | "array<array<mat3x2<u32>>>" | "array<array<mat2x3<u32>>>" | "array<array<mat2x4<u32>>>" | "array<array<mat4x2<u32>>>" | "array<array<mat3x3<u32>>>" | "array<array<mat3x4<u32>>>" | "array<array<mat4x3<u32>>>" | "array<array<mat4x4<u32>>>" | "array<array<mat2x2<i32>>>" | "array<array<mat3x2<i32>>>" | "array<array<mat2x3<i32>>>" | "array<array<mat2x4<i32>>>" | "array<array<mat4x2<i32>>>" | "array<array<mat3x3<i32>>>" | "array<array<mat3x4<i32>>>" | "array<array<mat4x3<i32>>>" | "array<array<mat4x4<i32>>>" | "array<array<mat2x2<f16>>>" | "array<array<mat3x2<f16>>>" | "array<array<mat2x3<f16>>>" | "array<array<mat2x4<f16>>>" | "array<array<mat4x2<f16>>>" | "array<array<mat3x3<f16>>>" | "array<array<mat3x4<f16>>>" | "array<array<mat4x3<f16>>>" | "array<array<mat4x4<f16>>>" | "array<array<mat2x2<f32>>>" | "array<array<mat3x2<f32>>>" | "array<array<mat2x3<f32>>>" | "array<array<mat2x4<f32>>>" | "array<array<mat4x2<f32>>>" | "array<array<mat3x3<f32>>>" | "array<array<mat3x4<f32>>>" | "array<array<mat4x3<f32>>>" | "array<array<mat4x4<f32>>>" | "array<array<mat2x2<f64>>>" | "array<array<mat3x2<f64>>>" | "array<array<mat2x3<f64>>>" | "array<array<mat2x4<f64>>>" | "array<array<mat4x2<f64>>>" | "array<array<mat3x3<f64>>>" | "array<array<mat3x4<f64>>>" | "array<array<mat4x3<f64>>>" | "array<array<mat4x4<f64>>>" | "array<array<atomic<u32>>>" | "array<array<atomic<i32>>>" | "array<array<u8>>" | "array<array<i8>>" | "array<array<u16>>" | "array<array<i16>>" | "array<array<vec2<u8>>>" | "array<array<vec2<i8>>>" | "array<array<vec2<u16>>>" | "array<array<vec2<i16>>>" | "array<array<vec3<u8>>>" | "array<array<vec3<i8>>>" | "array<array<vec3<u16>>>" | "array<array<vec3<i16>>>" | "array<array<vec4<u8>>>" | "array<array<vec4<i8>>>" | "array<array<vec4<u16>>>" | "array<array<vec4<i16>>>" | "array<array<vec3to4<u8>>>" | "array<array<vec3to4<i8>>>" | "array<array<vec3to4<u16>>>" | "array<array<vec3to4<i16>>>" | "array<array<vec3to4<u32>>>" | "array<array<vec3to4<i32>>>" | "array<array<vec3to4<f32>>>"
| | "array<array<array<bool>>>" | "array<array<array<vec2<bool>>>>" | "array<array<array<vec3<bool>>>>" | "array<array<array<vec4<bool>>>>" | "array<array<array<u32>>>" | "array<array<array<vec2<u32>>>>" | "array<array<array<vec3<u32>>>>" | "array<array<array<vec4<u32>>>>" | "array<array<array<i32>>>" | "array<array<array<vec2<i32>>>>" | "array<array<array<vec3<i32>>>>" | "array<array<array<vec4<i32>>>>" | "array<array<array<f16>>>" | "array<array<array<vec2<f16>>>>" | "array<array<array<vec3<f16>>>>" | "array<array<array<vec4<f16>>>>" | "array<array<array<f32>>>" | "array<array<array<vec2<f32>>>>" | "array<array<array<vec3<f32>>>>" | "array<array<array<vec4<f32>>>>" | "array<array<array<f64>>>" | "array<array<array<vec2<f64>>>>" | "array<array<array<vec3<f64>>>>" | "array<array<array<vec4<f64>>>>" | "array<array<array<mat2x2<u32>>>>" | "array<array<array<mat3x2<u32>>>>" | "array<array<array<mat2x3<u32>>>>" | "array<array<array<mat2x4<u32>>>>" | "array<array<array<mat4x2<u32>>>>" | "array<array<array<mat3x3<u32>>>>" | "array<array<array<mat3x4<u32>>>>" | "array<array<array<mat4x3<u32>>>>" | "array<array<array<mat4x4<u32>>>>" | "array<array<array<mat2x2<i32>>>>" | "array<array<array<mat3x2<i32>>>>" | "array<array<array<mat2x3<i32>>>>" | "array<array<array<mat2x4<i32>>>>" | "array<array<array<mat4x2<i32>>>>" | "array<array<array<mat3x3<i32>>>>" | "array<array<array<mat3x4<i32>>>>" | "array<array<array<mat4x3<i32>>>>" | "array<array<array<mat4x4<i32>>>>" | "array<array<array<mat2x2<f16>>>>" | "array<array<array<mat3x2<f16>>>>" | "array<array<array<mat2x3<f16>>>>" | "array<array<array<mat2x4<f16>>>>" | "array<array<array<mat4x2<f16>>>>" | "array<array<array<mat3x3<f16>>>>" | "array<array<array<mat3x4<f16>>>>" | "array<array<array<mat4x3<f16>>>>" | "array<array<array<mat4x4<f16>>>>" | "array<array<array<mat2x2<f32>>>>" | "array<array<array<mat3x2<f32>>>>" | "array<array<array<mat2x3<f32>>>>" | "array<array<array<mat2x4<f32>>>>" | "array<array<array<mat4x2<f32>>>>" | "array<array<array<mat3x3<f32>>>>" | "array<array<array<mat3x4<f32>>>>" | "array<array<array<mat4x3<f32>>>>" | "array<array<array<mat4x4<f32>>>>" | "array<array<array<mat2x2<f64>>>>" | "array<array<array<mat3x2<f64>>>>" | "array<array<array<mat2x3<f64>>>>" | "array<array<array<mat2x4<f64>>>>" | "array<array<array<mat4x2<f64>>>>" | "array<array<array<mat3x3<f64>>>>" | "array<array<array<mat3x4<f64>>>>" | "array<array<array<mat4x3<f64>>>>" | "array<array<array<mat4x4<f64>>>>" | "array<array<array<atomic<u32>>>>" | "array<array<array<atomic<i32>>>>" | "array<array<array<u8>>>" | "array<array<array<i8>>>" | "array<array<array<u16>>>" | "array<array<array<i16>>>" | "array<array<array<vec2<u8>>>>" | "array<array<array<vec2<i8>>>>" | "array<array<array<vec2<u16>>>>" | "array<array<array<vec2<i16>>>>" | "array<array<array<vec3<u8>>>>" | "array<array<array<vec3<i8>>>>" | "array<array<array<vec3<u16>>>>" | "array<array<array<vec3<i16>>>>" | "array<array<array<vec4<u8>>>>" | "array<array<array<vec4<i8>>>>" | "array<array<array<vec4<u16>>>>" | "array<array<array<vec4<i16>>>>" | "array<array<array<vec3to4<u8>>>>" | "array<array<array<vec3to4<i8>>>>" | "array<array<array<vec3to4<u16>>>>" | "array<array<array<vec3to4<i16>>>>" | "array<array<array<vec3to4<u32>>>>" | "array<array<array<vec3to4<i32>>>>" | "array<array<array<vec3to4<f32>>>>"
packages / core / src / types.ts