@rest-api/react-models
Version:
[](https://www.npmjs.com/package/@rest-api/react-models) [](https://codecov.io/gh/hector7/rest-
21 lines (20 loc) • 1.42 kB
TypeScript
import { Schema, StringOrNumberKeys } from '../models/Schema';
import BasicIdRestModel from '../models/restmodels/basic/BasicIdRestModel';
import { UrlCallbackParam } from '../models/restmodels';
import { ReducerType, RestApiReducerType } from '../models/ReducerStorage';
export default class BasicSearchReducer<S extends Schema<any>, IdKey extends StringOrNumberKeys<S['RealType']> & StringOrNumberKeys<S['PopulatedType']> & string, MetaData> {
readonly restModel: BasicIdRestModel<S, IdKey>;
private url;
constructor(restModel: BasicIdRestModel<S, IdKey>, url: UrlCallbackParam<{}>);
getReducer(state: ReducerType): RestApiReducerType<S['RealType'], MetaData, IdKey>;
private getUrl;
get(state: ReducerType, queryString?: string): NonNullable<S["RealType"]>[];
get getById(): (state: ReducerType, id: S["RealType"][IdKey]) => S["RealType"] | null;
getPopulated(state: ReducerType, queryString?: string): NonNullable<S["PopulatedType"]>[];
isPopulated(state: ReducerType, queryString?: string): boolean;
isInitialized(state: ReducerType, queryString?: string): boolean;
getError(state: ReducerType, queryString?: string): import("../..").HttpError | null;
isFetching(state: ReducerType, queryString?: string): boolean;
isInvalidated(state: ReducerType, queryString?: string): boolean;
getMetadata(state: ReducerType, queryString?: string): MetaData | null;
}