import { Loadable, LoadSpec, LoadSpecConfig, LoadSupport, PlainObject, TaskObserver } from '@xh/hoist/core'; import { Store, StoreConfig } from './Store'; export interface UrlStoreConfig extends StoreConfig { /** URL from which to load data. */ url: string; /** Property name (key) of the object returned by URL from which to extract record data. */ dataRoot?: string; } /** * A store with built-in support for loading data from a URL. */ export declare class UrlStore extends Store implements Loadable { url: string; dataRoot: string; loadSupport: LoadSupport; constructor({ url, dataRoot, ...storeConfig }: UrlStoreConfig); get loadObserver(): TaskObserver; get lastLoadRequested(): Date; get lastLoadCompleted(): Date; get lastLoadException(): any; refreshAsync(meta?: PlainObject): Promise; autoRefreshAsync(meta?: PlainObject): Promise; loadAsync(loadSpec?: LoadSpecConfig): Promise; /** @internal - call loadAsync() instead. */ doLoadAsync(loadSpec: LoadSpec): Promise; }