defproptype macro and some of the prop types are implemented with it