code: private static Object deserializePage(String value, Type resultType, Type wireType, SerializerAdapter serializer, SerializerEncoding encoding) throws IOException {
          final Type wireResponseType;
  
          if (wireType == Page.class) {
              // If the type is the 'Page' interface [i.e. `@ReturnValueWireType(Page.class)`], we will use the 'ItemPage' class instead.
              wireResponseType = TypeUtil.createParameterizedType(ItemPage.class, resultType);
          } else {
              wireResponseType = wireType;
          }
  
          return serializer.deserialize(value, wireResponseType, encoding);
      }
docs: Deserializes a response body as a Page<T> given that {@param wireType} is either:
  1. A type that implements the interface
  2. Is of {@link Page}
  
  @param value The string to deserialize
  @param resultType The type T, of the page contents.
  @param wireType The {@link Type} that either is, or implements {@link Page}
  @param serializer The serializer used to deserialize the value.
  @param encoding Encoding used to deserialize string
  @return An object representing an instance of {@param wireType}
  @throws IOException if the serializer is unable to deserialize the value.