Is PromiseObject no longer available?

PromiseObject used to be available via:

import DS from 'ember-data'
const { PromiseObject } = DS

Now, the PromiseObject Class is still mentioned here:, as if it’s now available under @ember-data/store, but that is not the case.

So my question is, how do I access it via the new @ember-data import syntax or has the Class been deprecated? And if so, is there an equivalent via some addon?

I can still access it via import { PromiseObject } from '@ember-data/store/-private'; but this feels hacky and ureliable.


According to the Ember Data devs this was intentional. It is no longer being exposed because there are better options available.

these classes were intentionally given no import syntax of their own. Either use them via the DS namespace (which will eventually be deprecated) or create them within your app if still required.

That said, better patterns exist using async/await, generators, ember-concurrency, and tracked that do not require you to wrap async values in this way for templates.