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

# These are typemaps which are exposed by Blink to its embedder.
typemaps = [
  "//third_party/blink/public/platform/content_security_policy.typemap",
  "//third_party/blink/public/common/indexeddb/indexeddb.typemap",
  "//third_party/blink/public/common/manifest/display_mode.typemap",
  "//third_party/blink/public/common/manifest/manifest.typemap",
  "//third_party/blink/public/common/notifications/notification_types.typemap",
  "//third_party/blink/public/common/screen_orientation/screen_orientation_lock_types.typemap",
  "//third_party/blink/public/web/console_message.typemap",
]
