docs: @JsOverlay
    public final void addJavaWatch(Function javaMethod, String watchedPropertyName,
        boolean isDeep, boolean isImmediate) {
      if (!isDeep && !isImmediate) {
        addWatch(watchedPropertyName, javaMethod);
        return;
      }
  
      JsPropertyMap<Object> watchDefinition = JsPropertyMap.of();
      watchDefinition.set("handler", javaMethod);
      watchDefinition.set("deep", isDeep);
      watchDefinition.set("immediate", isImmediate);
      addWatch(watchedPropertyName, watchDefinition);
    }