<divclass="platform-hinted "data-platform-hinted="data-platform-hinted"><divclass="content sourceset-dependent-content"data-active=""data-togglable=":tgbotapi.core:dokkaHtmlPartial/commonMain"><divclass="symbol monospace"><spanclass="token keyword">open </span><spanclass="token keyword">override </span><spanclass="token keyword">fun </span><ahref="deserialize.html"><spanclass="token function">deserialize</span></a><spanclass="token punctuation">(</span><spanclass="parameters "><spanclass="parameter ">decoder<spanclass="token operator">: </span><spandata-unresolved-link="kotlinx.serialization.encoding/Decoder///PointingToDeclaration/">Decoder</span></span></span><spanclass="token punctuation">)</span><spanclass="token operator">: </span><ahref="index.html">T</a></div><pclass="paragraph">Trying to get <spandata-unresolved-link="kotlinx.serialization.json/JsonElement///PointingToDeclaration/">JsonElement</span> if <ahref="deserialize.html">decoder</a> is <spandata-unresolved-link="kotlinx.serialization.json/JsonDecoder///PointingToDeclaration/">JsonDecoder</span>. Then it will use <ahref="../../../tgbotapi.core/dev.inmo.tgbotapi.utils.serializers/-callback-customizable-deserialization-strategy/default-deserialize-callback.html">defaultDeserializeCallback</a> to deserialize data. In case if <ahref="../../../tgbotapi.core/dev.inmo.tgbotapi.utils.serializers/-callback-customizable-deserialization-strategy/default-deserialize-callback.html">defaultDeserializeCallback</a> will throw exception it will firstly try to deserialize data by strategies from <ahref="custom-deserialization-strategies.html">customDeserializationStrategies</a> and, if no one will return presented data in <spandata-unresolved-link="dev.inmo.micro_utils.common/Optional///PointingToDeclaration/">Optional</span> it will use <ahref="../../../tgbotapi.core/dev.inmo.tgbotapi.utils.serializers/-callback-customizable-deserialization-strategy/fallback-deserialization.html">fallbackDeserialization</a> as last option to deserialize data</p></div></div>