/* -*- Mode: IDL; tab-width: 2; 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 "nsIDOMHTMLElement.idl"

/**
 * The nsIDOMHTMLOutputElement interface is the interface to a HTML
 * <output> element.
 *
 * For more information on this interface, please see
 * http://www.whatwg.org/specs/web-apps/current-work/#the-output-element
 *
 * @status UNDER_DEVELOPMENT
 */

interface nsIDOMValidityState;

[scriptable, uuid(6d6bf653-3eb4-420f-b1b0-6ad919a06926)]
interface nsIDOMHTMLOutputElement : nsIDOMHTMLElement
{
  // DOMSettableTokenList
  readonly attribute nsISupports                htmlFor;
  readonly attribute nsIDOMHTMLFormElement      form;
           attribute DOMString                  name;

  readonly attribute DOMString                  type;
           attribute DOMString                  defaultValue;
           attribute DOMString                  value;

  readonly attribute boolean                    willValidate;
  readonly attribute nsIDOMValidityState        validity;
  readonly attribute DOMString                  validationMessage;
  boolean  checkValidity();
  void     setCustomValidity(in DOMString error);

  /**
   * The labels IDL attribute will be added with bug 556743.
   */
  //readonly attribute nsIDOMNodeList             labels;
};

