# Copyright (C) 2022 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
"""
This file contains the exact signatures for all functions in module
PySide6.QtQuick, except for defaults which are replaced by "...".
"""

# mypy: disable-error-code="override, overload-overlap"
# Module `PySide6.QtQuick`

import PySide6.QtQuick
import PySide6.QtCore
import PySide6.QtGui
import PySide6.QtQml

import enum
import typing
import collections.abc
from PySide6.QtCore import Signal
from shiboken6 import Shiboken


class QIntList: ...


class QQuickAsyncImageProvider(PySide6.QtQuick.QQuickImageProvider): ...


class QQuickFramebufferObject(PySide6.QtQuick.QQuickItem):

    mirrorVerticallyChanged  : typing.ClassVar[Signal] = ... # mirrorVerticallyChanged(bool)
    textureFollowsItemSizeChanged: typing.ClassVar[Signal] = ... # textureFollowsItemSizeChanged(bool)

    class Renderer(Shiboken.Object): ...


class QQuickGraphicsConfiguration(Shiboken.Object): ...


class QQuickGraphicsDevice(Shiboken.Object): ...


class QQuickImageProvider(PySide6.QtQml.QQmlImageProviderBase): ...


class QQuickImageResponse(PySide6.QtCore.QObject):

    finished                 : typing.ClassVar[Signal] = ... # finished()


class QQuickItem(PySide6.QtCore.QObject, PySide6.QtQml.QQmlParserStatus):

    activeFocusChanged       : typing.ClassVar[Signal] = ... # activeFocusChanged(bool)
    activeFocusOnTabChanged  : typing.ClassVar[Signal] = ... # activeFocusOnTabChanged(bool)
    antialiasingChanged      : typing.ClassVar[Signal] = ... # antialiasingChanged(bool)
    baselineOffsetChanged    : typing.ClassVar[Signal] = ... # baselineOffsetChanged(double)
    childrenChanged          : typing.ClassVar[Signal] = ... # childrenChanged()
    childrenRectChanged      : typing.ClassVar[Signal] = ... # childrenRectChanged(QRectF)
    clipChanged              : typing.ClassVar[Signal] = ... # clipChanged(bool)
    containmentMaskChanged   : typing.ClassVar[Signal] = ... # containmentMaskChanged()
    enabledChanged           : typing.ClassVar[Signal] = ... # enabledChanged()
    focusChanged             : typing.ClassVar[Signal] = ... # focusChanged(bool)
    focusPolicyChanged       : typing.ClassVar[Signal] = ... # focusPolicyChanged(Qt::FocusPolicy)
    heightChanged            : typing.ClassVar[Signal] = ... # heightChanged()
    implicitHeightChanged    : typing.ClassVar[Signal] = ... # implicitHeightChanged()
    implicitWidthChanged     : typing.ClassVar[Signal] = ... # implicitWidthChanged()
    opacityChanged           : typing.ClassVar[Signal] = ... # opacityChanged()
    paletteChanged           : typing.ClassVar[Signal] = ... # paletteChanged()
    paletteCreated           : typing.ClassVar[Signal] = ... # paletteCreated()
    parentChanged            : typing.ClassVar[Signal] = ... # parentChanged(QQuickItem*)
    rotationChanged          : typing.ClassVar[Signal] = ... # rotationChanged()
    scaleChanged             : typing.ClassVar[Signal] = ... # scaleChanged()
    smoothChanged            : typing.ClassVar[Signal] = ... # smoothChanged(bool)
    stateChanged             : typing.ClassVar[Signal] = ... # stateChanged(QString)
    transformOriginChanged   : typing.ClassVar[Signal] = ... # transformOriginChanged(TransformOrigin)
    visibleChanged           : typing.ClassVar[Signal] = ... # visibleChanged()
    visibleChildrenChanged   : typing.ClassVar[Signal] = ... # visibleChildrenChanged()
    widthChanged             : typing.ClassVar[Signal] = ... # widthChanged()
    windowChanged            : typing.ClassVar[Signal] = ... # windowChanged(QQuickWindow*)
    xChanged                 : typing.ClassVar[Signal] = ... # xChanged()
    yChanged                 : typing.ClassVar[Signal] = ... # yChanged()
    zChanged                 : typing.ClassVar[Signal] = ... # zChanged()

    class Flag(enum.Flag):

        ItemClipsChildrenToShape  = 0x1
        ItemAcceptsInputMethod    = 0x2
        ItemIsFocusScope          = 0x4
        ItemHasContents           = 0x8
        ItemAcceptsDrops          = 0x10
        ItemIsViewport            = 0x20
        ItemObservesViewport      = 0x40

    class ItemChange(enum.Enum):

        ItemChildAddedChange      = 0x0
        ItemChildRemovedChange    = 0x1
        ItemSceneChange           = 0x2
        ItemVisibleHasChanged     = 0x3
        ItemParentHasChanged      = 0x4
        ItemOpacityHasChanged     = 0x5
        ItemActiveFocusHasChanged = 0x6
        ItemRotationHasChanged    = 0x7
        ItemAntialiasingHasChanged = 0x8
        ItemDevicePixelRatioHasChanged = 0x9
        ItemEnabledHasChanged     = 0xa
        ItemScaleHasChanged       = 0xb
        ItemTransformHasChanged   = 0xc

    class TransformOrigin(enum.Enum):

        TopLeft                   = 0x0
        Top                       = 0x1
        TopRight                  = 0x2
        Left                      = 0x3
        Center                    = 0x4
        Right                     = 0x5
        BottomLeft                = 0x6
        Bottom                    = 0x7
        BottomRight               = 0x8

    class UpdatePaintNodeData(Shiboken.Object): ...


    def __repr__(self, /) -> str: ...


class QQuickItemGrabResult(PySide6.QtCore.QObject):

    ready                    : typing.ClassVar[Signal] = ... # ready()


class QQuickOpenGLUtils(Shiboken.Object): ...


class QQuickPaintedItem(PySide6.QtQuick.QQuickItem):

    contentsScaleChanged     : typing.ClassVar[Signal] = ... # contentsScaleChanged()
    contentsSizeChanged      : typing.ClassVar[Signal] = ... # contentsSizeChanged()
    fillColorChanged         : typing.ClassVar[Signal] = ... # fillColorChanged()
    renderTargetChanged      : typing.ClassVar[Signal] = ... # renderTargetChanged()
    textureSizeChanged       : typing.ClassVar[Signal] = ... # textureSizeChanged()

    class PerformanceHint(enum.Flag):

        FastFBOResizing           = 0x1

    class RenderTarget(enum.Enum):

        Image                     = 0x0
        FramebufferObject         = 0x1
        InvertedYFramebufferObject = 0x2


class QQuickRenderControl(PySide6.QtCore.QObject):

    renderRequested          : typing.ClassVar[Signal] = ... # renderRequested()
    sceneChanged             : typing.ClassVar[Signal] = ... # sceneChanged()


class QQuickRenderTarget(Shiboken.Object):

    class Flag(enum.Flag):

        MultisampleResolve        = 0x1


class QQuickRhiItem(PySide6.QtQuick.QQuickItem):

    alphaBlendingChanged     : typing.ClassVar[Signal] = ... # alphaBlendingChanged()
    autoRenderTargetChanged  : typing.ClassVar[Signal] = ... # autoRenderTargetChanged()
    colorBufferFormatChanged : typing.ClassVar[Signal] = ... # colorBufferFormatChanged()
    effectiveColorBufferSizeChanged: typing.ClassVar[Signal] = ... # effectiveColorBufferSizeChanged()
    fixedColorBufferHeightChanged: typing.ClassVar[Signal] = ... # fixedColorBufferHeightChanged()
    fixedColorBufferWidthChanged: typing.ClassVar[Signal] = ... # fixedColorBufferWidthChanged()
    mirrorVerticallyChanged  : typing.ClassVar[Signal] = ... # mirrorVerticallyChanged()
    sampleCountChanged       : typing.ClassVar[Signal] = ... # sampleCountChanged()

    class TextureFormat(enum.Enum):

        RGBA8                     = 0x0
        RGBA16F                   = 0x1
        RGBA32F                   = 0x2
        RGB10A2                   = 0x3


class QQuickRhiItemRenderer(Shiboken.Object): ...


class QQuickTextDocument(PySide6.QtCore.QObject):

    errorStringChanged       : typing.ClassVar[Signal] = ... # errorStringChanged()
    modifiedChanged          : typing.ClassVar[Signal] = ... # modifiedChanged()
    sourceChanged            : typing.ClassVar[Signal] = ... # sourceChanged()
    statusChanged            : typing.ClassVar[Signal] = ... # statusChanged()
    textDocumentChanged      : typing.ClassVar[Signal] = ... # textDocumentChanged()

    class Status(enum.Enum):

        Null                      = 0x0
        Loading                   = 0x1
        Loaded                    = 0x2
        Saving                    = 0x3
        Saved                     = 0x4
        ReadError                 = 0x5
        WriteError                = 0x6
        NonLocalFileError         = 0x7


class QQuickTextureFactory(PySide6.QtCore.QObject): ...


class QQuickTransform(PySide6.QtCore.QObject): ...


class QQuickView(PySide6.QtQuick.QQuickWindow):

    statusChanged            : typing.ClassVar[Signal] = ... # statusChanged(QQuickView::Status)

    class ResizeMode(enum.Enum):

        SizeViewToRootObject      = 0x0
        SizeRootObjectToView      = 0x1

    class Status(enum.Enum):

        Null                      = 0x0
        Ready                     = 0x1
        Loading                   = 0x2
        Error                     = 0x3


class QQuickWindow(PySide6.QtGui.QWindow):

    activeFocusItemChanged   : typing.ClassVar[Signal] = ... # activeFocusItemChanged()
    afterAnimating           : typing.ClassVar[Signal] = ... # afterAnimating()
    afterFrameEnd            : typing.ClassVar[Signal] = ... # afterFrameEnd()
    afterRenderPassRecording : typing.ClassVar[Signal] = ... # afterRenderPassRecording()
    afterRendering           : typing.ClassVar[Signal] = ... # afterRendering()
    afterSynchronizing       : typing.ClassVar[Signal] = ... # afterSynchronizing()
    beforeFrameBegin         : typing.ClassVar[Signal] = ... # beforeFrameBegin()
    beforeRenderPassRecording: typing.ClassVar[Signal] = ... # beforeRenderPassRecording()
    beforeRendering          : typing.ClassVar[Signal] = ... # beforeRendering()
    beforeSynchronizing      : typing.ClassVar[Signal] = ... # beforeSynchronizing()
    closing                  : typing.ClassVar[Signal] = ... # closing(QQuickCloseEvent*)
    colorChanged             : typing.ClassVar[Signal] = ... # colorChanged(QColor)
    frameSwapped             : typing.ClassVar[Signal] = ... # frameSwapped()
    paletteChanged           : typing.ClassVar[Signal] = ... # paletteChanged()
    paletteCreated           : typing.ClassVar[Signal] = ... # paletteCreated()
    sceneGraphAboutToStop    : typing.ClassVar[Signal] = ... # sceneGraphAboutToStop()
    sceneGraphError          : typing.ClassVar[Signal] = ... # sceneGraphError(QQuickWindow::SceneGraphError,QString)
    sceneGraphInitialized    : typing.ClassVar[Signal] = ... # sceneGraphInitialized()
    sceneGraphInvalidated    : typing.ClassVar[Signal] = ... # sceneGraphInvalidated()

    class CreateTextureOption(enum.Flag):

        TextureHasAlphaChannel    = 0x1
        TextureHasMipmaps         = 0x2
        TextureOwnsGLTexture      = 0x4
        TextureCanUseAtlas        = 0x8
        TextureIsOpaque           = 0x10

    class GraphicsStateInfo(Shiboken.Object): ...

    class RenderStage(enum.Enum):

        BeforeSynchronizingStage  = 0x0
        AfterSynchronizingStage   = 0x1
        BeforeRenderingStage      = 0x2
        AfterRenderingStage       = 0x3
        AfterSwapStage            = 0x4
        NoStage                   = 0x5

    class SceneGraphError(enum.Enum):

        ContextNotAvailable       = 0x1

    class TextRenderType(enum.Enum):

        QtTextRendering           = 0x0
        NativeTextRendering       = 0x1
        CurveTextRendering        = 0x2


    def __repr__(self, /) -> str: ...


class QSGBasicGeometryNode(PySide6.QtQuick.QSGNode): ...


class QSGClipNode(PySide6.QtQuick.QSGBasicGeometryNode): ...


class QSGDynamicTexture(PySide6.QtQuick.QSGTexture): ...


class QSGFlatColorMaterial(PySide6.QtQuick.QSGMaterial): ...


class QSGGeometry(Shiboken.Object):

    class Attribute(Shiboken.Object): ...

    class AttributeSet(Shiboken.Object): ...

    class AttributeType(enum.Enum):

        UnknownAttribute          = 0x0
        PositionAttribute         = 0x1
        ColorAttribute            = 0x2
        TexCoordAttribute         = 0x3
        TexCoord1Attribute        = 0x4
        TexCoord2Attribute        = 0x5

    class ColoredPoint2D(Shiboken.Object): ...

    class DataPattern(enum.Enum):

        AlwaysUploadPattern       = 0x0
        StreamPattern             = 0x1
        DynamicPattern            = 0x2
        StaticPattern             = 0x3

    class DrawingMode(enum.IntEnum):

        DrawPoints                = 0x0
        DrawLines                 = 0x1
        DrawLineLoop              = 0x2
        DrawLineStrip             = 0x3
        DrawTriangles             = 0x4
        DrawTriangleStrip         = 0x5
        DrawTriangleFan           = 0x6

    class Point2D(Shiboken.Object): ...

    class TexturedPoint2D(Shiboken.Object): ...

    class Type(enum.Enum):

        ByteType                  = 0x1400
        UnsignedByteType          = 0x1401
        ShortType                 = 0x1402
        UnsignedShortType         = 0x1403
        IntType                   = 0x1404
        UnsignedIntType           = 0x1405
        FloatType                 = 0x1406
        Bytes2Type                = 0x1407
        Bytes3Type                = 0x1408
        Bytes4Type                = 0x1409
        DoubleType                = 0x140a


class QSGGeometryNode(PySide6.QtQuick.QSGBasicGeometryNode): ...
    def __repr__(self, /) -> str: ...


class QSGImageNode(PySide6.QtQuick.QSGGeometryNode):

    class TextureCoordinatesTransformFlag(enum.Flag):

        NoTransform               = 0x0
        MirrorHorizontally        = 0x1
        MirrorVertically          = 0x2


class QSGMaterial(Shiboken.Object):

    class Flag(enum.Flag):

        Blending                  = 0x1
        RequiresDeterminant       = 0x2
        RequiresFullMatrixExceptTranslate = 0x6
        RequiresFullMatrix        = 0xe
        CustomCompileStep         = 0x10
        NoBatching                = 0x10
        MultiView2                = 0x10000
        MultiView3                = 0x20000
        MultiView4                = 0x40000


class QSGMaterialShader(Shiboken.Object):

    class Flag(enum.Flag):

        UpdatesGraphicsPipelineState = 0x1

    class GraphicsPipelineState(Shiboken.Object):

        class BlendFactor(enum.Enum):

            Zero                      = 0x0
            One                       = 0x1
            SrcColor                  = 0x2
            OneMinusSrcColor          = 0x3
            DstColor                  = 0x4
            OneMinusDstColor          = 0x5
            SrcAlpha                  = 0x6
            OneMinusSrcAlpha          = 0x7
            DstAlpha                  = 0x8
            OneMinusDstAlpha          = 0x9
            ConstantColor             = 0xa
            OneMinusConstantColor     = 0xb
            ConstantAlpha             = 0xc
            OneMinusConstantAlpha     = 0xd
            SrcAlphaSaturate          = 0xe
            Src1Color                 = 0xf
            OneMinusSrc1Color         = 0x10
            Src1Alpha                 = 0x11
            OneMinusSrc1Alpha         = 0x12

        class BlendOp(enum.Enum):

            Add                       = 0x0
            Subtract                  = 0x1
            ReverseSubtract           = 0x2
            Min                       = 0x3
            Max                       = 0x4

        class ColorMaskComponent(enum.Flag):

            R                         = 0x1
            G                         = 0x2
            B                         = 0x4
            A                         = 0x8

        class CullMode(enum.Enum):

            CullNone                  = 0x0
            CullFront                 = 0x1
            CullBack                  = 0x2

        class PolygonMode(enum.Enum):

            Fill                      = 0x0
            Line                      = 0x1


    class RenderState(Shiboken.Object):

        class DirtyState(enum.Flag):

            DirtyMatrix               = 0x1
            DirtyOpacity              = 0x2
            DirtyCachedMaterialData   = 0x4
            DirtyAll                  = 0xffff


    class Stage(enum.Enum):

        VertexStage               = 0x0
        FragmentStage             = 0x1


class QSGMaterialType(Shiboken.Object): ...


class QSGNinePatchNode(PySide6.QtQuick.QSGGeometryNode): ...


class QSGNode(Shiboken.Object):

    class DirtyStateBit(enum.Flag):

        DirtyUsePreprocess        = 0x2
        DirtySubtreeBlocked       = 0x80
        DirtyMatrix               = 0x100
        DirtyNodeAdded            = 0x400
        DirtyNodeRemoved          = 0x800
        DirtyGeometry             = 0x1000
        DirtyMaterial             = 0x2000
        DirtyOpacity              = 0x4000
        DirtyForceUpdate          = 0x8000
        DirtyPropagationMask      = 0xc500

    class Flag(enum.Flag):

        OwnedByParent             = 0x1
        UsePreprocess             = 0x2
        OwnsGeometry              = 0x10000
        OwnsMaterial              = 0x20000
        OwnsOpaqueMaterial        = 0x40000
        IsVisitableNode           = 0x1000000

    class NodeType(enum.Enum):

        BasicNodeType             = 0x0
        GeometryNodeType          = 0x1
        TransformNodeType         = 0x2
        ClipNodeType              = 0x3
        OpacityNodeType           = 0x4
        RootNodeType              = 0x5
        RenderNodeType            = 0x6


    def __repr__(self, /) -> str: ...


class QSGNodeVisitor(Shiboken.Object): ...


class QSGOpacityNode(PySide6.QtQuick.QSGNode): ...
    def __repr__(self, /) -> str: ...


class QSGOpaqueTextureMaterial(PySide6.QtQuick.QSGMaterial): ...


class QSGRectangleNode(PySide6.QtQuick.QSGGeometryNode): ...


class QSGRenderNode(PySide6.QtQuick.QSGNode):

    class RenderState(Shiboken.Object): ...

    class RenderingFlag(enum.Flag):

        BoundedRectRendering      = 0x1
        DepthAwareRendering       = 0x2
        OpaqueRendering           = 0x4
        NoExternalRendering       = 0x8

    class StateFlag(enum.Flag):

        DepthState                = 0x1
        StencilState              = 0x2
        ScissorState              = 0x4
        ColorState                = 0x8
        BlendState                = 0x10
        CullState                 = 0x20
        ViewportState             = 0x40
        RenderTargetState         = 0x80


class QSGRendererInterface(Shiboken.Object):

    class GraphicsApi(enum.Enum):

        Unknown                   = 0x0
        Software                  = 0x1
        OpenVG                    = 0x2
        OpenGL                    = 0x3
        OpenGLRhi                 = 0x3
        Direct3D11                = 0x4
        Direct3D11Rhi             = 0x4
        Vulkan                    = 0x5
        VulkanRhi                 = 0x5
        Metal                     = 0x6
        MetalRhi                  = 0x6
        Null                      = 0x7
        NullRhi                   = 0x7
        Direct3D12                = 0x8

    class RenderMode(enum.Enum):

        RenderMode2D              = 0x0
        RenderMode2DNoDepthBuffer = 0x1
        RenderMode3D              = 0x2

    class Resource(enum.Enum):

        DeviceResource            = 0x0
        CommandQueueResource      = 0x1
        CommandListResource       = 0x2
        PainterResource           = 0x3
        RhiResource               = 0x4
        RhiSwapchainResource      = 0x5
        RhiRedirectCommandBuffer  = 0x6
        RhiRedirectRenderTarget   = 0x7
        PhysicalDeviceResource    = 0x8
        OpenGLContextResource     = 0x9
        DeviceContextResource     = 0xa
        CommandEncoderResource    = 0xb
        VulkanInstanceResource    = 0xc
        RenderPassResource        = 0xd
        RedirectPaintDevice       = 0xe
        GraphicsQueueFamilyIndexResource = 0xf
        GraphicsQueueIndexResource = 0x10

    class ShaderCompilationType(enum.Flag):

        RuntimeCompilation        = 0x1
        OfflineCompilation        = 0x2

    class ShaderSourceType(enum.Flag):

        ShaderSourceString        = 0x1
        ShaderSourceFile          = 0x2
        ShaderByteCode            = 0x4

    class ShaderType(enum.Enum):

        UnknownShadingLanguage    = 0x0
        GLSL                      = 0x1
        HLSL                      = 0x2
        RhiShader                 = 0x3


class QSGRootNode(PySide6.QtQuick.QSGNode): ...
    def __repr__(self, /) -> str: ...


class QSGSimpleRectNode(PySide6.QtQuick.QSGGeometryNode): ...


class QSGSimpleTextureNode(PySide6.QtQuick.QSGGeometryNode):

    class TextureCoordinatesTransformFlag(enum.Flag):

        NoTransform               = 0x0
        MirrorHorizontally        = 0x1
        MirrorVertically          = 0x2


class QSGTextNode(PySide6.QtQuick.QSGTransformNode):

    class RenderType(enum.Enum):

        QtRendering               = 0x0
        NativeRendering           = 0x1
        CurveRendering            = 0x2

    class TextStyle(enum.Enum):

        Normal                    = 0x0
        Outline                   = 0x1
        Raised                    = 0x2
        Sunken                    = 0x3


class QSGTexture(PySide6.QtCore.QObject):

    class AnisotropyLevel(enum.Enum):

        AnisotropyNone            = 0x0
        Anisotropy2x              = 0x1
        Anisotropy4x              = 0x2
        Anisotropy8x              = 0x3
        Anisotropy16x             = 0x4

    class Filtering(enum.Enum):

        None_                     = 0x0
        Nearest                   = 0x1
        Linear                    = 0x2

    class WrapMode(enum.Enum):

        Repeat                    = 0x0
        ClampToEdge               = 0x1
        MirroredRepeat            = 0x2


class QSGTextureMaterial(PySide6.QtQuick.QSGOpaqueTextureMaterial): ...


class QSGTextureProvider(PySide6.QtCore.QObject):

    textureChanged           : typing.ClassVar[Signal] = ... # textureChanged()


class QSGTransformNode(PySide6.QtQuick.QSGNode): ...
    def __repr__(self, /) -> str: ...


class QSGVertexColorMaterial(PySide6.QtQuick.QSGMaterial): ...


class QSharedPointer_QQuickItemGrabResult(Shiboken.Object): ...
    def __dir__(self, /) -> collections.abc.Iterable[str]: ...
    def __repr__(self, /) -> str: ...


# eof
