chromium/chrome/browser/extensions/api/braille_display_private/braille_display_private_api.h

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

#ifndef CHROME_BROWSER_EXTENSIONS_API_BRAILLE_DISPLAY_PRIVATE_BRAILLE_DISPLAY_PRIVATE_API_H_
#define CHROME_BROWSER_EXTENSIONS_API_BRAILLE_DISPLAY_PRIVATE_BRAILLE_DISPLAY_PRIVATE_API_H_

#include "base/memory/raw_ptr.h"
#include "base/scoped_observation.h"
#include "chrome/browser/extensions/api/braille_display_private/braille_controller.h"
#include "chrome/common/extensions/api/braille_display_private.h"
#include "extensions/browser/browser_context_keyed_api_factory.h"
#include "extensions/browser/event_router.h"
#include "extensions/browser/extension_function.h"

class Profile;

namespace extensions {
namespace api {
namespace braille_display_private {
class BrailleDisplayPrivateAPIUserTest;
}  // namespace braille_display_private
}  // namespace api

// Implementation of the chrome.brailleDisplayPrivate API.
class BrailleDisplayPrivateAPI : public BrowserContextKeyedAPI,
                                 api::braille_display_private::BrailleObserver,
                                 EventRouter::Observer {};

namespace api {

class BrailleDisplayPrivateGetDisplayStateFunction : public ExtensionFunction {};

class BrailleDisplayPrivateWriteDotsFunction : public ExtensionFunction {};

class BrailleDisplayPrivateUpdateBluetoothBrailleDisplayAddressFunction
    : public ExtensionFunction {};

}  // namespace api
}  // namespace extensions

#endif  // CHROME_BROWSER_EXTENSIONS_API_BRAILLE_DISPLAY_PRIVATE_BRAILLE_DISPLAY_PRIVATE_API_H_