export interface Marshaler { /** * 将后端提供的数据解析为前端对应数据模型(model: T)。 */ readonly parse: (response: Readonly) => T; /** * 将后端提供的更新数据解析为前端对应数据模型(model: T)上部分字段的更新数据。 */ readonly parsePatch: (patchResponse: Readonly, model?: Readonly) => Partial; /** * 将前端生成的数据模型(model: T)反解析为后端需要的数据。 */ readonly deparse: (model: Readonly) => any; /** * 将前端生成的数据模型(model: T)上的更新数据反解析为后端需要的更新数据。 */ readonly deparsePatch: (patchModel: Readonly>, model?: Readonly) => any; }