import ArrayProxy from '@ember/array/proxy';
import { deprecate } from '@ember/debug';
import PromiseProxyMixin from '@ember/object/promise-proxy-mixin';
import ObjectProxy from '@ember/object/proxy';
export { default as Store } from '../store.js';
export { DS } from './core.js';
export { Errors, PromiseManyArray } from '@ember-data/model/-private';
export { Snapshot, SnapshotRecordArray } from '@ember-data/legacy-compat/-private';
export { RecordArrayManager, coerceId } from '@ember-data/store/-private';

// public
deprecate('Importing from `ember-data/-private` is deprecated without replacement.', false, {
  id: 'ember-data:deprecate-legacy-imports',
  for: 'ember-data',
  until: '6.0',
  since: {
    enabled: '5.2',
    available: '4.13'
  }
});
const PromiseArray = ArrayProxy.extend(PromiseProxyMixin);
const PromiseObject = ObjectProxy.extend(PromiseProxyMixin);

export { PromiseArray, PromiseObject };
