UNPKG

@orbit/jsonapi

Version:

JSON:API support for Orbit.

25 lines (24 loc) 1.28 kB
import { InitializedRecord, RecordSchema, RecordKeyMap } from '@orbit/records'; import { Dict } from '@orbit/utils'; import { Resource } from '../resource-document'; import { JSONAPIBaseSerializer } from './jsonapi-base-serializer'; import { SerializerForFn } from '@orbit/serializers'; export interface JSONAPIResourceIdentityDeserializationOptions { primaryRecord?: InitializedRecord; includeKeys?: boolean; } export interface JSONAPIResourceIdentitySerializerSettings { serializerFor: SerializerForFn; deserializationOptions?: JSONAPIResourceIdentityDeserializationOptions; schema: RecordSchema; keyMap?: RecordKeyMap; getResourceKey?: (recordType: string) => string; } export declare class JSONAPIResourceIdentitySerializer extends JSONAPIBaseSerializer<InitializedRecord, Resource, unknown, JSONAPIResourceIdentityDeserializationOptions> { protected _resourceKeys: Dict<string>; protected _getCustomResourceKey?: (recordType: string) => string; getResourceKey(type: string): string; constructor(settings: JSONAPIResourceIdentitySerializerSettings); serialize(recordIdentity: InitializedRecord): Resource; deserialize(resource: Resource, customOptions?: JSONAPIResourceIdentityDeserializationOptions): InitializedRecord; }