from __future__ import annotations
from typing import Any, Protocol, runtime_checkable
from .com.sun.star.uno import XInterface

@runtime_checkable
class XSlideShow(XInterface, Protocol):
    def nextEffect(self) -> bool: ...
    def previousEffect(self) -> bool: ...
    def startShapeActivity(self, xShape: XShape) -> bool: ...
    def stopShapeActivity(self, xShape: XShape) -> bool: ...
    def displaySlide(self, xSlide: XDrawPage, xDrawPages: XDrawPagesSupplier, AnimationNode: XAnimationNode, aProperties: PropertyValue >) -> None: ...
    def pause(self, bPauseShow: bool) -> bool: ...
    def getCurrentSlide(self) -> XDrawPage: ...
    def registerUserPaintPolygons(self, xDocFactory: XMultiServiceFactory) -> None: ...
    def setProperty(self, aShowProperty: PropertyValue) -> bool: ...
    def addView(self, xView: XSlideShowView) -> bool: ...
    def removeView(self, xView: XSlideShowView) -> bool: ...
    def update(self, nNextTimeout: float) -> bool: ...
    def addSlideShowListener(self, xListener: XSlideShowListener) -> None: ...
    def removeSlideShowListener(self, xListener: XSlideShowListener) -> None: ...
    def addShapeEventListener(self, xListener: XShapeEventListener, xShape: XShape) -> None: ...
    def removeShapeEventListener(self, xListener: XShapeEventListener, xShape: XShape) -> None: ...
    def setShapeCursor(self, xShape: XShape, nPointerShape: int) -> None: ...
