A type is:
A type is a general concept, so it is not an integer, or an implementation, or a variable.
A type has values. An ADT is a collection of actions on an object (a type).