UNPKG

884 BTypeScriptView Raw
1import { Reflection, Type } from '../models';
2import { AbstractComponent } from '../utils';
3import { Serializer } from './serializer';
4export declare abstract class SerializerComponent<T> extends AbstractComponent<Serializer> {
5 static PRIORITY: number;
6 abstract serializeGroup(instance: unknown): boolean;
7 abstract serializeGroupSymbol: any;
8 readonly priority: number;
9 abstract supports(item: unknown): boolean;
10 abstract toObject(item: T, obj?: any): any;
11}
12export declare abstract class ReflectionSerializerComponent<T extends Reflection> extends SerializerComponent<T> {
13 serializeGroup(instance: unknown): boolean;
14 serializeGroupSymbol: typeof Reflection;
15}
16export declare abstract class TypeSerializerComponent<T extends Type> extends SerializerComponent<T> {
17 serializeGroup(instance: unknown): boolean;
18 serializeGroupSymbol: typeof Type;
19}