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

#ifndef __gen_nsIMsgComposeParams_h__
#define __gen_nsIMsgComposeParams_h__


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

#ifndef __gen_nsIMsgIdentity_h__
#include "nsIMsgIdentity.h"
#endif

#ifndef __gen_nsIMsgCompFields_h__
#include "nsIMsgCompFields.h"
#endif

#ifndef __gen_nsIMsgSendListener_h__
#include "nsIMsgSendListener.h"
#endif

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

typedef int32_t  MSG_ComposeType;


/* starting interface:    nsIMsgCompType */
#define NS_IMSGCOMPTYPE_IID_STR "c7035852-7531-11d3-9a73-006008948010"

#define NS_IMSGCOMPTYPE_IID \
  {0xc7035852, 0x7531, 0x11d3, \
    { 0x9a, 0x73, 0x00, 0x60, 0x08, 0x94, 0x80, 0x10 }}

class NS_NO_VTABLE nsIMsgCompType {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGCOMPTYPE_IID)

  enum {
    New = 0,
    Reply = 1,
    ReplyAll = 2,
    ForwardAsAttachment = 3,
    ForwardInline = 4,
    NewsPost = 5,
    ReplyToSender = 6,
    ReplyToGroup = 7,
    ReplyToSenderAndGroup = 8,
    Draft = 9,
    Template = 10,
    MailToUrl = 11,
    ReplyWithTemplate = 12,
    ReplyToList = 13,
    Redirect = 14
  };

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgCompType, NS_IMSGCOMPTYPE_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPTYPE \

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPTYPE(_to) \

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPTYPE(_to) \

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

/* Header file */
class nsMsgCompType : public nsIMsgCompType
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGCOMPTYPE

  nsMsgCompType();

private:
  ~nsMsgCompType();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgCompType, nsIMsgCompType)

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

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

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

typedef int32_t  MSG_ComposeFormat;


/* starting interface:    nsIMsgCompFormat */
#define NS_IMSGCOMPFORMAT_IID_STR "a28325e8-7531-11d3-8f1c-006008948010"

#define NS_IMSGCOMPFORMAT_IID \
  {0xa28325e8, 0x7531, 0x11d3, \
    { 0x8f, 0x1c, 0x00, 0x60, 0x08, 0x94, 0x80, 0x10 }}

class NS_NO_VTABLE nsIMsgCompFormat {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGCOMPFORMAT_IID)

  enum {
    Default = 0,
    HTML = 1,
    PlainText = 2,
    OppositeOfDefault = 3
  };

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgCompFormat, NS_IMSGCOMPFORMAT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPFORMAT \

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPFORMAT(_to) \

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPFORMAT(_to) \

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

/* Header file */
class nsMsgCompFormat : public nsIMsgCompFormat
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGCOMPFORMAT

  nsMsgCompFormat();

private:
  ~nsMsgCompFormat();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgCompFormat, nsIMsgCompFormat)

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

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

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


/* starting interface:    nsIMsgComposeParams */
#define NS_IMSGCOMPOSEPARAMS_IID_STR "930895f2-d610-43f4-9e3c-25e1d1fe4143"

#define NS_IMSGCOMPOSEPARAMS_IID \
  {0x930895f2, 0xd610, 0x43f4, \
    { 0x9e, 0x3c, 0x25, 0xe1, 0xd1, 0xfe, 0x41, 0x43 }}

class NS_NO_VTABLE nsIMsgComposeParams : public nsISupports {
 public: 

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IMSGCOMPOSEPARAMS_IID)

  /* attribute MSG_ComposeType type; */
  NS_IMETHOD GetType(MSG_ComposeType *aType) = 0;
  NS_IMETHOD SetType(MSG_ComposeType aType) = 0;

  /* attribute MSG_ComposeFormat format; */
  NS_IMETHOD GetFormat(MSG_ComposeFormat *aFormat) = 0;
  NS_IMETHOD SetFormat(MSG_ComposeFormat aFormat) = 0;

  /* attribute string originalMsgURI; */
  NS_IMETHOD GetOriginalMsgURI(char * *aOriginalMsgURI) = 0;
  NS_IMETHOD SetOriginalMsgURI(const char * aOriginalMsgURI) = 0;

  /* attribute nsIMsgIdentity identity; */
  NS_IMETHOD GetIdentity(nsIMsgIdentity * *aIdentity) = 0;
  NS_IMETHOD SetIdentity(nsIMsgIdentity *aIdentity) = 0;

  /* attribute nsIMsgCompFields composeFields; */
  NS_IMETHOD GetComposeFields(nsIMsgCompFields * *aComposeFields) = 0;
  NS_IMETHOD SetComposeFields(nsIMsgCompFields *aComposeFields) = 0;

  /* attribute boolean bodyIsLink; */
  NS_IMETHOD GetBodyIsLink(bool *aBodyIsLink) = 0;
  NS_IMETHOD SetBodyIsLink(bool aBodyIsLink) = 0;

  /* attribute nsIMsgSendListener sendListener; */
  NS_IMETHOD GetSendListener(nsIMsgSendListener * *aSendListener) = 0;
  NS_IMETHOD SetSendListener(nsIMsgSendListener *aSendListener) = 0;

  /* attribute string smtpPassword; */
  NS_IMETHOD GetSmtpPassword(char * *aSmtpPassword) = 0;
  NS_IMETHOD SetSmtpPassword(const char * aSmtpPassword) = 0;

  /* attribute nsIMsgDBHdr origMsgHdr; */
  NS_IMETHOD GetOrigMsgHdr(nsIMsgDBHdr * *aOrigMsgHdr) = 0;
  NS_IMETHOD SetOrigMsgHdr(nsIMsgDBHdr *aOrigMsgHdr) = 0;

  /* attribute AUTF8String htmlToQuote; */
  NS_IMETHOD GetHtmlToQuote(nsACString & aHtmlToQuote) = 0;
  NS_IMETHOD SetHtmlToQuote(const nsACString & aHtmlToQuote) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIMsgComposeParams, NS_IMSGCOMPOSEPARAMS_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIMSGCOMPOSEPARAMS \
  NS_IMETHOD GetType(MSG_ComposeType *aType) MOZ_OVERRIDE; \
  NS_IMETHOD SetType(MSG_ComposeType aType) MOZ_OVERRIDE; \
  NS_IMETHOD GetFormat(MSG_ComposeFormat *aFormat) MOZ_OVERRIDE; \
  NS_IMETHOD SetFormat(MSG_ComposeFormat aFormat) MOZ_OVERRIDE; \
  NS_IMETHOD GetOriginalMsgURI(char * *aOriginalMsgURI) MOZ_OVERRIDE; \
  NS_IMETHOD SetOriginalMsgURI(const char * aOriginalMsgURI) MOZ_OVERRIDE; \
  NS_IMETHOD GetIdentity(nsIMsgIdentity * *aIdentity) MOZ_OVERRIDE; \
  NS_IMETHOD SetIdentity(nsIMsgIdentity *aIdentity) MOZ_OVERRIDE; \
  NS_IMETHOD GetComposeFields(nsIMsgCompFields * *aComposeFields) MOZ_OVERRIDE; \
  NS_IMETHOD SetComposeFields(nsIMsgCompFields *aComposeFields) MOZ_OVERRIDE; \
  NS_IMETHOD GetBodyIsLink(bool *aBodyIsLink) MOZ_OVERRIDE; \
  NS_IMETHOD SetBodyIsLink(bool aBodyIsLink) MOZ_OVERRIDE; \
  NS_IMETHOD GetSendListener(nsIMsgSendListener * *aSendListener) MOZ_OVERRIDE; \
  NS_IMETHOD SetSendListener(nsIMsgSendListener *aSendListener) MOZ_OVERRIDE; \
  NS_IMETHOD GetSmtpPassword(char * *aSmtpPassword) MOZ_OVERRIDE; \
  NS_IMETHOD SetSmtpPassword(const char * aSmtpPassword) MOZ_OVERRIDE; \
  NS_IMETHOD GetOrigMsgHdr(nsIMsgDBHdr * *aOrigMsgHdr) MOZ_OVERRIDE; \
  NS_IMETHOD SetOrigMsgHdr(nsIMsgDBHdr *aOrigMsgHdr) MOZ_OVERRIDE; \
  NS_IMETHOD GetHtmlToQuote(nsACString & aHtmlToQuote) MOZ_OVERRIDE; \
  NS_IMETHOD SetHtmlToQuote(const nsACString & aHtmlToQuote) MOZ_OVERRIDE; 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIMSGCOMPOSEPARAMS(_to) \
  NS_IMETHOD GetType(MSG_ComposeType *aType) MOZ_OVERRIDE { return _to GetType(aType); } \
  NS_IMETHOD SetType(MSG_ComposeType aType) MOZ_OVERRIDE { return _to SetType(aType); } \
  NS_IMETHOD GetFormat(MSG_ComposeFormat *aFormat) MOZ_OVERRIDE { return _to GetFormat(aFormat); } \
  NS_IMETHOD SetFormat(MSG_ComposeFormat aFormat) MOZ_OVERRIDE { return _to SetFormat(aFormat); } \
  NS_IMETHOD GetOriginalMsgURI(char * *aOriginalMsgURI) MOZ_OVERRIDE { return _to GetOriginalMsgURI(aOriginalMsgURI); } \
  NS_IMETHOD SetOriginalMsgURI(const char * aOriginalMsgURI) MOZ_OVERRIDE { return _to SetOriginalMsgURI(aOriginalMsgURI); } \
  NS_IMETHOD GetIdentity(nsIMsgIdentity * *aIdentity) MOZ_OVERRIDE { return _to GetIdentity(aIdentity); } \
  NS_IMETHOD SetIdentity(nsIMsgIdentity *aIdentity) MOZ_OVERRIDE { return _to SetIdentity(aIdentity); } \
  NS_IMETHOD GetComposeFields(nsIMsgCompFields * *aComposeFields) MOZ_OVERRIDE { return _to GetComposeFields(aComposeFields); } \
  NS_IMETHOD SetComposeFields(nsIMsgCompFields *aComposeFields) MOZ_OVERRIDE { return _to SetComposeFields(aComposeFields); } \
  NS_IMETHOD GetBodyIsLink(bool *aBodyIsLink) MOZ_OVERRIDE { return _to GetBodyIsLink(aBodyIsLink); } \
  NS_IMETHOD SetBodyIsLink(bool aBodyIsLink) MOZ_OVERRIDE { return _to SetBodyIsLink(aBodyIsLink); } \
  NS_IMETHOD GetSendListener(nsIMsgSendListener * *aSendListener) MOZ_OVERRIDE { return _to GetSendListener(aSendListener); } \
  NS_IMETHOD SetSendListener(nsIMsgSendListener *aSendListener) MOZ_OVERRIDE { return _to SetSendListener(aSendListener); } \
  NS_IMETHOD GetSmtpPassword(char * *aSmtpPassword) MOZ_OVERRIDE { return _to GetSmtpPassword(aSmtpPassword); } \
  NS_IMETHOD SetSmtpPassword(const char * aSmtpPassword) MOZ_OVERRIDE { return _to SetSmtpPassword(aSmtpPassword); } \
  NS_IMETHOD GetOrigMsgHdr(nsIMsgDBHdr * *aOrigMsgHdr) MOZ_OVERRIDE { return _to GetOrigMsgHdr(aOrigMsgHdr); } \
  NS_IMETHOD SetOrigMsgHdr(nsIMsgDBHdr *aOrigMsgHdr) MOZ_OVERRIDE { return _to SetOrigMsgHdr(aOrigMsgHdr); } \
  NS_IMETHOD GetHtmlToQuote(nsACString & aHtmlToQuote) MOZ_OVERRIDE { return _to GetHtmlToQuote(aHtmlToQuote); } \
  NS_IMETHOD SetHtmlToQuote(const nsACString & aHtmlToQuote) MOZ_OVERRIDE { return _to SetHtmlToQuote(aHtmlToQuote); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIMSGCOMPOSEPARAMS(_to) \
  NS_IMETHOD GetType(MSG_ComposeType *aType) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } \
  NS_IMETHOD SetType(MSG_ComposeType aType) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetType(aType); } \
  NS_IMETHOD GetFormat(MSG_ComposeFormat *aFormat) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFormat(aFormat); } \
  NS_IMETHOD SetFormat(MSG_ComposeFormat aFormat) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetFormat(aFormat); } \
  NS_IMETHOD GetOriginalMsgURI(char * *aOriginalMsgURI) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOriginalMsgURI(aOriginalMsgURI); } \
  NS_IMETHOD SetOriginalMsgURI(const char * aOriginalMsgURI) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOriginalMsgURI(aOriginalMsgURI); } \
  NS_IMETHOD GetIdentity(nsIMsgIdentity * *aIdentity) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetIdentity(aIdentity); } \
  NS_IMETHOD SetIdentity(nsIMsgIdentity *aIdentity) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetIdentity(aIdentity); } \
  NS_IMETHOD GetComposeFields(nsIMsgCompFields * *aComposeFields) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetComposeFields(aComposeFields); } \
  NS_IMETHOD SetComposeFields(nsIMsgCompFields *aComposeFields) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetComposeFields(aComposeFields); } \
  NS_IMETHOD GetBodyIsLink(bool *aBodyIsLink) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBodyIsLink(aBodyIsLink); } \
  NS_IMETHOD SetBodyIsLink(bool aBodyIsLink) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBodyIsLink(aBodyIsLink); } \
  NS_IMETHOD GetSendListener(nsIMsgSendListener * *aSendListener) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSendListener(aSendListener); } \
  NS_IMETHOD SetSendListener(nsIMsgSendListener *aSendListener) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSendListener(aSendListener); } \
  NS_IMETHOD GetSmtpPassword(char * *aSmtpPassword) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetSmtpPassword(aSmtpPassword); } \
  NS_IMETHOD SetSmtpPassword(const char * aSmtpPassword) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetSmtpPassword(aSmtpPassword); } \
  NS_IMETHOD GetOrigMsgHdr(nsIMsgDBHdr * *aOrigMsgHdr) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOrigMsgHdr(aOrigMsgHdr); } \
  NS_IMETHOD SetOrigMsgHdr(nsIMsgDBHdr *aOrigMsgHdr) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetOrigMsgHdr(aOrigMsgHdr); } \
  NS_IMETHOD GetHtmlToQuote(nsACString & aHtmlToQuote) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHtmlToQuote(aHtmlToQuote); } \
  NS_IMETHOD SetHtmlToQuote(const nsACString & aHtmlToQuote) MOZ_OVERRIDE { return !_to ? NS_ERROR_NULL_POINTER : _to->SetHtmlToQuote(aHtmlToQuote); } 

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

/* Header file */
class nsMsgComposeParams : public nsIMsgComposeParams
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIMSGCOMPOSEPARAMS

  nsMsgComposeParams();

private:
  ~nsMsgComposeParams();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsMsgComposeParams, nsIMsgComposeParams)

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

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

/* attribute MSG_ComposeType type; */
NS_IMETHODIMP nsMsgComposeParams::GetType(MSG_ComposeType *aType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetType(MSG_ComposeType aType)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute MSG_ComposeFormat format; */
NS_IMETHODIMP nsMsgComposeParams::GetFormat(MSG_ComposeFormat *aFormat)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetFormat(MSG_ComposeFormat aFormat)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string originalMsgURI; */
NS_IMETHODIMP nsMsgComposeParams::GetOriginalMsgURI(char * *aOriginalMsgURI)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetOriginalMsgURI(const char * aOriginalMsgURI)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMsgIdentity identity; */
NS_IMETHODIMP nsMsgComposeParams::GetIdentity(nsIMsgIdentity * *aIdentity)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetIdentity(nsIMsgIdentity *aIdentity)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMsgCompFields composeFields; */
NS_IMETHODIMP nsMsgComposeParams::GetComposeFields(nsIMsgCompFields * *aComposeFields)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetComposeFields(nsIMsgCompFields *aComposeFields)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean bodyIsLink; */
NS_IMETHODIMP nsMsgComposeParams::GetBodyIsLink(bool *aBodyIsLink)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetBodyIsLink(bool aBodyIsLink)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMsgSendListener sendListener; */
NS_IMETHODIMP nsMsgComposeParams::GetSendListener(nsIMsgSendListener * *aSendListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetSendListener(nsIMsgSendListener *aSendListener)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute string smtpPassword; */
NS_IMETHODIMP nsMsgComposeParams::GetSmtpPassword(char * *aSmtpPassword)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetSmtpPassword(const char * aSmtpPassword)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute nsIMsgDBHdr origMsgHdr; */
NS_IMETHODIMP nsMsgComposeParams::GetOrigMsgHdr(nsIMsgDBHdr * *aOrigMsgHdr)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetOrigMsgHdr(nsIMsgDBHdr *aOrigMsgHdr)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute AUTF8String htmlToQuote; */
NS_IMETHODIMP nsMsgComposeParams::GetHtmlToQuote(nsACString & aHtmlToQuote)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsMsgComposeParams::SetHtmlToQuote(const nsACString & aHtmlToQuote)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIMsgComposeParams_h__ */
