[Home](./index.md) > [puppeteer](./puppeteer.md) > [Protocol](./puppeteer.protocol.md) > [DOMSnapshot](./puppeteer.protocol.domsnapshot.md) > [DOMNode](./puppeteer.protocol.domsnapshot.domnode.md)
## Protocol.DOMSnapshot.DOMNode interface
A Node in the DOM tree.
Signature:
```typescript
export interface DOMNode
```
## Properties
| Property | Type | Description |
| --- | --- | --- |
| [attributes](./puppeteer.protocol.domsnapshot.domnode.attributes.md) | [NameValue](./puppeteer.protocol.domsnapshot.namevalue.md)\[\] | Attributes of an Element
node. |
| [backendNodeId](./puppeteer.protocol.domsnapshot.domnode.backendnodeid.md) | [DOM.BackendNodeId](./puppeteer.protocol.dom.backendnodeid.md) | Node
's id, corresponds to DOM.Node.backendNodeId. |
| [baseURL](./puppeteer.protocol.domsnapshot.domnode.baseurl.md) | string | Base URL that Document
or FrameOwner
node uses for URL completion. |
| [childNodeIndexes](./puppeteer.protocol.domsnapshot.domnode.childnodeindexes.md) | [integer](./puppeteer.protocol.integer.md)\[\] | The indexes of the node's child nodes in the domNodes
array returned by getSnapshot
, if any. |
| [contentDocumentIndex](./puppeteer.protocol.domsnapshot.domnode.contentdocumentindex.md) | [integer](./puppeteer.protocol.integer.md) | The index of a frame owner element's content document in the domNodes
array returned by getSnapshot
, if any. |
| [contentLanguage](./puppeteer.protocol.domsnapshot.domnode.contentlanguage.md) | string | Only set for documents, contains the document's content language. |
| [currentSourceURL](./puppeteer.protocol.domsnapshot.domnode.currentsourceurl.md) | string | The selected url for nodes with a srcset attribute. |
| [documentEncoding](./puppeteer.protocol.domsnapshot.domnode.documentencoding.md) | string | Only set for documents, contains the document's character set encoding. |
| [documentURL](./puppeteer.protocol.domsnapshot.domnode.documenturl.md) | string | Document URL that Document
or FrameOwner
node points to. |
| [eventListeners](./puppeteer.protocol.domsnapshot.domnode.eventlisteners.md) | [DOMDebugger.EventListener](./puppeteer.protocol.domdebugger.eventlistener.md)\[\] | Details of the node's event listeners, if any. |
| [frameId](./puppeteer.protocol.domsnapshot.domnode.frameid.md) | [Page.FrameId](./puppeteer.protocol.page.frameid.md) | Frame ID for frame owner elements and also for the document node. |
| [inputChecked](./puppeteer.protocol.domsnapshot.domnode.inputchecked.md) | boolean | Only set for radio and checkbox input elements, indicates if the element has been checked |
| [inputValue](./puppeteer.protocol.domsnapshot.domnode.inputvalue.md) | string | Only set for input elements, contains the input's associated text value. |
| [isClickable](./puppeteer.protocol.domsnapshot.domnode.isclickable.md) | boolean | Whether this DOM node responds to mouse clicks. This includes nodes that have had click event listeners attached via JavaScript as well as anchor tags that naturally navigate when clicked. |
| [layoutNodeIndex](./puppeteer.protocol.domsnapshot.domnode.layoutnodeindex.md) | [integer](./puppeteer.protocol.integer.md) | The index of the node's related layout tree node in the layoutTreeNodes
array returned by getSnapshot
, if any. |
| [nodeName](./puppeteer.protocol.domsnapshot.domnode.nodename.md) | string | Node
's nodeName. |
| [nodeType](./puppeteer.protocol.domsnapshot.domnode.nodetype.md) | [integer](./puppeteer.protocol.integer.md) | Node
's nodeType. |
| [nodeValue](./puppeteer.protocol.domsnapshot.domnode.nodevalue.md) | string | Node
's nodeValue. |
| [optionSelected](./puppeteer.protocol.domsnapshot.domnode.optionselected.md) | boolean | Only set for option elements, indicates if the element has been selected |
| [originURL](./puppeteer.protocol.domsnapshot.domnode.originurl.md) | string | The url of the script (if any) that generates this node. |
| [pseudoElementIndexes](./puppeteer.protocol.domsnapshot.domnode.pseudoelementindexes.md) | [integer](./puppeteer.protocol.integer.md)\[\] | Indexes of pseudo elements associated with this node in the domNodes
array returned by getSnapshot
, if any. |
| [pseudoType](./puppeteer.protocol.domsnapshot.domnode.pseudotype.md) | [DOM.PseudoType](./puppeteer.protocol.dom.pseudotype.md) | Type of a pseudo element node. |
| [publicId](./puppeteer.protocol.domsnapshot.domnode.publicid.md) | string | DocumentType
node's publicId. |
| [scrollOffsetX](./puppeteer.protocol.domsnapshot.domnode.scrolloffsetx.md) | number | Scroll offsets, set when this node is a Document. |
| [scrollOffsetY](./puppeteer.protocol.domsnapshot.domnode.scrolloffsety.md) | number | |
| [shadowRootType](./puppeteer.protocol.domsnapshot.domnode.shadowroottype.md) | [DOM.ShadowRootType](./puppeteer.protocol.dom.shadowroottype.md) | Shadow root type. |
| [systemId](./puppeteer.protocol.domsnapshot.domnode.systemid.md) | string | DocumentType
node's systemId. |
| [textValue](./puppeteer.protocol.domsnapshot.domnode.textvalue.md) | string | Only set for textarea elements, contains the text value. |