'use strict'
!(function(require, directRequire) {
  'use strict'
  function a() {
    return f || (f = b.createClient({ bin: e })), f
  }
  Object.defineProperty(exports, '__esModule', { value: !0 })
  const b = require('adbkit'),
    c = require('path'),
    d = require('./46d7303eb986fa402d60bf5e929aa077.js'),
    e = (() => {
      return d.isMac
        ? d.isDev
          ? c.join(__dirname, '../../../../../bin/adb-macos/adb')
          : c.join(
              process.execPath,
              '../../../../../Resources/bin/adb-macos/adb'
            )
        : d.isDev
          ? c.join(__dirname, '../../../../../bin/adb-win/adb.exe')
          : c.join(process.execPath, 'bin/adb-win/adb.exe')
    })()
  let f
  ;(exports.getClient = a),
    (exports.listDevices = function() {
      return new Promise((b, c) => {
        a()
          .listDevices()
          .then(a => {
            b(a)
          })
          .catch(a => {
            c(a)
          })
      })
    }),
    (exports.reverse = function(b, c, d) {
      return new Promise((e, f) => {
        a()
          .reverse(b, c, d)
          .then(a => {
            e(a)
          })
          .catch(a => {
            f(a)
          })
      })
    }),
    (exports.version = function() {
      return new Promise((b, c) => {
        a()
          .version()
          .then(a => {
            b(a)
          })
          .catch(a => {
            c(a)
          })
      })
    }),
    (exports.kill = function() {
      return new Promise((b, c) => {
        f
          ? a()
              .kill()
              .then(a => {
                ;(f = null), b(a)
              })
              .catch(a => {
                c(a)
              })
          : b(!0)
      })
    })
})(require('lazyload'), require)
