chromium/components/history_embeddings/embedder.h

// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef COMPONENTS_HISTORY_EMBEDDINGS_EMBEDDER_H_
#define COMPONENTS_HISTORY_EMBEDDINGS_EMBEDDER_H_

#include <optional>
#include <string>
#include <vector>

#include "base/functional/callback.h"

namespace history_embeddings {

class Embedding;

// The kind of passage may be specified as a hint for prioritization and
// control of compute processing.
enum class PassageKind {};

// The status of an embeddings generation attempt.
enum class ComputeEmbeddingsStatus {};

struct EmbedderMetadata {};

ComputePassagesEmbeddingsCallback;
OnEmbedderReadyCallback;

// Base class that hides implementation details for how text is embedded.
class Embedder {};

}  // namespace history_embeddings

#endif  // COMPONENTS_HISTORY_EMBEDDINGS_EMBEDDER_H_