import { Serializer, Serialized, SerializerConfig } from './Serializer'; import { SerializerConstructor } from './SerializerContainer'; import { Renderable } from '../dom'; import { ConfigureableType } from '../common'; import { ConfiguredSerializer } from './ConfiguredSerializer'; export interface GenericSerializerConfig extends SerializerConfig { name: string; type: ConfigureableType; } /** * A serializer that can be used for renderables that don't container * any special logic or configuration. * @export * @class GenericSerializer * @implements {Serializer} * @template R The renderable type. */ export declare class GenericSerializer extends Serializer { protected config: GenericSerializerConfig; initialize(): void; /** * Serializes the renderable. * @param {R} node * @returns {Serialized} */ serialize(node: R): Serialized; /** * Deserializes the node. * @param {Serialized} node * @returns {RenderableArg} */ deserialize(node: Serialized): any; static configure(config: GenericSerializerConfig): ConfiguredSerializer>, GenericSerializerConfig>; }