// Copyright (c) 2018, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. /// Helper library used by `dart:js`. /// /// This library hides any logic that is specific to the web, and allows us to /// support `dart:js` for compiling to javascript on the server (e.g. to target /// nodejs). library dart._js; /// Whether `o` is a browser object such as `Blob`, `Event`, `KeyRange`, /// `ImageData`, `Node`, and `Window`. /// /// On non-web targets, this function always returns false. external bool isBrowserObject(dynamic o); /// Convert a browser object to it's Dart counterpart. None of these types are /// wrapped, but this function is needed to inform dart2js about the possible /// types that are used and that therefore cannot be tree-shaken. external Object convertFromBrowserObject(dynamic o);