> The model instance method might not be the best place though because we have to deal with the ids without instances in some cases

If you have the data you should just convert the data into the actual instance to avoid v8 de-optimizations (no way to get at the hidden class).

If you don't have the data you are only going to want the name of the id property. IMO that should be available from a static method as well.

I guess my bias is to never pass around a string since it will only ever be useful as the actual type. The string name should be converted into the actual type reference as soon as possible. We should reduce the number of APIs that take a name and instead require the actual type.

Then we can do something like:

`MyModelType.getIdProperty()`