# Copyright 2020 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# DO NOT MANUALLY EDIT!
# Generated by //scripts/sdk/gn/generate.py.


import("../../build/fidl_library.gni")

fidl_library("fuchsia.bluetooth.le") {
  library_name = "le"
  namespace = "fuchsia.bluetooth"
  public_deps = [
    "../fuchsia.bluetooth",
    "../fuchsia.bluetooth.gatt",
  ]
  sources = [
    "advertising_data.fidl",
    "central.fidl",
    "connection_options.fidl",
    "peer.fidl",
    "peripheral.fidl",
    "types_deprecated.fidl",
  ]
}

group("all"){
  deps = [
    ":fuchsia.bluetooth.le",
  ]
}
