UNPKG

ts-japi

Version:

A highly-modular (typescript-friendly)-framework agnostic library for serializing data to the JSON:API specification

28 lines 1.14 kB
import JapiError from '../models/error.model'; import Link from '../models/link.model'; import Meta from '../models/meta.model'; import ResourceIdentifier from '../models/resource-identifier.model'; import Resource from '../models/resource.model'; import { Dictionary, SingleOrArray, nullish } from '../types/global.types'; import { PaginationOf } from './paginator.interface'; export interface DataDocument<PrimaryType extends Dictionary<any>> extends Partial<MetaDocument> { links?: Dictionary<Link | nullish> | PaginationOf<Link>; included?: Resource[]; data: PrimaryData<PrimaryType>; } export interface ErrorDocument extends Partial<MetaDocument> { errors: JapiError[]; } export interface JSONAPIObject { version?: string; meta?: Meta; } export interface MetaDocument extends BaseDocument { meta: Meta; } export interface BaseDocument { jsonapi?: JSONAPIObject; } export declare type PrimaryData<T> = SingleOrArray<ResourceIdentifier> | SingleOrArray<Resource<T>> | null; export declare type ResourceLinkage = SingleOrArray<ResourceIdentifier> | null; //# sourceMappingURL=json-api.interface.d.ts.map