import { DataDocument } from '../interfaces/json-api.interface'; import { SerializerOptions } from '../interfaces/serializer.interface'; import ResourceIdentifier from '../models/resource-identifier.model'; import Resource from '../models/resource.model'; import { Dictionary, nullish, SingleOrArray } from '../types/global.types'; import { Helpers } from '../utils/serializer.utils'; import Relator from './relator'; import Serializer from './serializer'; export default class PolymorphicSerializer> extends Serializer { private serialisers; private key; constructor(commonName: string, key: keyof PrimaryType, serializers: Record); constructor(commonName: string, key: keyof PrimaryType, serializers: Record Serializer>); serialize(data: SingleOrArray | nullish, options?: Partial>): Promise>>; createIdentifier(data: PrimaryType, options?: SerializerOptions): ResourceIdentifier; createResource(data: PrimaryType, options?: Partial>, helpers?: Helpers, relatorDataCache?: Map, Dictionary[]>): Promise>; private serializeType; private getSerializerForData; } //# sourceMappingURL=polymorphic-serialiser.d.ts.map