object
  method branch : 'env -> TypeCore.branch -> TypeCore.branch
  method data_type_group :
    'env -> TypeCore.data_type_group -> TypeCore.data_type_group
  method extend : 'env -> Kind.kind -> 'env
  method field : 'env -> TypeCore.data_field_def -> TypeCore.data_field_def
  method normalize : 'env -> typ -> typ
  method resolved_datacon :
    'env -> TypeCore.resolved_datacon -> TypeCore.resolved_datacon
  method tyanchoredpermission :
    'env -> TypeCore.typ -> TypeCore.typ -> TypeCore.typ
  method tyand :
    'env -> TypeCore.mode_constraint -> TypeCore.typ -> TypeCore.typ
  method tyapp : 'env -> TypeCore.typ -> TypeCore.typ list -> TypeCore.typ
  method tyarrow : 'env -> TypeCore.typ -> TypeCore.typ -> TypeCore.typ
  method tybar : 'env -> TypeCore.typ -> TypeCore.typ -> TypeCore.typ
  method tybound : 'env -> TypeCore.db_index -> TypeCore.typ
  method tyconcrete : 'env -> TypeCore.branch -> TypeCore.typ
  method tydynamic : 'env -> TypeCore.typ
  method tyempty : 'env -> TypeCore.typ
  method tyopen : 'env -> TypeCore.var -> TypeCore.typ
  method tyq :
    'env ->
    TypeCore.quantifier ->
    TypeCore.type_binding -> TypeCore.flavor -> TypeCore.typ -> TypeCore.typ
  method tysingleton : 'env -> TypeCore.typ -> TypeCore.typ
  method tystar : 'env -> TypeCore.typ -> TypeCore.typ -> TypeCore.typ
  method tytuple : 'env -> TypeCore.typ list -> TypeCore.typ
  method tyunknown : 'env -> TypeCore.typ
  method visit : 'env -> typ -> TypeCore.typ
end