"""
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.QtGui, except for defaults which are replaced by "...".
"""
from typing import overload
import PySide6.QtCore
import PySide6.QtGui

bytes = str


class QRgba64(object):
    """
    https://doc.qt.io/qt-6/qrgba64.html

    **Detailed Description**

    QRgba64 is a 64-bit data-structure containing four 16-bit color channels:
    Red, green, blue and alpha.

    QRgba64 can be used as a replacement for **QRgb**  when higher precision is
    needed. In particular a premultiplied QRgba64 can operate on unpremultiplied
    **QRgb**  without loss of precision except for alpha 0.

    **See also** **QRgb**  and **QColor** .
    """

    @overload
    def __init__(self) -> None:
        ...

    @overload
    def __init__(self, QRgba64: PySide6.QtGui.QRgba64) -> None:
        ...

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

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

        **quint16 QRgba64::alpha() const**

        Returns the 16-bit alpha channel.

        **See also** **setAlpha** ().
        """
        ...

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

        **quint8 QRgba64::alpha8() const**

        Returns the alpha channel as an 8-bit.
        """
        ...

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

        **quint16 QRgba64::blue() const**

        Returns the 16-bit blue color component.

        **See also** **setBlue** ().
        """
        ...

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

        **quint8 QRgba64::blue8() const**

        Returns the blue color component as an 8-bit.
        """
        ...

    @staticmethod
    def fromArgb32(rgb: int) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#fromArgb32

        **[static] QRgba64 QRgba64::fromArgb32(uint rgb )**

        Constructs a **QRgba64**  value from the 32bit ARGB value **rgb**.

        **See also** **fromRgba** ().
        """
        ...

    @staticmethod
    def fromRgba(red: int, green: int, blue: int, alpha: int) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#fromRgba

        **[static] QRgba64 QRgba64::fromRgba(quint8 red , quint8 green , quint8
        blue , quint8 alpha )**

        Constructs a **QRgba64**  value from the four 8-bit color channels
        **red** , **green** , **blue** and **alpha**.

        **See also** **fromArgb32** ().
        """
        ...

    @overload
    @staticmethod
    def fromRgba64(c: int) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#fromRgba64

        **[static] QRgba64 QRgba64::fromRgba64(quint64 c )**

        Returns **c** as a **QRgba64**  struct.

        **See also** **fromArgb32** ().
        """
        ...

    @overload
    @staticmethod
    def fromRgba64(
        red: int, green: int, blue: int, alpha: int
    ) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#fromRgba64-1

        **[static] QRgba64 QRgba64::fromRgba64(quint16 r , quint16 g , quint16 b
        , quint16 a )**

        Returns the **QRgba64**  quadruplet ( **r** , **g** , **b** , **a** ).

        **See also** **fromRgba** ().
        """
        ...

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

        **quint16 QRgba64::green() const**

        Returns the 16-bit green color component.

        **See also** **setGreen** ().
        """
        ...

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

        **quint8 QRgba64::green8() const**

        Returns the green color component as an 8-bit.
        """
        ...

    def isOpaque(self) -> bool:
        """
        https://doc.qt.io/qt-6/qrgba64.html#isOpaque

        **bool QRgba64::isOpaque() const**

        Returns whether the color is fully opaque.

        **See also** **isTransparent** () and **alpha** ().
        """
        ...

    def isTransparent(self) -> bool:
        """
        https://doc.qt.io/qt-6/qrgba64.html#isTransparent

        **bool QRgba64::isTransparent() const**

        Returns whether the color is transparent.

        **See also** **isOpaque** () and **alpha** ().
        """
        ...

    def premultiplied(self) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#premultiplied

        **QRgba64 QRgba64::premultiplied() const**

        Returns the color with the alpha premultiplied.

        **See also** **unpremultiplied** ().
        """
        ...

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

        **quint16 QRgba64::red() const**

        Returns the 16-bit red color component.

        **See also** **setRed** ().
        """
        ...

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

        **quint8 QRgba64::red8() const**

        Returns the red color component as an 8-bit.
        """
        ...

    def setAlpha(self, _alpha: int) -> None:
        """
        https://doc.qt.io/qt-6/qrgba64.html#setAlpha

        **void QRgba64::setAlpha(quint16 alpha )**

        Sets the alpha of this color to **alpha**.

        **See also** **alpha** ().
        """
        ...

    def setBlue(self, _blue: int) -> None:
        """
        https://doc.qt.io/qt-6/qrgba64.html#setBlue

        **void QRgba64::setBlue(quint16 blue )**

        Sets the blue color component of this color to **blue**.

        **See also** **blue** ().
        """
        ...

    def setGreen(self, _green: int) -> None:
        """
        https://doc.qt.io/qt-6/qrgba64.html#setGreen

        **void QRgba64::setGreen(quint16 green )**

        Sets the green color component of this color to **green**.

        **See also** **green** ().
        """
        ...

    def setRed(self, _red: int) -> None:
        """
        https://doc.qt.io/qt-6/qrgba64.html#setRed

        **void QRgba64::setRed(quint16 red )**

        Sets the red color component of this color to **red**.

        **See also** **red** ().
        """
        ...

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

        **uint QRgba64::toArgb32() const**

        Returns the color as a 32-bit ARGB value.

        **See also** **fromArgb32** ().
        """
        ...

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

        **ushort QRgba64::toRgb16() const**

        Returns the color as a 16-bit RGB value.

        **See also** **toArgb32** ().
        """
        ...

    def unpremultiplied(self) -> PySide6.QtGui.QRgba64:
        """
        https://doc.qt.io/qt-6/qrgba64.html#unpremultiplied

        **QRgba64 QRgba64::unpremultiplied() const**

        Returns the color with the alpha unpremultiplied.

        **See also** **premultiplied** ().
        """
        ...
