/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "nsISupports.idl"

[scriptable, uuid(4d4389e0-1547-11e3-8ffd-0800200c9a66)]
interface nsIWifiEventListener : nsISupports {
  void onWaitEvent(in AString event, in ACString aInterface);
  void onCommand(in jsval result, in ACString aInterface);
};

[scriptable, uuid(5e2bd8c0-1547-11e3-8ffd-0800200c9a66)]
interface nsIWifiProxyService : nsISupports {
  void start(in nsIWifiEventListener listener,
             [array, size_is(aNumOfInterface)] in string aInterfaces,
             in unsigned long aNumOfInterface);
  void shutdown();
  [implicit_jscontext]
  void sendCommand(in jsval parameters, in ACString aInterface);
  void waitForEvent(in ACString aInterface);
};