15    def annotation(self) -> typing.Type[typing.Any] | None:
 
   17        Get the type annotation of the field. 
   25        Check if the field is required for the schema. 
   29class TypeWithMetadata:
 
   33    def __init__(self, type: typing.Type[typing.Any], metadata: dict[str, typing.Any]|
None):
 
   35        self._metadata = metadata
 
   38    def type(self) -> typing.Type[typing.Any]:
 
   40        Get the type of the type with metadata. 
   45    def metadata(self) -> dict[str, typing.Any]|None:
 
 
   47        Get the metadata of the type with metadata.