import typing

import java
import java.chaquopy
import java.lang

class AppJankStats(java.lang.Object):
    WIDGET_CATEGORY_ANIMATION: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_KEYBOARD: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_MEDIA: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_NAVIGATION: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_OTHER: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_SCROLL: typing.ClassVar[str] = ...
    WIDGET_CATEGORY_UNSPECIFIED: typing.ClassVar[str] = ...
    WIDGET_STATE_ANIMATING: typing.ClassVar[str] = ...
    WIDGET_STATE_DRAGGING: typing.ClassVar[str] = ...
    WIDGET_STATE_FLINGING: typing.ClassVar[str] = ...
    WIDGET_STATE_NONE: typing.ClassVar[str] = ...
    WIDGET_STATE_PLAYBACK: typing.ClassVar[str] = ...
    WIDGET_STATE_PREDICTIVE_BACK: typing.ClassVar[str] = ...
    WIDGET_STATE_SCROLLING: typing.ClassVar[str] = ...
    WIDGET_STATE_SWIPING: typing.ClassVar[str] = ...
    WIDGET_STATE_TAPPING: typing.ClassVar[str] = ...
    WIDGET_STATE_UNSPECIFIED: typing.ClassVar[str] = ...
    WIDGET_STATE_ZOOMING: typing.ClassVar[str] = ...
    def __init__(self, appUid: int | java.jint | java.lang.Integer, widgetId: str | java.lang.String, navigationComponent: str | java.lang.String, widgetCategory: str | java.lang.String, widgetState: str | java.lang.String, totalFrames: int | java.jlong | java.lang.Long, jankyFrames: int | java.jlong | java.lang.Long, relativeFrameTimeHistogram: RelativeFrameTimeHistogram, /) -> None: ...
    def getJankyFrameCount(self) -> int: ...
    def getNavigationComponent(self) -> str: ...
    def getRelativeFrameTimeHistogram(self) -> RelativeFrameTimeHistogram: ...
    def getTotalFrameCount(self) -> int: ...
    def getUid(self) -> int: ...
    def getWidgetCategory(self) -> str: ...
    def getWidgetId(self) -> str: ...
    def getWidgetState(self) -> str: ...

class RelativeFrameTimeHistogram(java.lang.Object):
    def __init__(self) -> None: ...
    def addRelativeFrameTimeMillis(self, frameTimeMillis: int | java.jint | java.lang.Integer, /) -> None: ...
    def getBucketCounters(self) -> java.chaquopy.JavaArrayJInt: ...
    def getBucketEndpointsMillis(self) -> java.chaquopy.JavaArrayJInt: ...
