#ifndef CHROME_BROWSER_EXTENSIONS_API_OMNIBOX_OMNIBOX_API_H_
#define CHROME_BROWSER_EXTENSIONS_API_OMNIBOX_OMNIBOX_API_H_
#include <set>
#include <string>
#include "base/memory/raw_ptr.h"
#include "base/scoped_observation.h"
#include "chrome/browser/extensions/api/omnibox/suggestion_parser.h"
#include "chrome/common/extensions/api/omnibox.h"
#include "components/omnibox/browser/autocomplete_match.h"
#include "components/search_engines/template_url_service.h"
#include "extensions/browser/browser_context_keyed_api_factory.h"
#include "extensions/browser/extension_function.h"
#include "extensions/browser/extension_icon_manager.h"
#include "extensions/browser/extension_registry.h"
#include "extensions/browser/extension_registry_observer.h"
#include "extensions/common/extension_id.h"
#include "ui/base/window_open_disposition.h"
class Profile;
class TemplateURL;
class TemplateURLService;
namespace content {
class BrowserContext;
class WebContents;
}
namespace gfx {
class Image;
}
namespace extensions {
class ExtensionOmniboxEventRouter { … };
class OmniboxSendSuggestionsFunction : public ExtensionFunction { … };
class OmniboxAPI : public BrowserContextKeyedAPI,
public ExtensionRegistryObserver { … };
template <>
void BrowserContextKeyedAPIFactory<OmniboxAPI>::DeclareFactoryDependencies();
class OmniboxSetDefaultSuggestionFunction : public ExtensionFunction { … };
void ApplyDefaultSuggestionForExtensionKeyword(
Profile* profile,
const TemplateURL* keyword,
const std::u16string& remaining_input,
AutocompleteMatch* match);
ACMatchClassifications StyleTypesToACMatchClassifications(
const api::omnibox::SuggestResult &suggestion);
}
#endif