import TASONTypeRegistry from "./TASONTypeRegistry"; import { TASONSerializerOptions, TASONSerializerOptionsInit } from "./TASONSerializerOptions"; export default class TASONSerializer { readonly registry: TASONTypeRegistry; readonly options: Required; private readonly visitor; constructor(options?: TASONSerializerOptionsInit); /** 将TASON字面量字符串反序列化为对应的值 */ parse(text: string): T; /** * 指定类型反序列化(对齐 C# Deserialize<T> 子集;多实现解析)。 * `expected` 为构造函数,或已注册 TypeName 字符串。 * 根值须为 TypeInstance;按期望 ctor / TypeName 选型,无匹配则抛错。 */ parseAs(expected: (abstract new (...args: any[]) => T) | string, text: string): T; private parseStart; /** 将JavaScript变量序列化为TASON字符串 */ stringify(value: any, indent?: number | false): string; }