# Copyright 2018 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.

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

fidl("fuchsia.bluetooth") {
  # TODO(fxb/35879): Remove lint exclusions by fixing known FIDL lint violations in this target
  excluded_checks = [ "string-bounds-not-specified" ]

  sdk_category = "partner"

  sources = [
    "address.fidl",
    "appearance.fidl",
    "connection_role.fidl",
    "device_class.fidl",
    "id.fidl",
    "nullables.fidl",
    "status.fidl",
    "uuid.fidl",
  ]
}
