| // Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [ |
| ImplementedAs=ContainerNode, |
| ] interface ParentNode : Node { |
| readonly attribute Node firstChild; |
| readonly attribute Node lastChild; |
| readonly attribute Element firstElementChild; |
| readonly attribute Element lastElementChild; |
| |
| sequence<Node> getChildNodes(); |
| sequence<Element> getChildElements(); |
| |
| [RaisesException] void append(sequence<Node> nodes); |
| [RaisesException] Node appendChild(Node node); |
| [RaisesException] void prepend(sequence<Node> nodes); |
| [RaisesException] Node prependChild(Node node); |
| |
| void removeChildren(); |
| [RaisesException] Node setChild(Node node); |
| [RaisesException] void setChildren(sequence<Node> nodes); |
| |
| // TODO(abarth): Remove when we have the selector object. |
| [RaisesException] Element querySelector(DOMString selectors); |
| [RaisesException] sequence<Element> querySelectorAll(DOMString selectors); |
| }; |