[
Constructor,
ConstructorCallWith=ScriptExecutionContext,
ImplementationLacksVTable
] interface Range {
[GetterRaisesException] readonly attribute Node startContainer;
[GetterRaisesException] readonly attribute long startOffset;
[GetterRaisesException] readonly attribute Node endContainer;
[GetterRaisesException] readonly attribute long endOffset;
[GetterRaisesException] readonly attribute boolean collapsed;
[GetterRaisesException] readonly attribute Node commonAncestorContainer;
[ObjCLegacyUnnamedParameters, RaisesException] void setStart([Default=Undefined] optional Node refNode,
[Default=Undefined] optional long offset);
[ObjCLegacyUnnamedParameters, RaisesException] void setEnd([Default=Undefined] optional Node refNode,
[Default=Undefined] optional long offset);
[RaisesException] void setStartBefore([Default=Undefined] optional Node refNode);
[RaisesException] void setStartAfter([Default=Undefined] optional Node refNode);
[RaisesException] void setEndBefore([Default=Undefined] optional Node refNode);
[RaisesException] void setEndAfter([Default=Undefined] optional Node refNode);
[RaisesException] void collapse([Default=Undefined] optional boolean toStart);
[RaisesException] void selectNode([Default=Undefined] optional Node refNode);
[RaisesException] void selectNodeContents([Default=Undefined] optional Node refNode);
const unsigned short START_TO_START = 0;
const unsigned short START_TO_END = 1;
const unsigned short END_TO_END = 2;
const unsigned short END_TO_START = 3;
[ObjCLegacyUnnamedParameters, RaisesException] short compareBoundaryPoints([Default=Undefined] optional CompareHow how,
[Default=Undefined] optional Range sourceRange);
[RaisesException] void deleteContents();
[RaisesException] DocumentFragment extractContents();
[RaisesException] DocumentFragment cloneContents();
[RaisesException] void insertNode([Default=Undefined] optional Node newNode);
[RaisesException] void surroundContents([Default=Undefined] optional Node newParent);
[RaisesException] Range cloneRange();
[RaisesException] DOMString toString();
[RaisesException] void detach();
#