import { JsValue, Json } from "ts-json-definition"; import { Optional, Either } from "scalts"; import UnmarshallError from "../errors/UnmarshallError"; export declare type Marshaller = (value: T, json: Json, clazz: any, classPropertyName: string, jsonPropertyName: string, target: Function, mbType: Optional) => JsValue; export declare type Unmarshaller = (value: JsValue, json: Json, clazz: any, classPropertyName: string, jsonPropertyName: string, target: Function, mbType: Optional, jsonPath: string[], classPath: string[]) => Either; export declare const defaultMarshaller: Marshaller; export declare const defaultUnmarshaller: Unmarshaller;