53 declaration for types

https://github.com/kfgodel/diamond/issues/33
https://github.com/kfgodel/diamond/issues/53