what's type used for?