#ifndef CONTENT_RENDERER_ACCESSIBILITY_ANNOTATIONS_AX_ANNOTATOR_H_
#define CONTENT_RENDERER_ACCESSIBILITY_ANNOTATIONS_AX_ANNOTATOR_H_
#include <vector>
#include "content/common/content_export.h"
#include "ui/accessibility/ax_mode.h"
#include "ui/accessibility/ax_node_data.h"
#include "ui/accessibility/ax_tree_update.h"
namespace blink {
class WebDocument;
}
namespace content {
class CONTENT_EXPORT AXAnnotator {
public:
virtual ~AXAnnotator() = default;
virtual void Annotate(const blink::WebDocument& document,
ui::AXTreeUpdate* update,
bool load_complete) = 0;
virtual void EnableAnnotations() = 0;
virtual void CancelAnnotations() = 0;
virtual uint32_t GetAXModeToEnableAnnotations() = 0;
virtual bool HasAXActionToEnableAnnotations() = 0;
virtual ax::mojom::Action GetAXActionToEnableAnnotations() = 0;
virtual void AddDebuggingAttributes(
const std::vector<ui::AXTreeUpdate>& updates) = 0;
};
}
#endif