UNPKG

jsona

Version:

Provide data formatters (data model builder & json builder) to work with JSON API specification v1.0 in your JavaScript / TypeScript code

21 lines (20 loc) 1.25 kB
import { IJsonaModelBuilder, IJsonPropertiesMapper, TJsonaModel, TJsonaRelationships, TReduxObject, TJsonApiRelationships, TJsonApiRelationshipData } from '../JsonaTypes'; declare class ReduxObjectDenormalizer implements IJsonaModelBuilder { protected propertiesMapper: IJsonPropertiesMapper; protected reduxObject: TReduxObject; protected entityType: string; protected ids?: string | Array<string>; protected returnBuilderInRelations: boolean; protected cachedModels: {}; constructor(propertiesMapper: any); setPropertiesMapper(propertiesMapper: IJsonPropertiesMapper): void; setReduxObject(reduxObject: TReduxObject): void; setEntityType(entityType: string): void; setEntityIds(ids: string | Array<string>): void; setReturnBuilderInRelations(returnBuilderInRelations: boolean): void; build(): null | TJsonaModel | Array<TJsonaModel>; buildModel(type: string, id: string | number): null | TJsonaModel; buildRelationships(model: TJsonaModel, reduxObjectRelationships: TJsonApiRelationships): null | TJsonaRelationships; buildRelationModels(data: TJsonApiRelationshipData | Array<TJsonApiRelationshipData>): null | TJsonaModel | Array<TJsonaModel>; } export default ReduxObjectDenormalizer;