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

#ifndef __gen_nsIDOMHTMLTableCellElement_h__
#define __gen_nsIDOMHTMLTableCellElement_h__


#ifndef __gen_nsIDOMHTMLElement_h__
#include "nsIDOMHTMLElement.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsIDOMHTMLTableCellElement */
#define NS_IDOMHTMLTABLECELLELEMENT_IID_STR "3203c36f-33fd-4628-8c88-77e82d38df1e"

#define NS_IDOMHTMLTABLECELLELEMENT_IID \
  {0x3203c36f, 0x33fd, 0x4628, \
    { 0x8c, 0x88, 0x77, 0xe8, 0x2d, 0x38, 0xdf, 0x1e }}

class NS_NO_VTABLE nsIDOMHTMLTableCellElement : public nsISupports {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMHTMLTABLECELLELEMENT_IID)

  /* readonly attribute long cellIndex; */
  NS_IMETHOD GetCellIndex(int32_t *aCellIndex) = 0;

  /* attribute DOMString abbr; */
  NS_IMETHOD GetAbbr(nsAString & aAbbr) = 0;
  NS_IMETHOD SetAbbr(const nsAString & aAbbr) = 0;

  /* attribute DOMString align; */
  NS_IMETHOD GetAlign(nsAString & aAlign) = 0;
  NS_IMETHOD SetAlign(const nsAString & aAlign) = 0;

  /* attribute DOMString axis; */
  NS_IMETHOD GetAxis(nsAString & aAxis) = 0;
  NS_IMETHOD SetAxis(const nsAString & aAxis) = 0;

  /* attribute DOMString bgColor; */
  NS_IMETHOD GetBgColor(nsAString & aBgColor) = 0;
  NS_IMETHOD SetBgColor(const nsAString & aBgColor) = 0;

  /* attribute DOMString ch; */
  NS_IMETHOD GetCh(nsAString & aCh) = 0;
  NS_IMETHOD SetCh(const nsAString & aCh) = 0;

  /* attribute DOMString chOff; */
  NS_IMETHOD GetChOff(nsAString & aChOff) = 0;
  NS_IMETHOD SetChOff(const nsAString & aChOff) = 0;

  /* attribute long colSpan; */
  NS_IMETHOD GetColSpan(int32_t *aColSpan) = 0;
  NS_IMETHOD SetColSpan(int32_t aColSpan) = 0;

  /* attribute DOMString headers; */
  NS_IMETHOD GetHeaders(nsAString & aHeaders) = 0;
  NS_IMETHOD SetHeaders(const nsAString & aHeaders) = 0;

  /* attribute DOMString height; */
  NS_IMETHOD GetHeight(nsAString & aHeight) = 0;
  NS_IMETHOD SetHeight(const nsAString & aHeight) = 0;

  /* attribute boolean noWrap; */
  NS_IMETHOD GetNoWrap(bool *aNoWrap) = 0;
  NS_IMETHOD SetNoWrap(bool aNoWrap) = 0;

  /* attribute long rowSpan; */
  NS_IMETHOD GetRowSpan(int32_t *aRowSpan) = 0;
  NS_IMETHOD SetRowSpan(int32_t aRowSpan) = 0;

  /* attribute DOMString scope; */
  NS_IMETHOD GetScope(nsAString & aScope) = 0;
  NS_IMETHOD SetScope(const nsAString & aScope) = 0;

  /* attribute DOMString vAlign; */
  NS_IMETHOD GetVAlign(nsAString & aVAlign) = 0;
  NS_IMETHOD SetVAlign(const nsAString & aVAlign) = 0;

  /* attribute DOMString width; */
  NS_IMETHOD GetWidth(nsAString & aWidth) = 0;
  NS_IMETHOD SetWidth(const nsAString & aWidth) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMHTMLTableCellElement, NS_IDOMHTMLTABLECELLELEMENT_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIDOMHTMLTABLECELLELEMENT \
  NS_IMETHOD GetCellIndex(int32_t *aCellIndex) override; \
  NS_IMETHOD GetAbbr(nsAString & aAbbr) override; \
  NS_IMETHOD SetAbbr(const nsAString & aAbbr) override; \
  NS_IMETHOD GetAlign(nsAString & aAlign) override; \
  NS_IMETHOD SetAlign(const nsAString & aAlign) override; \
  NS_IMETHOD GetAxis(nsAString & aAxis) override; \
  NS_IMETHOD SetAxis(const nsAString & aAxis) override; \
  NS_IMETHOD GetBgColor(nsAString & aBgColor) override; \
  NS_IMETHOD SetBgColor(const nsAString & aBgColor) override; \
  NS_IMETHOD GetCh(nsAString & aCh) override; \
  NS_IMETHOD SetCh(const nsAString & aCh) override; \
  NS_IMETHOD GetChOff(nsAString & aChOff) override; \
  NS_IMETHOD SetChOff(const nsAString & aChOff) override; \
  NS_IMETHOD GetColSpan(int32_t *aColSpan) override; \
  NS_IMETHOD SetColSpan(int32_t aColSpan) override; \
  NS_IMETHOD GetHeaders(nsAString & aHeaders) override; \
  NS_IMETHOD SetHeaders(const nsAString & aHeaders) override; \
  NS_IMETHOD GetHeight(nsAString & aHeight) override; \
  NS_IMETHOD SetHeight(const nsAString & aHeight) override; \
  NS_IMETHOD GetNoWrap(bool *aNoWrap) override; \
  NS_IMETHOD SetNoWrap(bool aNoWrap) override; \
  NS_IMETHOD GetRowSpan(int32_t *aRowSpan) override; \
  NS_IMETHOD SetRowSpan(int32_t aRowSpan) override; \
  NS_IMETHOD GetScope(nsAString & aScope) override; \
  NS_IMETHOD SetScope(const nsAString & aScope) override; \
  NS_IMETHOD GetVAlign(nsAString & aVAlign) override; \
  NS_IMETHOD SetVAlign(const nsAString & aVAlign) override; \
  NS_IMETHOD GetWidth(nsAString & aWidth) override; \
  NS_IMETHOD SetWidth(const nsAString & aWidth) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIDOMHTMLTABLECELLELEMENT \
  NS_METHOD GetCellIndex(int32_t *aCellIndex); \
  NS_METHOD GetAbbr(nsAString & aAbbr); \
  NS_METHOD SetAbbr(const nsAString & aAbbr); \
  NS_METHOD GetAlign(nsAString & aAlign); \
  NS_METHOD SetAlign(const nsAString & aAlign); \
  NS_METHOD GetAxis(nsAString & aAxis); \
  NS_METHOD SetAxis(const nsAString & aAxis); \
  NS_METHOD GetBgColor(nsAString & aBgColor); \
  NS_METHOD SetBgColor(const nsAString & aBgColor); \
  NS_METHOD GetCh(nsAString & aCh); \
  NS_METHOD SetCh(const nsAString & aCh); \
  NS_METHOD GetChOff(nsAString & aChOff); \
  NS_METHOD SetChOff(const nsAString & aChOff); \
  NS_METHOD GetColSpan(int32_t *aColSpan); \
  NS_METHOD SetColSpan(int32_t aColSpan); \
  NS_METHOD GetHeaders(nsAString & aHeaders); \
  NS_METHOD SetHeaders(const nsAString & aHeaders); \
  NS_METHOD GetHeight(nsAString & aHeight); \
  NS_METHOD SetHeight(const nsAString & aHeight); \
  NS_METHOD GetNoWrap(bool *aNoWrap); \
  NS_METHOD SetNoWrap(bool aNoWrap); \
  NS_METHOD GetRowSpan(int32_t *aRowSpan); \
  NS_METHOD SetRowSpan(int32_t aRowSpan); \
  NS_METHOD GetScope(nsAString & aScope); \
  NS_METHOD SetScope(const nsAString & aScope); \
  NS_METHOD GetVAlign(nsAString & aVAlign); \
  NS_METHOD SetVAlign(const nsAString & aVAlign); \
  NS_METHOD GetWidth(nsAString & aWidth); \
  NS_METHOD SetWidth(const nsAString & aWidth); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIDOMHTMLTABLECELLELEMENT(_to) \
  NS_IMETHOD GetCellIndex(int32_t *aCellIndex) override { return _to GetCellIndex(aCellIndex); } \
  NS_IMETHOD GetAbbr(nsAString & aAbbr) override { return _to GetAbbr(aAbbr); } \
  NS_IMETHOD SetAbbr(const nsAString & aAbbr) override { return _to SetAbbr(aAbbr); } \
  NS_IMETHOD GetAlign(nsAString & aAlign) override { return _to GetAlign(aAlign); } \
  NS_IMETHOD SetAlign(const nsAString & aAlign) override { return _to SetAlign(aAlign); } \
  NS_IMETHOD GetAxis(nsAString & aAxis) override { return _to GetAxis(aAxis); } \
  NS_IMETHOD SetAxis(const nsAString & aAxis) override { return _to SetAxis(aAxis); } \
  NS_IMETHOD GetBgColor(nsAString & aBgColor) override { return _to GetBgColor(aBgColor); } \
  NS_IMETHOD SetBgColor(const nsAString & aBgColor) override { return _to SetBgColor(aBgColor); } \
  NS_IMETHOD GetCh(nsAString & aCh) override { return _to GetCh(aCh); } \
  NS_IMETHOD SetCh(const nsAString & aCh) override { return _to SetCh(aCh); } \
  NS_IMETHOD GetChOff(nsAString & aChOff) override { return _to GetChOff(aChOff); } \
  NS_IMETHOD SetChOff(const nsAString & aChOff) override { return _to SetChOff(aChOff); } \
  NS_IMETHOD GetColSpan(int32_t *aColSpan) override { return _to GetColSpan(aColSpan); } \
  NS_IMETHOD SetColSpan(int32_t aColSpan) override { return _to SetColSpan(aColSpan); } \
  NS_IMETHOD GetHeaders(nsAString & aHeaders) override { return _to GetHeaders(aHeaders); } \
  NS_IMETHOD SetHeaders(const nsAString & aHeaders) override { return _to SetHeaders(aHeaders); } \
  NS_IMETHOD GetHeight(nsAString & aHeight) override { return _to GetHeight(aHeight); } \
  NS_IMETHOD SetHeight(const nsAString & aHeight) override { return _to SetHeight(aHeight); } \
  NS_IMETHOD GetNoWrap(bool *aNoWrap) override { return _to GetNoWrap(aNoWrap); } \
  NS_IMETHOD SetNoWrap(bool aNoWrap) override { return _to SetNoWrap(aNoWrap); } \
  NS_IMETHOD GetRowSpan(int32_t *aRowSpan) override { return _to GetRowSpan(aRowSpan); } \
  NS_IMETHOD SetRowSpan(int32_t aRowSpan) override { return _to SetRowSpan(aRowSpan); } \
  NS_IMETHOD GetScope(nsAString & aScope) override { return _to GetScope(aScope); } \
  NS_IMETHOD SetScope(const nsAString & aScope) override { return _to SetScope(aScope); } \
  NS_IMETHOD GetVAlign(nsAString & aVAlign) override { return _to GetVAlign(aVAlign); } \
  NS_IMETHOD SetVAlign(const nsAString & aVAlign) override { return _to SetVAlign(aVAlign); } \
  NS_IMETHOD GetWidth(nsAString & aWidth) override { return _to GetWidth(aWidth); } \
  NS_IMETHOD SetWidth(const nsAString & aWidth) override { return _to SetWidth(aWidth); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIDOMHTMLTABLECELLELEMENT(_to) \
  NS_IMETHOD GetCellIndex(int32_t *aCellIndex) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCellIndex(aCellIndex); } \
  NS_IMETHOD GetAbbr(nsAString & aAbbr) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAbbr(aAbbr); } \
  NS_IMETHOD SetAbbr(const nsAString & aAbbr) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAbbr(aAbbr); } \
  NS_IMETHOD GetAlign(nsAString & aAlign) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAlign(aAlign); } \
  NS_IMETHOD SetAlign(const nsAString & aAlign) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAlign(aAlign); } \
  NS_IMETHOD GetAxis(nsAString & aAxis) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAxis(aAxis); } \
  NS_IMETHOD SetAxis(const nsAString & aAxis) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetAxis(aAxis); } \
  NS_IMETHOD GetBgColor(nsAString & aBgColor) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetBgColor(aBgColor); } \
  NS_IMETHOD SetBgColor(const nsAString & aBgColor) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetBgColor(aBgColor); } \
  NS_IMETHOD GetCh(nsAString & aCh) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetCh(aCh); } \
  NS_IMETHOD SetCh(const nsAString & aCh) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetCh(aCh); } \
  NS_IMETHOD GetChOff(nsAString & aChOff) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetChOff(aChOff); } \
  NS_IMETHOD SetChOff(const nsAString & aChOff) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetChOff(aChOff); } \
  NS_IMETHOD GetColSpan(int32_t *aColSpan) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetColSpan(aColSpan); } \
  NS_IMETHOD SetColSpan(int32_t aColSpan) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetColSpan(aColSpan); } \
  NS_IMETHOD GetHeaders(nsAString & aHeaders) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHeaders(aHeaders); } \
  NS_IMETHOD SetHeaders(const nsAString & aHeaders) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetHeaders(aHeaders); } \
  NS_IMETHOD GetHeight(nsAString & aHeight) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHeight(aHeight); } \
  NS_IMETHOD SetHeight(const nsAString & aHeight) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetHeight(aHeight); } \
  NS_IMETHOD GetNoWrap(bool *aNoWrap) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetNoWrap(aNoWrap); } \
  NS_IMETHOD SetNoWrap(bool aNoWrap) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetNoWrap(aNoWrap); } \
  NS_IMETHOD GetRowSpan(int32_t *aRowSpan) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetRowSpan(aRowSpan); } \
  NS_IMETHOD SetRowSpan(int32_t aRowSpan) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetRowSpan(aRowSpan); } \
  NS_IMETHOD GetScope(nsAString & aScope) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetScope(aScope); } \
  NS_IMETHOD SetScope(const nsAString & aScope) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetScope(aScope); } \
  NS_IMETHOD GetVAlign(nsAString & aVAlign) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetVAlign(aVAlign); } \
  NS_IMETHOD SetVAlign(const nsAString & aVAlign) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetVAlign(aVAlign); } \
  NS_IMETHOD GetWidth(nsAString & aWidth) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetWidth(aWidth); } \
  NS_IMETHOD SetWidth(const nsAString & aWidth) override { return !_to ? NS_ERROR_NULL_POINTER : _to->SetWidth(aWidth); } 

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

/* Header file */
class nsDOMHTMLTableCellElement : public nsIDOMHTMLTableCellElement
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIDOMHTMLTABLECELLELEMENT

  nsDOMHTMLTableCellElement();

private:
  ~nsDOMHTMLTableCellElement();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsDOMHTMLTableCellElement, nsIDOMHTMLTableCellElement)

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

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

/* readonly attribute long cellIndex; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetCellIndex(int32_t *aCellIndex)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString abbr; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetAbbr(nsAString & aAbbr)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetAbbr(const nsAString & aAbbr)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString align; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetAlign(nsAString & aAlign)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetAlign(const nsAString & aAlign)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString axis; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetAxis(nsAString & aAxis)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetAxis(const nsAString & aAxis)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString bgColor; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetBgColor(nsAString & aBgColor)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetBgColor(const nsAString & aBgColor)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString ch; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetCh(nsAString & aCh)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetCh(const nsAString & aCh)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString chOff; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetChOff(nsAString & aChOff)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetChOff(const nsAString & aChOff)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long colSpan; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetColSpan(int32_t *aColSpan)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetColSpan(int32_t aColSpan)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString headers; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetHeaders(nsAString & aHeaders)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetHeaders(const nsAString & aHeaders)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString height; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetHeight(nsAString & aHeight)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetHeight(const nsAString & aHeight)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute boolean noWrap; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetNoWrap(bool *aNoWrap)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetNoWrap(bool aNoWrap)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute long rowSpan; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetRowSpan(int32_t *aRowSpan)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetRowSpan(int32_t aRowSpan)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString scope; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetScope(nsAString & aScope)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetScope(const nsAString & aScope)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString vAlign; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetVAlign(nsAString & aVAlign)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetVAlign(const nsAString & aVAlign)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* attribute DOMString width; */
NS_IMETHODIMP nsDOMHTMLTableCellElement::GetWidth(nsAString & aWidth)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP nsDOMHTMLTableCellElement::SetWidth(const nsAString & aWidth)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

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


#endif /* __gen_nsIDOMHTMLTableCellElement_h__ */
