/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* 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"

interface nsIFactory;

/**
 * Every JS module exports a single NSGetFactory symbol which is converted into this
 * functional interface type.
 */
[scriptable, function, uuid(3FE0C205-D75B-4CAC-9347-D2B855050143)]
interface xpcIJSGetFactory : nsISupports
{
  nsIFactory get(in nsCIDRef aCID);
};