# Copyright 2015 The Chromium 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("//mojo/public/tools/bindings/mojom.gni")

# Depend upon //ash/public/cpp, which has a public_dep on this. The two targets
# must be bundled together as the typemaps depend upon //ash/public/cpp,
# and //ash/public/cpp needs to depend on this for generated code (such as
# enums and constants).
mojom("interfaces_internal") {
  visibility = [ "//ash/public/cpp:*" ]

  sources = [
    "accelerator_controller.mojom",
    "accessibility_controller.mojom",
    "ash_display_controller.mojom",
    "ash_message_center_controller.mojom",
    "cast_config.mojom",
    "constants.mojom",
    "event_properties.mojom",
    "highlighter_controller.mojom",
    "ime_controller.mojom",
    "ime_info.mojom",
    "locale.mojom",
    "login_screen.mojom",
    "login_user_info.mojom",
    "media.mojom",
    "new_window.mojom",
    "night_light_controller.mojom",
    "note_taking_controller.mojom",
    "pref_connector.mojom",
    "session_controller.mojom",
    "shelf.mojom",
    "shutdown.mojom",
    "system_tray.mojom",
    "tablet_mode.mojom",
    "tray_action.mojom",
    "update.mojom",
    "user_info.mojom",
    "voice_interaction_controller.mojom",
    "volume.mojom",
    "vpn_list.mojom",
    "wallpaper.mojom",
    "window_actions.mojom",
    "window_pin_type.mojom",
    "window_properties.mojom",
    "window_state_type.mojom",
    "window_style.mojom",
  ]

  public_deps = [
    "//components/proximity_auth/public/interfaces",
    "//components/signin/public/interfaces",
    "//mojo/common:common_custom_types",
    "//services/preferences/public/interfaces",
    "//skia/public/interfaces",
    "//ui/events/mojo:interfaces",
    "//ui/gfx/image/mojo:interfaces",
    "//ui/message_center/mojo:mojo",
  ]

  component_output_prefix = "ash_public_interfaces_internal"
  export_class_attribute = "ASH_PUBLIC_EXPORT"
  export_define = "ASH_PUBLIC_IMPLEMENTATION=1"
  export_header = "ash/public/cpp/ash_public_export.h"
}

mojom("test_interfaces") {
  testonly = true
  sources = [
    "shelf_test_api.mojom",
    "system_tray_test_api.mojom",
  ]
  deps = [
    "//mojo/common:common_custom_types",
  ]
}