/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM nsIMsgComposeService.idl
 */

#ifndef __gen_nsIMsgComposeService_h__
#define __gen_nsIMsgComposeService_h__


#ifndef __gen_nsISupports_h__
#include "nsISupports.h"
#endif

#ifndef __gen_nsIMsgCompose_h__
#include "nsIMsgCompose.h"
#endif

#ifndef __gen_nsIMsgComposeParams_h__
#include "nsIMsgComposeParams.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
class nsIURI; /* forward declaration */

class nsIDOMWindowInternal; /* forward declaration */

class nsIMsgWindow; /* forward declaration */

class nsIMsgIdentity; /* forward declaration */

class nsIMsgIncomingServer; /* forward declaration */

class nsIMsgDBHdr; /* forward declaration */


/* starting interface:    nsIMsgComposeService */
#define NS_IMSGCOMPOSESERVICE_IID_STR "dbf4b3a7-dc38-4362-a620-ff5d22b3777c"

#define NS_IMSGCOMPOSESERVICE_IID \
  {0xdbf4b3a7, 0xdc38, 0x4362, \
    { 0xa6, 0x20, 0xff, 0x5d, 0x22, 0xb3, 0x77, 0x7c }}

class NS_NO_VTABLE NS_SCRIPTABLE nsIMsgComposeService : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGCOMPOSESERVICE_IID)

  /* void OpenComposeWindow (in string msgComposeWindowURL, in nsIMsgDBHdr msgHdr, in string originalMsgURI, in MSG_ComposeType type, in MSG_ComposeFormat format, in nsIMsgIdentity identity, in nsIMsgWindow aMsgWindow); */
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindow(const char *msgComposeWindowURL, nsIMsgDBHdr *msgHdr, const char *originalMsgURI, MSG_ComposeType type, MSG_ComposeFormat format, nsIMsgIdentity *identity, nsIMsgWindow *aMsgWindow) = 0;

  /* void OpenComposeWindowWithURI (in string msgComposeWindowURL, in nsIURI aURI); */
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithURI(const char *msgComposeWindowURL, nsIURI *aURI) = 0;

  /* void OpenComposeWindowWithParams (in string msgComposeWindowURL, in nsIMsgComposeParams params); */
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithParams(const char *msgComposeWindowURL, nsIMsgComposeParams *params) = 0;

  /* nsIMsgCompose InitCompose (in nsIDOMWindowInternal aWindow, in nsIMsgComposeParams params); */
  NS_SCRIPTABLE NS_IMETHOD InitCompose(nsIDOMWindowInternal *aWindow, nsIMsgComposeParams *params, nsIMsgCompose **_retval NS_OUTPARAM) = 0;

  /**
  * defaultIdentity
  *
  * @return the default identity, in case no identity has been setup yet, will return null
  */
  /* readonly attribute nsIMsgIdentity defaultIdentity; */
  NS_SCRIPTABLE NS_IMETHOD GetDefaultIdentity(nsIMsgIdentity **aDefaultIdentity) = 0;

  /* void TimeStamp (in string label, in boolean resetTime); */
  NS_SCRIPTABLE NS_IMETHOD TimeStamp(const char *label, PRBool resetTime) = 0;

  /* readonly attribute boolean logComposePerformance; */
  NS_SCRIPTABLE NS_IMETHOD GetLogComposePerformance(PRBool *aLogComposePerformance) = 0;

  /* [noscript] boolean determineComposeHTML (in nsIMsgIdentity aIdentity, in MSG_ComposeFormat aFormat); */
  NS_IMETHOD DetermineComposeHTML(nsIMsgIdentity *aIdentity, MSG_ComposeFormat aFormat, PRBool *_retval NS_OUTPARAM) = 0;

  /* [noscript] void cacheWindow (in nsIDOMWindowInternal aWindow, in boolean aComposeHTML, in nsIMsgComposeRecyclingListener listener); */
  NS_IMETHOD CacheWindow(nsIDOMWindowInternal *aWindow, PRBool aComposeHTML, nsIMsgComposeRecyclingListener *listener) = 0;

  /* boolean isCachedWindow (in nsIDOMWindowInternal aWindow); */
  NS_SCRIPTABLE NS_IMETHOD IsCachedWindow(nsIDOMWindowInternal *aWindow, PRBool *_retval NS_OUTPARAM) = 0;

  /** 
   * given a mailto url, parse the attributes and turn them into a nsIMsgComposeParams object
   * @return nsIMsgComposeParams which corresponds to the passed in mailto url
   */
  /* nsIMsgComposeParams getParamsForMailto (in nsIURI aURI); */
  NS_SCRIPTABLE NS_IMETHOD GetParamsForMailto(nsIURI *aURI, nsIMsgComposeParams **_retval NS_OUTPARAM) = 0;

  /**
   * @{
   * These constants control how to forward messages in forwardMessage.
   * kForwardAsDefault uses value of pref "mail.forward_message_mode".
   */
  enum { kForwardAsDefault = 0U };

  enum { kForwardAsAttachment = 1U };

  enum { kForwardInline = 2U };

  /** @} */
/**
   * Allow filters to automatically forward a message to the given address(es).
   * @param forwardTo the address(es) to forward to
   * @param msgHdr the header of the message being replied to
   * @param msgWindow message window to use
   * @param server server to use for determining which account to send from
   * @param aForwardType - How to forward the message one of 3 values:
   *                       kForwardAsDefault, kForwardInline, or
   *                       kForwardAsAttachment.
   */
  /* void forwardMessage (in AString forwardTo, in nsIMsgDBHdr msgHdr, in nsIMsgWindow msgWindow, in nsIMsgIncomingServer server, in unsigned long aForwardType); */
  NS_SCRIPTABLE NS_IMETHOD ForwardMessage(const nsAString & forwardTo, nsIMsgDBHdr *msgHdr, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server, PRUint32 aForwardType) = 0;

  /**
   * Allow filters to automatically reply to a message. The reply message is
   * based on the given template.
   * @param msgHdr the header of the message being replied to
   * @param templateUri uri of the template to base ther reply on
   * @param msgWindow message window to use
   * @param server server to use for determining which account to send from
   */
  /* void replyWithTemplate (in nsIMsgDBHdr msgHdr, in string templateUri, in nsIMsgWindow msgWindow, in nsIMsgIncomingServer server); */
  NS_SCRIPTABLE NS_IMETHOD ReplyWithTemplate(nsIMsgDBHdr *msgHdr, const char *templateUri, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server) = 0;

  /** 
   * Every open compose window registers itself with the compose service 
   * This allows consumers to get the msg compose object associated with a dom window
   *
   * @param aWindow The DOM Window 
   * @param aMsgCompose The compose object associated with the compose window
   *
   */
  /* void registerComposeWindow (in nsIDOMWindowInternal aWindow, in nsIMsgCompose aMsgCompose); */
  NS_SCRIPTABLE NS_IMETHOD RegisterComposeWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose *aMsgCompose) = 0;

  /** 
   * When a compose window is being closed (or recyled), it unregisters itself
   * from the compose service. 
   *
   * @param aWindow The DOM Window 
   *
   */
  /* void unregisterComposeWindow (in nsIDOMWindowInternal aWindow); */
  NS_SCRIPTABLE NS_IMETHOD UnregisterComposeWindow(nsIDOMWindowInternal *aWindow) = 0;

  /**
   * For aWindow, returns the nsIMsgCompose object associated with the window.
   *
   * @param aWindow The DOMWindow associated with the compose window.
   *
   * @return NS_ERROR_FAILURE if we could not find a nsIMsgCompose for the passed in
   *         DOM Window.
   */
  /* nsIMsgCompose getMsgComposeForWindow (in nsIDOMWindowInternal aWindow); */
  NS_SCRIPTABLE NS_IMETHOD GetMsgComposeForWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose **_retval NS_OUTPARAM) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgComposeService, NS_IMSGCOMPOSESERVICE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPOSESERVICE \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindow(const char *msgComposeWindowURL, nsIMsgDBHdr *msgHdr, const char *originalMsgURI, MSG_ComposeType type, MSG_ComposeFormat format, nsIMsgIdentity *identity, nsIMsgWindow *aMsgWindow); \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithURI(const char *msgComposeWindowURL, nsIURI *aURI); \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithParams(const char *msgComposeWindowURL, nsIMsgComposeParams *params); \
  NS_SCRIPTABLE NS_IMETHOD InitCompose(nsIDOMWindowInternal *aWindow, nsIMsgComposeParams *params, nsIMsgCompose **_retval NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetDefaultIdentity(nsIMsgIdentity **aDefaultIdentity); \
  NS_SCRIPTABLE NS_IMETHOD TimeStamp(const char *label, PRBool resetTime); \
  NS_SCRIPTABLE NS_IMETHOD GetLogComposePerformance(PRBool *aLogComposePerformance); \
  NS_IMETHOD DetermineComposeHTML(nsIMsgIdentity *aIdentity, MSG_ComposeFormat aFormat, PRBool *_retval NS_OUTPARAM); \
  NS_IMETHOD CacheWindow(nsIDOMWindowInternal *aWindow, PRBool aComposeHTML, nsIMsgComposeRecyclingListener *listener); \
  NS_SCRIPTABLE NS_IMETHOD IsCachedWindow(nsIDOMWindowInternal *aWindow, PRBool *_retval NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD GetParamsForMailto(nsIURI *aURI, nsIMsgComposeParams **_retval NS_OUTPARAM); \
  NS_SCRIPTABLE NS_IMETHOD ForwardMessage(const nsAString & forwardTo, nsIMsgDBHdr *msgHdr, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server, PRUint32 aForwardType); \
  NS_SCRIPTABLE NS_IMETHOD ReplyWithTemplate(nsIMsgDBHdr *msgHdr, const char *templateUri, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server); \
  NS_SCRIPTABLE NS_IMETHOD RegisterComposeWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose *aMsgCompose); \
  NS_SCRIPTABLE NS_IMETHOD UnregisterComposeWindow(nsIDOMWindowInternal *aWindow); \
  NS_SCRIPTABLE NS_IMETHOD GetMsgComposeForWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose **_retval NS_OUTPARAM); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPOSESERVICE(_to) \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindow(const char *msgComposeWindowURL, nsIMsgDBHdr *msgHdr, const char *originalMsgURI, MSG_ComposeType type, MSG_ComposeFormat format, nsIMsgIdentity *identity, nsIMsgWindow *aMsgWindow) { return _to OpenComposeWindow(msgComposeWindowURL, msgHdr, originalMsgURI, type, format, identity, aMsgWindow); } \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithURI(const char *msgComposeWindowURL, nsIURI *aURI) { return _to OpenComposeWindowWithURI(msgComposeWindowURL, aURI); } \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithParams(const char *msgComposeWindowURL, nsIMsgComposeParams *params) { return _to OpenComposeWindowWithParams(msgComposeWindowURL, params); } \
  NS_SCRIPTABLE NS_IMETHOD InitCompose(nsIDOMWindowInternal *aWindow, nsIMsgComposeParams *params, nsIMsgCompose **_retval NS_OUTPARAM) { return _to InitCompose(aWindow, params, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetDefaultIdentity(nsIMsgIdentity **aDefaultIdentity) { return _to GetDefaultIdentity(aDefaultIdentity); } \
  NS_SCRIPTABLE NS_IMETHOD TimeStamp(const char *label, PRBool resetTime) { return _to TimeStamp(label, resetTime); } \
  NS_SCRIPTABLE NS_IMETHOD GetLogComposePerformance(PRBool *aLogComposePerformance) { return _to GetLogComposePerformance(aLogComposePerformance); } \
  NS_IMETHOD DetermineComposeHTML(nsIMsgIdentity *aIdentity, MSG_ComposeFormat aFormat, PRBool *_retval NS_OUTPARAM) { return _to DetermineComposeHTML(aIdentity, aFormat, _retval); } \
  NS_IMETHOD CacheWindow(nsIDOMWindowInternal *aWindow, PRBool aComposeHTML, nsIMsgComposeRecyclingListener *listener) { return _to CacheWindow(aWindow, aComposeHTML, listener); } \
  NS_SCRIPTABLE NS_IMETHOD IsCachedWindow(nsIDOMWindowInternal *aWindow, PRBool *_retval NS_OUTPARAM) { return _to IsCachedWindow(aWindow, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetParamsForMailto(nsIURI *aURI, nsIMsgComposeParams **_retval NS_OUTPARAM) { return _to GetParamsForMailto(aURI, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD ForwardMessage(const nsAString & forwardTo, nsIMsgDBHdr *msgHdr, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server, PRUint32 aForwardType) { return _to ForwardMessage(forwardTo, msgHdr, msgWindow, server, aForwardType); } \
  NS_SCRIPTABLE NS_IMETHOD ReplyWithTemplate(nsIMsgDBHdr *msgHdr, const char *templateUri, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server) { return _to ReplyWithTemplate(msgHdr, templateUri, msgWindow, server); } \
  NS_SCRIPTABLE NS_IMETHOD RegisterComposeWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose *aMsgCompose) { return _to RegisterComposeWindow(aWindow, aMsgCompose); } \
  NS_SCRIPTABLE NS_IMETHOD UnregisterComposeWindow(nsIDOMWindowInternal *aWindow) { return _to UnregisterComposeWindow(aWindow); } \
  NS_SCRIPTABLE NS_IMETHOD GetMsgComposeForWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose **_retval NS_OUTPARAM) { return _to GetMsgComposeForWindow(aWindow, _retval); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPOSESERVICE(_to) \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindow(const char *msgComposeWindowURL, nsIMsgDBHdr *msgHdr, const char *originalMsgURI, MSG_ComposeType type, MSG_ComposeFormat format, nsIMsgIdentity *identity, nsIMsgWindow *aMsgWindow) { return !_to ? NS_ERROR_NULL_POINTER : _to->OpenComposeWindow(msgComposeWindowURL, msgHdr, originalMsgURI, type, format, identity, aMsgWindow); } \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithURI(const char *msgComposeWindowURL, nsIURI *aURI) { return !_to ? NS_ERROR_NULL_POINTER : _to->OpenComposeWindowWithURI(msgComposeWindowURL, aURI); } \
  NS_SCRIPTABLE NS_IMETHOD OpenComposeWindowWithParams(const char *msgComposeWindowURL, nsIMsgComposeParams *params) { return !_to ? NS_ERROR_NULL_POINTER : _to->OpenComposeWindowWithParams(msgComposeWindowURL, params); } \
  NS_SCRIPTABLE NS_IMETHOD InitCompose(nsIDOMWindowInternal *aWindow, nsIMsgComposeParams *params, nsIMsgCompose **_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->InitCompose(aWindow, params, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetDefaultIdentity(nsIMsgIdentity **aDefaultIdentity) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDefaultIdentity(aDefaultIdentity); } \
  NS_SCRIPTABLE NS_IMETHOD TimeStamp(const char *label, PRBool resetTime) { return !_to ? NS_ERROR_NULL_POINTER : _to->TimeStamp(label, resetTime); } \
  NS_SCRIPTABLE NS_IMETHOD GetLogComposePerformance(PRBool *aLogComposePerformance) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLogComposePerformance(aLogComposePerformance); } \
  NS_IMETHOD DetermineComposeHTML(nsIMsgIdentity *aIdentity, MSG_ComposeFormat aFormat, PRBool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->DetermineComposeHTML(aIdentity, aFormat, _retval); } \
  NS_IMETHOD CacheWindow(nsIDOMWindowInternal *aWindow, PRBool aComposeHTML, nsIMsgComposeRecyclingListener *listener) { return !_to ? NS_ERROR_NULL_POINTER : _to->CacheWindow(aWindow, aComposeHTML, listener); } \
  NS_SCRIPTABLE NS_IMETHOD IsCachedWindow(nsIDOMWindowInternal *aWindow, PRBool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->IsCachedWindow(aWindow, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD GetParamsForMailto(nsIURI *aURI, nsIMsgComposeParams **_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetParamsForMailto(aURI, _retval); } \
  NS_SCRIPTABLE NS_IMETHOD ForwardMessage(const nsAString & forwardTo, nsIMsgDBHdr *msgHdr, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server, PRUint32 aForwardType) { return !_to ? NS_ERROR_NULL_POINTER : _to->ForwardMessage(forwardTo, msgHdr, msgWindow, server, aForwardType); } \
  NS_SCRIPTABLE NS_IMETHOD ReplyWithTemplate(nsIMsgDBHdr *msgHdr, const char *templateUri, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server) { return !_to ? NS_ERROR_NULL_POINTER : _to->ReplyWithTemplate(msgHdr, templateUri, msgWindow, server); } \
  NS_SCRIPTABLE NS_IMETHOD RegisterComposeWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose *aMsgCompose) { return !_to ? NS_ERROR_NULL_POINTER : _to->RegisterComposeWindow(aWindow, aMsgCompose); } \
  NS_SCRIPTABLE NS_IMETHOD UnregisterComposeWindow(nsIDOMWindowInternal *aWindow) { return !_to ? NS_ERROR_NULL_POINTER : _to->UnregisterComposeWindow(aWindow); } \
  NS_SCRIPTABLE NS_IMETHOD GetMsgComposeForWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose **_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMsgComposeForWindow(aWindow, _retval); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsMsgComposeService : public nsIMsgComposeService
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGCOMPOSESERVICE

  nsMsgComposeService();

private:
  ~nsMsgComposeService();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS1(nsMsgComposeService, nsIMsgComposeService)

nsMsgComposeService::nsMsgComposeService()
{
  /* member initializers and constructor code */
}

nsMsgComposeService::~nsMsgComposeService()
{
  /* destructor code */
}

/* void OpenComposeWindow (in string msgComposeWindowURL, in nsIMsgDBHdr msgHdr, in string originalMsgURI, in MSG_ComposeType type, in MSG_ComposeFormat format, in nsIMsgIdentity identity, in nsIMsgWindow aMsgWindow); */
NS_IMETHODIMP nsMsgComposeService::OpenComposeWindow(const char *msgComposeWindowURL, nsIMsgDBHdr *msgHdr, const char *originalMsgURI, MSG_ComposeType type, MSG_ComposeFormat format, nsIMsgIdentity *identity, nsIMsgWindow *aMsgWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void OpenComposeWindowWithURI (in string msgComposeWindowURL, in nsIURI aURI); */
NS_IMETHODIMP nsMsgComposeService::OpenComposeWindowWithURI(const char *msgComposeWindowURL, nsIURI *aURI)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void OpenComposeWindowWithParams (in string msgComposeWindowURL, in nsIMsgComposeParams params); */
NS_IMETHODIMP nsMsgComposeService::OpenComposeWindowWithParams(const char *msgComposeWindowURL, nsIMsgComposeParams *params)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgCompose InitCompose (in nsIDOMWindowInternal aWindow, in nsIMsgComposeParams params); */
NS_IMETHODIMP nsMsgComposeService::InitCompose(nsIDOMWindowInternal *aWindow, nsIMsgComposeParams *params, nsIMsgCompose **_retval NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute nsIMsgIdentity defaultIdentity; */
NS_IMETHODIMP nsMsgComposeService::GetDefaultIdentity(nsIMsgIdentity **aDefaultIdentity)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void TimeStamp (in string label, in boolean resetTime); */
NS_IMETHODIMP nsMsgComposeService::TimeStamp(const char *label, PRBool resetTime)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute boolean logComposePerformance; */
NS_IMETHODIMP nsMsgComposeService::GetLogComposePerformance(PRBool *aLogComposePerformance)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] boolean determineComposeHTML (in nsIMsgIdentity aIdentity, in MSG_ComposeFormat aFormat); */
NS_IMETHODIMP nsMsgComposeService::DetermineComposeHTML(nsIMsgIdentity *aIdentity, MSG_ComposeFormat aFormat, PRBool *_retval NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* [noscript] void cacheWindow (in nsIDOMWindowInternal aWindow, in boolean aComposeHTML, in nsIMsgComposeRecyclingListener listener); */
NS_IMETHODIMP nsMsgComposeService::CacheWindow(nsIDOMWindowInternal *aWindow, PRBool aComposeHTML, nsIMsgComposeRecyclingListener *listener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* boolean isCachedWindow (in nsIDOMWindowInternal aWindow); */
NS_IMETHODIMP nsMsgComposeService::IsCachedWindow(nsIDOMWindowInternal *aWindow, PRBool *_retval NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgComposeParams getParamsForMailto (in nsIURI aURI); */
NS_IMETHODIMP nsMsgComposeService::GetParamsForMailto(nsIURI *aURI, nsIMsgComposeParams **_retval NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void forwardMessage (in AString forwardTo, in nsIMsgDBHdr msgHdr, in nsIMsgWindow msgWindow, in nsIMsgIncomingServer server, in unsigned long aForwardType); */
NS_IMETHODIMP nsMsgComposeService::ForwardMessage(const nsAString & forwardTo, nsIMsgDBHdr *msgHdr, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server, PRUint32 aForwardType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void replyWithTemplate (in nsIMsgDBHdr msgHdr, in string templateUri, in nsIMsgWindow msgWindow, in nsIMsgIncomingServer server); */
NS_IMETHODIMP nsMsgComposeService::ReplyWithTemplate(nsIMsgDBHdr *msgHdr, const char *templateUri, nsIMsgWindow *msgWindow, nsIMsgIncomingServer *server)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void registerComposeWindow (in nsIDOMWindowInternal aWindow, in nsIMsgCompose aMsgCompose); */
NS_IMETHODIMP nsMsgComposeService::RegisterComposeWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose *aMsgCompose)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* void unregisterComposeWindow (in nsIDOMWindowInternal aWindow); */
NS_IMETHODIMP nsMsgComposeService::UnregisterComposeWindow(nsIDOMWindowInternal *aWindow)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* nsIMsgCompose getMsgComposeForWindow (in nsIDOMWindowInternal aWindow); */
NS_IMETHODIMP nsMsgComposeService::GetMsgComposeForWindow(nsIDOMWindowInternal *aWindow, nsIMsgCompose **_retval NS_OUTPARAM)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif


#endif /* __gen_nsIMsgComposeService_h__ */
