Cleaning up property public API and usage of typedefs