documentation on types