#include "nsISupports.idl"

[scriptable, uuid(38b5c83a-3e8d-45c2-8311-6e36bd5116c0)]
interface nsIAndroidDrawMetadataProvider : nsISupports {
  AString getDrawMetadata();

  /*
   * Returns true if the presentation shell corresponding to the currently-viewed document is
   * suppressing painting (which occurs during page transitions) and false otherwise.
   */
  boolean paintingSuppressed();
};

[scriptable, uuid(7dd8441a-4f38-49b2-bd90-da69d02a96cf)]
interface nsIAndroidBridge : nsISupports
{
  AString handleGeckoMessage(in AString message);
  void setDrawMetadataProvider(in nsIAndroidDrawMetadataProvider provider);
};
