@orbit/jsonapi
Version:
JSON:API support for Orbit.
21 lines (20 loc) • 1.46 kB
TypeScript
import { InitializedRecord } from '@orbit/records';
import { Resource, ResourceDocument } from '../resource-document';
import { RecordDocument } from '../record-document';
import { JSONAPIBaseSerializer } from './jsonapi-base-serializer';
export interface JSONAPIDocumentDeserializationOptions {
primaryRecord?: InitializedRecord;
primaryRecords?: InitializedRecord[];
}
export declare class JSONAPIDocumentSerializer extends JSONAPIBaseSerializer<RecordDocument, ResourceDocument, unknown, JSONAPIDocumentDeserializationOptions> {
serialize(document: RecordDocument): ResourceDocument;
deserialize(resDocument: ResourceDocument, customOptions?: JSONAPIDocumentDeserializationOptions): RecordDocument;
protected serializeRecords(records: InitializedRecord[]): Resource[];
protected serializeRecord(record: InitializedRecord): Resource;
protected serializeLinks(document: RecordDocument, resDocument: ResourceDocument): void;
protected serializeMeta(document: RecordDocument, resDocument: ResourceDocument): void;
protected deserializeResources(resources: Resource[], primaryRecords?: InitializedRecord[]): InitializedRecord[];
protected deserializeResource(resource: Resource, primaryRecord?: InitializedRecord): InitializedRecord;
protected deserializeLinks(resDocument: ResourceDocument, document: RecordDocument): void;
protected deserializeMeta(resDocument: ResourceDocument, document: RecordDocument): void;
}