import Model from "@ember-data/model";
import { MinimumAdapterInterface, normalize, pushPayload, serializeRecord, serializerFor } from "@ember-data/legacy-compat";
import BaseStore from "@ember-data/store";
import { FetchManager } from "@ember-data/legacy-compat/-private";
import { CacheCapabilitiesManager, ModelSchema, SchemaService } from "@ember-data/store/types";
import { ResourceKey } from "@warp-drive/core-types";
import { Cache } from "@warp-drive/core-types/cache";
import { TypeFromInstance } from "@warp-drive/core-types/record";
//#region src/store.d.ts
declare class Store extends BaseStore {
  _fetchManager: FetchManager;
  constructor(args?: Record<string, unknown>);
  createSchemaService(): SchemaService;
  createCache(storeWrapper: CacheCapabilitiesManager): Cache;
  instantiateRecord(key: ResourceKey, createRecordArgs: Record<string, unknown>): Model;
  teardownRecord(record: unknown): void;
  modelFor<T>(type: TypeFromInstance<T>): ModelSchema<T>;
  modelFor(type: string): ModelSchema;
  adapterFor(this: Store, modelName: string): MinimumAdapterInterface;
  adapterFor(this: Store, modelName: string, _allowMissing: true): MinimumAdapterInterface | undefined;
  serializerFor: (...args: Parameters<typeof serializerFor>) => ReturnType<typeof serializerFor>;
  pushPayload: (...args: Parameters<typeof pushPayload>) => ReturnType<typeof pushPayload>;
  normalize: (...args: Parameters<typeof normalize>) => ReturnType<typeof normalize>;
  serializeRecord: (...args: Parameters<typeof serializeRecord>) => ReturnType<typeof serializeRecord>;
  destroy(): void;
}
//#endregion
export { Store as t };
//# sourceMappingURL=store-D_zJZti4.d.ts.map