"""
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

Generated by BaiJiFeiLong@gmail.com

Licence: GPLv3
"""
"""
This file contains the exact signatures for all functions in module
PySide6.QtCore, except for defaults which are replaced by "...".
"""
from typing import Any, overload
import PySide6.QtCore

bytes = str


class QModelRoleData(object):
    """
    https://doc.qt.io/qt-6/qmodelroledata.html

    **Detailed Description**

    QModelRoleData objects store an item role (which is a value from the
    **Qt::ItemDataRole**  enumeration, or an arbitrary integer for a custom
    role) as well as the data associated with that role.

    A QModelRoleData object is typically created by views or delegates, setting
    which role they want to fetch the data for. The object is then passed to
    models (see **QAbstractItemModel::multiData** ()), which populate the data
    corresponding to the role stored. Finally, the view visualizes the data
    retrieved from the model.

    **See also** **Model/View Programming**  and **QModelRoleDataSpan** .
    """

    @overload
    def __init__(self, QModelRoleData: PySide6.QtCore.QModelRoleData) -> None:
        """
        https://doc.qt.io/qt-6/qmodelroledata.html#QModelRoleData

        **QModelRoleData::QModelRoleData(int role )**

        Constructs a QModelRoleData object for the given **role**.

        **See also** **Qt::ItemDataRole** .
        """
        ...

    @overload
    def __init__(self, role: int) -> None:
        """
        https://doc.qt.io/qt-6/qmodelroledata.html#QModelRoleData

        **QModelRoleData::QModelRoleData(int role )**

        Constructs a QModelRoleData object for the given **role**.

        **See also** **Qt::ItemDataRole** .
        """
        ...

    @staticmethod
    def __copy__() -> None:
        ...

    def clearData(self) -> None:
        """
        https://doc.qt.io/qt-6/qmodelroledata.html#clearData

        **void QModelRoleData::clearData()**

        Clears the data held by this object. Note that the role is unchanged;
        only the data is cleared.

        **See also** **data** ().
        """
        ...

    def data(self) -> Any:
        """
        https://doc.qt.io/qt-6/qmodelroledata.html#data

        **QVariant &QModelRoleData::data()**

        Returns the data held by this object as a modifiable reference.

        **See also** **setData** ().
        """
        ...

    def role(self) -> int:
        """
        https://doc.qt.io/qt-6/qmodelroledata.html#role

        **int QModelRoleData::role() const**

        Returns the role held by this object.

        **See also** **Qt::ItemDataRole** .
        """
        ...
