include_rules = [
  # Allow inclusion of specific components that we depend on.
  # See comment in content/DEPS for which components are allowed.
  "+components/discardable_memory/common",
  "+components/discardable_memory/public",
  "+components/discardable_memory/service",
  "+components/download/database",
  "+components/download/public/common",
  "+components/download/quarantine/quarantine.h",
  "+components/filename_generation",
  "+components/services/font",
  "+components/services/filesystem",
  "+components/services/font/ppapi_fontconfig_matching.h",
  "+components/services/leveldb",
  "+components/session_manager/core",
  "+components/link_header_util",
  "+components/metrics",
  "+components/metrics:single_sample_metrics",
  "+components/network_session_configurator/common",
  "+components/offline_pages/buildflags/buildflags.h",
  "+components/offline_pages/core/request_header",
  "+components/payments",
  "+components/profile_service",
  "+components/rappor/public",
  "+components/services/heap_profiling/public",
  "+components/tracing",
  "+components/ukm",
  "+components/url_formatter",
  "+components/variations/net/variations_http_headers.h",
  "+components/viz",
  "+components/cbor",
  "+components/os_crypt/os_crypt_switches.h",

  "+content/public/app",
  "+content/public/browser",
  "+device/base/synchronization",
  "+device/gamepad", # For gamepad API
  "+device/nfc",
  "+device/vr",  # For WebVR API
  # This can only be used on POSIX, in particular it mustn't be used on Windows
  # in the browser DLL.
  "+gin/v8_initializer.h",
  "+mojo",
  "+services",
  "+sql",
  "+ui/aura_extra",
  "+components/vector_icons",
  "+ui/webui",

  # In general, //content shouldn't depend on //device.
  # This is the an exception.
  "+device/udev_linux",  # For udev utility and wrapper library.

  # Explicitly disallow using SyncMessageFilter to prevent browser from
  # sending synchronous IPC messages on non-UI threads.
  "-ipc/ipc_sync_message_filter.h",

  # Other libraries.
  "+third_party/iaccessible2",
  "+third_party/isimpledom",
  "+third_party/khronos",   # For enum definitions only
  "+third_party/libaom/av1_buildflags.h",
  "+third_party/re2",
  "+third_party/zlib",

  # Allow non-browser Chrome OS code to be used.
  "+chromeos",
  "+third_party/cros_system_api",

  # Limit visibility into Content Service internals.
  "-services/content",
  "+services/content/public",
  "+services/content/navigable_contents_delegate.h",
  "+services/content/service.h",
  "+services/content/service_delegate.h",

  # No inclusion of WebKit from the browser, other than the ones in
  # WebKit/public/{mojom,common}, or the ones that are strictly enum/POD,
  # header-only types, and some selected common code.
  "-third_party/blink",
  "+third_party/blink/public/common",
  "+third_party/blink/public/mojom",
  "+third_party/blink/public/platform/resource_request_blocked_reason.h",
  "+third_party/blink/public/platform/WebAddressSpace.h",
  "+third_party/blink/public/platform/web_client_hints_type.h",
  "+third_party/blink/public/platform/web_content_security_policy.h",
  "+third_party/blink/public/platform/web_cursor_info.h",
  "+third_party/blink/public/platform/web_drag_operation.h",
  "+third_party/blink/public/platform/web_focus_type.h",
  "+third_party/blink/public/platform/web_fullscreen_video_status.h",
  "+third_party/blink/public/platform/web_gesture_event.h",
  "+third_party/blink/public/platform/web_input_event.h",
  "+third_party/blink/public/platform/web_insecure_request_policy.h",
  "+third_party/blink/public/platform/web_intrinsic_sizing_info.h",
  "+third_party/blink/public/platform/web_keyboard_event.h",
  "+third_party/blink/public/platform/web_mixed_content_context_type.h",
  "+third_party/blink/public/platform/web_mouse_event.h",
  "+third_party/blink/public/platform/web_mouse_wheel_event.h",
  "+third_party/blink/public/platform/WebPageVisibilityState.h",
  "+third_party/blink/public/platform/WebRemoteFrameProperties.h",
  "+third_party/blink/public/platform/web_screen_info.h",
  "+third_party/blink/public/platform/web_scroll_into_view_params.h",
  "+third_party/blink/public/platform/web_scroll_types.h",
  "+third_party/blink/public/platform/web_security_style.h",
  "+third_party/blink/public/platform/web_sudden_termination_disabler_type.h",
  "+third_party/blink/public/platform/web_text_autosizer_page_info.h",
  "+third_party/blink/public/platform/web_touch_event.h",
  "+third_party/blink/public/platform/web_text_input_type.h",
  "+third_party/blink/public/platform/mac/web_scrollbar_theme.h",
  "+third_party/blink/public/platform/modules/indexeddb/web_idb_database_exception.h",
  "+third_party/blink/public/platform/modules/notifications/web_notification_constants.h",
  "+third_party/blink/public/platform/modules/service_worker/web_service_worker_error.h",
  "+third_party/blink/public/platform/modules/sms/sms_receiver.mojom.h",
  "+third_party/blink/public/public_buildflags.h",
  "+third_party/blink/public/web/web_ax_enums.h",
  "+third_party/blink/public/web/web_console_message.h",
  "+third_party/blink/public/web/web_context_menu_data.h",
  "+third_party/blink/public/web/web_device_emulation_params.h",
  "+third_party/blink/public/web/web_drag_status.h",
  "+third_party/blink/public/web/web_fullscreen_options.h",
  "+third_party/blink/public/web/web_ime_text_span.h",
  "+third_party/blink/public/web/web_media_player_action.h",
  "+third_party/blink/public/web/web_plugin_action.h",
  "+third_party/blink/public/web/web_serialized_script_value_version.h",
  "+third_party/blink/public/web/WebSharedWorkerCreationContextType.h",
  "+third_party/blink/public/web/WebSharedWorkerCreationErrors.h",
  "+third_party/blink/public/web/web_text_direction.h",
  "+third_party/blink/public/web/web_tree_scope_type.h",
  "+third_party/blink/public/web/web_triggering_event_info.h",

  # DO NOT ADD ANY CHROME OR COMPONENTS INCLUDES HERE!!!
  # See https://sites.google.com/a/chromium.org/dev/developers/content-module
  # for more information.
]

specific_include_rules = {
  # To share values of UMA enums between product code and tests.
  "cross_site_document_blocking_browsertest.cc": [
    "+services/network/cross_origin_read_blocking.h",
  ],
}
