UNPKG

json-api-nestjs

Version:
22 lines (21 loc) 1.31 kB
import { Attributes, DataResult, EntityRelation, Include, Relationships, ResourceData, ResourceObject } from '../../../utils/nestjs-shared'; import { ObjectLiteral } from '../../../types'; import { ZodEntityProps } from '../types'; import { Query, QueryOne } from '../zod'; export declare class JsonApiTransformerService<E extends ObjectLiteral> { private applicationConfig; private entityMapProps; private currentEntity; private _urlPath; private _currentMapProps; get currentMapProps(): ZodEntityProps<E>; get urlPath(): string[]; transformData(data: E, query: QueryOne<E>): Pick<ResourceObject<E>, 'data' | 'included'>; transformData(data: E[], query: Query<E>): Pick<ResourceObject<E, 'array'>, 'data' | 'included'>; transformItem<T extends ObjectLiteral = E>(item: T, mapProps: ZodEntityProps<T>, query: Query<T>): ResourceData<T>; transformRel<Rel extends EntityRelation<E>>(item: E, rel: Rel): DataResult<E[Rel], Rel>; transformRelationships<T extends ObjectLiteral = E>(item: T, mapProps: ZodEntityProps<T>, query: Query<T>): Relationships<T>; extractAttributes<T extends ObjectLiteral = E>(item: T, fields: (keyof T)[]): Attributes<T>; extractIncluded<T extends ObjectLiteral = E>(data: T[], query: Query<E>): Include<T>[]; private getLink; }