Column Types for model annotations

I was wondering if someone can explain how are model @column type annotations mapped to meta-data column types.

for example in doucmentation at Annotation Strategy it states that there are 4 column types (string, integer, decimal, boolean). But how does that map to manual meta-data or database data types in general. You can see in docs for manual meta-data : Manual meta-data that there is support for all different kind of data types from 'Column' class but it seems that support does not seem to extend to annotations ??

For example how does string map to correct string like type in database like , 'varchar' and 'text'? and what if I specifically want property of certain type like 'text'.

Also is it possible to extend Model annotation strategy with my own ?

Thanks