As Scott mentioned in a comment, indeed the basetype is there to represent the actual base type (Q, A or C). The type might be set to other values like Q_HIDDEN, A_HIDDEN or C_HIDDEN. There might be other values too but those are at least confirmed.
In short, if you need to find out the type (Q, A or C) of a post then you should check the basetype field.
Just to add more noise to this issue, there is a 'hidden' field that can also take 1 or 0 depending of the post visibility.