import { IDatasourceParams, IDatasourceConstructed, DatasourceGet, Settings, DevSettings, IAdapter, IAdapterConfig } from '../interfaces/index';
export declare class DatasourceGeneric<Data> implements IDatasourceConstructed<Data> {
  get: DatasourceGet<Data>;
  settings?: Settings<Data>;
  devSettings?: DevSettings;
  adapter: IAdapter<Data>;
  constructor(datasource: IDatasourceParams<Data>, config?: IAdapterConfig);
  dispose(): void;
}
export declare const makeDatasource: <DSClassType = typeof DatasourceGeneric>(getConfig?: () => IAdapterConfig) => DSClassType;
export declare const Datasource: typeof DatasourceGeneric;
