"""
PySide stub files generated by **IceSpringPySideStubs**

Home: https://baijifeilong.github.io/2022/01/06/ice-spring-pyside-stubs/index.html

Github: https://github.com/baijifeilong/IceSpringPySideStubs

PyPI(PySide2): https://pypi.org/project/IceSpringPySideStubs-PySide2

PyPI(PySide6): https://pypi.org/project/IceSpringPySideStubs-PySide6

PyPI(PyQt5): https://pypi.org/project/IceSpringPySideStubs-PyQt5

PyPI(PyQt6): https://pypi.org/project/IceSpringPySideStubs-PyQt6

Generated by BaiJiFeiLong@gmail.com

License: MIT
"""
import typing
from PyQt6.QtXml import *


class QDomDocumentFragment(QDomNode):
    """
    https://doc.qt.io/qt-6/qdomdocumentfragment.html

    **Detailed Description**

    If you want to do complex tree operations it is useful to have a lightweight
    class to store nodes and their relations. QDomDocumentFragment stores a
    subtree of a document which does not necessarily represent a well-formed XML
    document.

    QDomDocumentFragment is also useful if you want to group several nodes in a
    list and insert them all together as children of some node. In these cases
    QDomDocumentFragment can be used as a temporary container for this list of
    children.

    The most important feature of QDomDocumentFragment is that it is treated in
    a special way by **QDomNode::insertAfter** (), **QDomNode::insertBefore**
    (), **QDomNode::replaceChild** () and **QDomNode::appendChild** (): instead
    of inserting the fragment itself, all the fragment's children are inserted.
    """

    @typing.overload
    def __init__(self) -> None:
        """
        https://doc.qt.io/qt-6/qdomdocumentfragment.html#QDomDocumentFragment

        **QDomDocumentFragment::QDomDocumentFragment()**

        Constructs an empty document fragment.
        """
        ...

    @typing.overload
    def __init__(self, x: "QDomDocumentFragment") -> None:
        """
        https://doc.qt.io/qt-6/qdomdocumentfragment.html#QDomDocumentFragment-1

        **QDomDocumentFragment::QDomDocumentFragment(const QDomDocumentFragment
        & x )**

        Constructs a copy of **x**.

        The data of the copy is shared (shallow copy): modifying one node will
        also change the other. If you want to make a deep copy, use
        **cloneNode** ().
        """
        ...

    def nodeType(self) -> QDomNode.NodeType:
        """
        https://doc.qt.io/qt-6/qdomdocumentfragment.html#nodeType

        **QDomNode::NodeType QDomDocumentFragment::nodeType() const**

        Returns `DocumentFragment`.

        **See also** **isDocumentFragment** () and
        **QDomNode::toDocumentFragment** ().
        """
        ...
