All types should use text or equivalent type for storing the data. So TEXT NOT NULL is the general type.
But if your data is short, or you want to tell MySQL to index the field (e.g., making the field a key), then you should use VARCHAR(length) NOT NULL. MySQL can't index a text field without knowing its max length.