CallbacksCustomizableDeserializationStrategy
constructor(descriptor: SerialDescriptor, defaultDeserializeCallback: (decoder: Decoder, jsonElement: JsonElement?) -> T, defaultSerializeCallback: (encoder: Encoder, value: T) -> Unit, fallbackDeserialization: (initialException: Throwable, decoder: Decoder, jsonElement: JsonElement?) -> T = { initialException, _, _ -> throw initialException }, fallbackSerialization: (initialException: Throwable, encoder: Encoder, value: T) -> T = { initialException, _, _ -> throw initialException })