chromium/third_party/blink/public/common/bluetooth/web_bluetooth_device_id.h

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

#ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_
#define THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_

#include <stdint.h>

#include <array>
#include <cstdint>
#include <functional>
#include <iosfwd>
#include <string>

#include "third_party/blink/public/common/common_export.h"

namespace blink {

WebBluetoothDeviceIdKey;

// Used to uniquely identify a Bluetooth Device for an Origin.
// A WebBluetoothDeviceId represents a 128bit key for bluetooth device id.
class BLINK_COMMON_EXPORT WebBluetoothDeviceId {};

// This is required by gtest to print a readable output on test failures.
BLINK_COMMON_EXPORT std::ostream& operator<<(
    std::ostream& out,
    const WebBluetoothDeviceId& device_id);

struct WebBluetoothDeviceIdHash {};

}  // namespace blink

#endif  // THIRD_PARTY_BLINK_PUBLIC_COMMON_BLUETOOTH_WEB_BLUETOOTH_DEVICE_ID_H_