# Type --- ## Object Definitions ```c typedef enum : uint8_t { // ... } kpl_type_template; typedef enum { CONST = 1 << 0, EMPTY = 1 << 1, REF = 1 << 2, SHARED = 1 << 3 } kpl_type_qualifiers; typedef union { // 96 Bytes Max } kpl_type_body; typedef struct { kpl_type_template template; uint8_t qualifiers; uint16_t modifiers; kpl_ptr self; uint32_t token_position, token_length; int32_t id; _Atomic int32_t ref_count; kpl_namespace_module *module; kpl_type_body body; } kpl_type; // TODO SLAB WITH POOL ```