# Package com.fasterxml.jackson.databind.jsontype.impl

Package that contains standard implementations for `TypeResolverBuilder` and `TypeIdResolver`.

See: Description

Class Summary
AsArrayTypeDeserializer: Type deserializer used with `JsonTypeInfo.As.WRAPPER_ARRAY` inclusion mechanism.
AsArrayTypeSerializer: Type serializer that will embed type information in an array, as the first element, and actual value as the second element.
AsDeductionTypeDeserializer: A `TypeDeserializer` capable of deducing polymorphic types based on the fields available.
AsDeductionTypeSerializer
AsExistingPropertyTypeSerializer: Type serializer used with `JsonTypeInfo.As.EXISTING_PROPERTY` inclusion mechanism.
AsExternalTypeDeserializer: Type deserializer used with `JsonTypeInfo.As.EXTERNAL_PROPERTY` inclusion mechanism.
AsExternalTypeSerializer: Type serializer that preferably embeds type information as an "external" type property; embedded in enclosing JSON object.
AsPropertyTypeDeserializer: Type deserializer used with `JsonTypeInfo.As.PROPERTY` inclusion mechanism.
AsPropertyTypeSerializer: Type serializer that preferably embeds type information as an additional JSON Object property, if possible (when resulting serialization would use JSON Object).
AsWrapperTypeDeserializer: Type deserializer used with `JsonTypeInfo.As.WRAPPER_OBJECT` inclusion mechanism.
AsWrapperTypeSerializer: Type wrapper that tries to use an extra JSON Object, with a single entry that has type name as key, to serialize type information.
ClassNameIdResolver: `TypeIdResolver` implementation that converts between fully-qualified Java class names and (JSON) Strings.
LaissezFaireSubTypeValidator: Default `PolymorphicTypeValidator` used unless explicit one is constructed (and, in 2.11, `MapperFeature.BLOCK_UNSAFE_POLYMORPHIC_BASE_TYPES` not enabled).
MinimalClassNameIdResolver: Specialization of `ClassNameIdResolver` that instead uses a "minimal" derivation of `Class` name, using relative reference from the base type (base class) that polymorphic value has.
SimpleNameIdResolver: `TypeIdResolver` implementation that converts using explicitly (annotation-) specified type names and maps to implementation classes; or, in absence of annotated type name, defaults to simple `Class` names (obtained with `Class.getSimpleName()`.
StdSubtypeResolver: Standard `SubtypeResolver` implementation.
StdTypeResolverBuilder: Default `TypeResolverBuilder` implementation.
SubTypeValidator: Helper class used to encapsulate rules that determine subtypes that are invalid to use, even with default typing, mostly due to security concerns.
TypeDeserializerBase: Base class for all standard Jackson `TypeDeserializer`s.
TypeIdResolverBase: Partial base implementation of `TypeIdResolver`: all custom implementations are strongly recommended to extend this class, instead of directly implementing `TypeIdResolver`.
TypeNameIdResolver: `TypeIdResolver` implementation that converts using explicitly (annotation-) specified type names and maps to implementation classes; or, in absence of annotated type name, defaults to fully-qualified `Class` names (obtained with `Class.getName()`
TypeSerializerBase

## Package com.fasterxml.jackson.databind.jsontype.impl Description

Package that contains standard implementations for `TypeResolverBuilder` and `TypeIdResolver`.