# Copyright 2016 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.ui.policy") {
  # TODO(https://fxbug.dev/42111344): Remove lint exclusions by fixing known FIDL lint violations in this target
  excluded_checks = [
    "invalid-case-for-constant",
    "invalid-case-for-decl-name",
  ]

  sdk_category = "partner"
  stable = true
  sdk_area = "View System"

  sources = [
    "device_listener.fidl",
    "display_backlight.fidl",
    "display_usage.fidl",
    "overview.fidl",
    "presentation.fidl",
    "presenter.fidl",
  ]

  public_deps = [
    "//sdk/fidl/fuchsia.ui.input",
    "//sdk/fidl/fuchsia.ui.views",
  ]

  enable_hlcpp = true
}
