How to make a new field type visible to the Rules module?
Just add the property_type key to the array you already have, like so:

'property_type' =&gt; 'text',


With that added line, the Entity API knows how to handle that field.

For a more complex field, such as fields with more than one database column, it is not enough to simply declare the property type. You need to specify further callbacks that may alter the generated property info. To do so, you need to use the key property_callbacks to add a custom callback function that will provide the extra metadata required. For example:

'property_type' =&gt; 'field_example_rgb',
'property_callbacks' =&gt; array('field_example_rgb_property_info_callback'),


Source:
Describe field properties to make custom fields work with Entity Metadata Wrappers, which includes some more info about this topic also.