import typing

import android.content
import android.content.res
import android.graphics
import android.graphics.drawable.shapes
import android.net
import android.os
import android.util
import java
import java.chaquopy
import java.io
import java.lang
import org.xmlpull.v1

class AdaptiveIconDrawable(Drawable, Drawable.Callback):
    @typing.overload
    def __init__(self, backgroundDrawable: Drawable, foregroundDrawable: Drawable, /) -> None: ...
    @typing.overload
    def __init__(self, backgroundDrawable: Drawable, foregroundDrawable: Drawable, monochromeDrawable: Drawable, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getBackground(self) -> Drawable: ...
    def getChangingConfigurations(self) -> int: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    @staticmethod
    def getExtraInsetFraction() -> float: ...
    def getForeground(self) -> Drawable: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getIconMask(self) -> android.graphics.Path: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getMonochrome(self) -> Drawable | None: ...
    def getOpacity(self) -> int: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getTransparentRegion(self) -> android.graphics.Region | None: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def invalidateDrawable(self, who: Drawable, /) -> None: ...
    def invalidateSelf(self) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isProjected(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def scheduleDrawable(self, who: Drawable, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setOpacity(self, opacity: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def unscheduleDrawable(self, who: Drawable, what: java.lang.Runnable, /) -> None: ...

class Animatable(java.lang.Object):
    def isRunning(self) -> bool: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...

class Animatable2(Animatable):
    def clearAnimationCallbacks(self) -> None: ...
    def registerAnimationCallback(self, arg1: Animatable2.AnimationCallback, /) -> None: ...
    def unregisterAnimationCallback(self, arg1: Animatable2.AnimationCallback, /) -> bool: ...

    class AnimationCallback(java.lang.Object):
        def __init__(self) -> None: ...
        def onAnimationEnd(self, drawable: Drawable, /) -> None: ...
        def onAnimationStart(self, drawable: Drawable, /) -> None: ...

class AnimatedImageDrawable(Animatable2, Drawable):
    REPEAT_INFINITE: typing.ClassVar[int] = ...
    def __init__(self) -> None: ...
    def clearAnimationCallbacks(self) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter | None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getRepeatCount(self) -> int: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isFilterBitmap(self) -> bool: ...
    def isRunning(self) -> bool: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def registerAnimationCallback(self, callback: Animatable2.AnimationCallback, /) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setFilterBitmap(self, filterBitmap: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setRepeatCount(self, repeatCount: int | java.jint | java.lang.Integer, /) -> None: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def unregisterAnimationCallback(self, callback: Animatable2.AnimationCallback, /) -> bool: ...

class AnimatedStateListDrawable(StateListDrawable):
    def __init__(self) -> None: ...
    def addState(self, stateSet: java.chaquopy.JavaArrayJInt, drawable: Drawable, id: int | java.jint | java.lang.Integer, /) -> None: ...
    def addTransition(self, fromId: int | java.jint | java.lang.Integer, toId: int | java.jint | java.lang.Integer, transition: Drawable, reversible: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def applyTheme(self, theme: android.content.res.Resources.Theme, /) -> None: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setConstantState(self, state: DrawableContainer.DrawableContainerState, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...

class AnimatedVectorDrawable(Animatable2, Drawable):
    def __init__(self) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def clearAnimationCallbacks(self) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def inflate(self, res: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isRunning(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def registerAnimationCallback(self, callback: Animatable2.AnimationCallback, /) -> None: ...
    def reset(self) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def unregisterAnimationCallback(self, callback: Animatable2.AnimationCallback, /) -> bool: ...

class AnimationDrawable(Animatable, DrawableContainer, java.lang.Runnable):
    def __init__(self) -> None: ...
    def addFrame(self, frame: Drawable, duration: int | java.jint | java.lang.Integer, /) -> None: ...
    def getDuration(self, i: int | java.jint | java.lang.Integer, /) -> int: ...
    def getFrame(self, index: int | java.jint | java.lang.Integer, /) -> Drawable: ...
    def getNumberOfFrames(self) -> int: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isOneShot(self) -> bool: ...
    def isRunning(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def run(self) -> None: ...
    def setConstantState(self, state: DrawableContainer.DrawableContainerState, /) -> None: ...
    def setOneShot(self, oneShot: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def start(self) -> None: ...
    def stop(self) -> None: ...
    def unscheduleSelf(self, what: java.lang.Runnable, /) -> None: ...

class BitmapDrawable(Drawable):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, /) -> None: ...
    @typing.overload
    def __init__(self, bitmap: android.graphics.Bitmap, /) -> None: ...
    @typing.overload
    def __init__(self, is_: java.io.InputStream, /) -> None: ...
    @typing.overload
    def __init__(self, filepath: str | java.lang.String, /) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, bitmap: android.graphics.Bitmap, /) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, is_: java.io.InputStream, /) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, filepath: str | java.lang.String, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getBitmap(self) -> android.graphics.Bitmap: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getGravity(self) -> int: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPaint(self) -> android.graphics.Paint: ...
    def getTileModeX(self) -> android.graphics.Shader.TileMode: ...
    def getTileModeY(self) -> android.graphics.Shader.TileMode: ...
    def hasAntiAlias(self) -> bool: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def hasMipMap(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isFilterBitmap(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAntiAlias(self, aa: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setBitmap(self, bitmap: android.graphics.Bitmap, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setFilterBitmap(self, filter: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setGravity(self, gravity: int | java.jint | java.lang.Integer, /) -> None: ...
    def setMipMap(self, mipMap: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, density: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, canvas: android.graphics.Canvas, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, metrics: android.util.DisplayMetrics, /) -> None: ...
    def setTileModeX(self, mode: android.graphics.Shader.TileMode, /) -> None: ...
    def setTileModeXY(self, xmode: android.graphics.Shader.TileMode, ymode: android.graphics.Shader.TileMode, /) -> None: ...
    def setTileModeY(self, mode: android.graphics.Shader.TileMode, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...

class ClipDrawable(DrawableWrapper):
    HORIZONTAL: typing.ClassVar[int] = ...
    VERTICAL: typing.ClassVar[int] = ...
    def __init__(self, drawable: Drawable, gravity: int | java.jint | java.lang.Integer, orientation: int | java.jint | java.lang.Integer, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getOpacity(self) -> int: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...

class ColorDrawable(Drawable):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, color: int | java.jint | java.lang.Integer, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColor(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter | None: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getOpacity(self) -> int: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColor(self, color: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...

class ColorStateListDrawable(Drawable, Drawable.Callback):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, colorStateList: android.content.res.ColorStateList, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def clearAlpha(self) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter | None: ...
    def getColorStateList(self) -> android.content.res.ColorStateList: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getCurrent(self) -> Drawable: ...
    def getOpacity(self) -> int: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def invalidateDrawable(self, who: Drawable, /) -> None: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def scheduleDrawable(self, who: Drawable, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setColorStateList(self, colorStateList: android.content.res.ColorStateList, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def unscheduleDrawable(self, who: Drawable, what: java.lang.Runnable, /) -> None: ...

class Drawable(java.lang.Object):
    def __init__(self) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def clearColorFilter(self) -> None: ...
    @typing.overload
    def copyBounds(self) -> android.graphics.Rect: ...
    @typing.overload
    def copyBounds(self, bounds: android.graphics.Rect, /) -> None: ...
    @staticmethod
    def createFromPath(pathName: str | java.lang.String, /) -> Drawable | None: ...
    @typing.overload
    @staticmethod
    def createFromResourceStream(res: android.content.res.Resources, value: android.util.TypedValue, is_: java.io.InputStream, srcName: str | java.lang.String, /) -> Drawable | None: ...
    @typing.overload
    @staticmethod
    def createFromResourceStream(res: android.content.res.Resources, value: android.util.TypedValue, is_: java.io.InputStream, srcName: str | java.lang.String, opts: android.graphics.BitmapFactory.Options, /) -> Drawable | None: ...
    @staticmethod
    def createFromStream(is_: java.io.InputStream, srcName: str | java.lang.String, /) -> Drawable | None: ...
    @typing.overload
    @staticmethod
    def createFromXml(r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, /) -> Drawable: ...
    @typing.overload
    @staticmethod
    def createFromXml(r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, theme: android.content.res.Resources.Theme, /) -> Drawable: ...
    @typing.overload
    @staticmethod
    def createFromXmlInner(r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, /) -> Drawable: ...
    @typing.overload
    @staticmethod
    def createFromXmlInner(r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> Drawable: ...
    def draw(self, arg1: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getBounds(self) -> android.graphics.Rect: ...
    def getCallback(self) -> Drawable.Callback | None: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter | None: ...
    def getConstantState(self) -> Drawable.ConstantState | None: ...
    def getCurrent(self) -> Drawable: ...
    def getDirtyBounds(self) -> android.graphics.Rect: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getLayoutDirection(self) -> int: ...
    def getLevel(self) -> int: ...
    def getMinimumHeight(self) -> int: ...
    def getMinimumWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def getState(self) -> java.chaquopy.JavaArrayJInt: ...
    def getTransparentRegion(self) -> android.graphics.Region | None: ...
    def hasFocusStateSpecified(self) -> bool: ...
    @typing.overload
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, /) -> None: ...
    @typing.overload
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def invalidateSelf(self) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isFilterBitmap(self) -> bool: ...
    def isProjected(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def isVisible(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    @staticmethod
    def resolveOpacity(op1: int | java.jint | java.lang.Integer, op2: int | java.jint | java.lang.Integer, /) -> int: ...
    def scheduleSelf(self, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def setAlpha(self, arg1: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    @typing.overload
    def setBounds(self, bounds: android.graphics.Rect, /) -> None: ...
    @typing.overload
    def setBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setCallback(self, cb: Drawable.Callback, /) -> None: ...
    def setChangingConfigurations(self, configs: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setColorFilter(self, arg1: android.graphics.ColorFilter, /) -> None: ...
    @typing.overload
    def setColorFilter(self, color: int | java.jint | java.lang.Integer, mode: android.graphics.PorterDuff.Mode, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setFilterBitmap(self, filter: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayoutDirection(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def setLevel(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def setState(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setTint(self, tintColor: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setTintMode(self, tintMode: android.graphics.PorterDuff.Mode, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def unscheduleSelf(self, what: java.lang.Runnable, /) -> None: ...

    class ConstantState(java.lang.Object):
        def __init__(self) -> None: ...
        def canApplyTheme(self) -> bool: ...
        def getChangingConfigurations(self) -> int: ...
        @typing.overload
        def newDrawable(self) -> Drawable: ...
        @typing.overload
        def newDrawable(self, res: android.content.res.Resources, /) -> Drawable: ...
        @typing.overload
        def newDrawable(self, res: android.content.res.Resources, theme: android.content.res.Resources.Theme, /) -> Drawable: ...

    class Callback(java.lang.Object):
        def invalidateDrawable(self, arg1: Drawable, /) -> None: ...
        def scheduleDrawable(self, arg1: Drawable, arg2: java.lang.Runnable, arg3: int | java.jlong | java.lang.Long, /) -> None: ...
        def unscheduleDrawable(self, arg1: Drawable, arg2: java.lang.Runnable, /) -> None: ...

class DrawableContainer(Drawable, Drawable.Callback):
    def __init__(self) -> None: ...
    def applyTheme(self, theme: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getCurrent(self) -> Drawable: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getMinimumHeight(self) -> int: ...
    def getMinimumWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def invalidateDrawable(self, who: Drawable, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def scheduleDrawable(self, who: Drawable, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def selectDrawable(self, index: int | java.jint | java.lang.Integer, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setConstantState(self, state: DrawableContainer.DrawableContainerState, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setEnterFadeDuration(self, ms: int | java.jint | java.lang.Integer, /) -> None: ...
    def setExitFadeDuration(self, ms: int | java.jint | java.lang.Integer, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def unscheduleDrawable(self, who: Drawable, what: java.lang.Runnable, /) -> None: ...

    class DrawableContainerState(Drawable.ConstantState):
        def addChild(self, dr: Drawable, /) -> int: ...
        def canApplyTheme(self) -> bool: ...
        def canConstantState(self) -> bool: ...
        def computeConstantSize(self) -> None: ...
        def getChangingConfigurations(self) -> int: ...
        def getChild(self, index: int | java.jint | java.lang.Integer, /) -> Drawable: ...
        def getChildCount(self) -> int: ...
        def getChildren(self) -> java.chaquopy.JavaArray[Drawable]: ...
        def getConstantHeight(self) -> int: ...
        def getConstantMinimumHeight(self) -> int: ...
        def getConstantMinimumWidth(self) -> int: ...
        def getConstantPadding(self) -> android.graphics.Rect: ...
        def getConstantWidth(self) -> int: ...
        def getEnterFadeDuration(self) -> int: ...
        def getExitFadeDuration(self) -> int: ...
        def getOpacity(self) -> int: ...
        def growArray(self, oldSize: int | java.jint | java.lang.Integer, newSize: int | java.jint | java.lang.Integer, /) -> None: ...
        def isConstantSize(self) -> bool: ...
        def isStateful(self) -> bool: ...
        def setConstantSize(self, constant: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
        def setEnterFadeDuration(self, duration: int | java.jint | java.lang.Integer, /) -> None: ...
        def setExitFadeDuration(self, duration: int | java.jint | java.lang.Integer, /) -> None: ...
        def setVariablePadding(self, variable: bool | java.jboolean | java.lang.Boolean, /) -> None: ...

class DrawableWrapper(Drawable, Drawable.Callback):
    def __init__(self, dr: Drawable, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter: ...
    def getConstantState(self) -> Drawable.ConstantState | None: ...
    def getDrawable(self) -> Drawable | None: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def invalidateDrawable(self, who: Drawable, /) -> None: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def scheduleDrawable(self, who: Drawable, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDrawable(self, dr: Drawable, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def unscheduleDrawable(self, who: Drawable, what: java.lang.Runnable, /) -> None: ...

class GradientDrawable(Drawable):
    LINE: typing.ClassVar[int] = ...
    LINEAR_GRADIENT: typing.ClassVar[int] = ...
    OVAL: typing.ClassVar[int] = ...
    RADIAL_GRADIENT: typing.ClassVar[int] = ...
    RECTANGLE: typing.ClassVar[int] = ...
    RING: typing.ClassVar[int] = ...
    SWEEP_GRADIENT: typing.ClassVar[int] = ...
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, orientation: GradientDrawable.Orientation, colors: java.chaquopy.JavaArrayJInt, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColor(self) -> android.content.res.ColorStateList | None: ...
    def getColorFilter(self) -> android.graphics.ColorFilter | None: ...
    def getColors(self) -> java.chaquopy.JavaArrayJInt | None: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getCornerRadii(self) -> java.chaquopy.JavaArrayJFloat | None: ...
    def getCornerRadius(self) -> float: ...
    def getGradientCenterX(self) -> float: ...
    def getGradientCenterY(self) -> float: ...
    def getGradientRadius(self) -> float: ...
    def getGradientType(self) -> int: ...
    def getInnerRadius(self) -> int: ...
    def getInnerRadiusRatio(self) -> float: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOrientation(self) -> GradientDrawable.Orientation: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def getShape(self) -> int: ...
    def getThickness(self) -> int: ...
    def getThicknessRatio(self) -> float: ...
    def getUseLevel(self) -> bool: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, r: android.graphics.Rect, /) -> None: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setColor(self, argb: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setColor(self, colorStateList: android.content.res.ColorStateList, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    @typing.overload
    def setColors(self, colors: java.chaquopy.JavaArrayJInt, /) -> None: ...
    @typing.overload
    def setColors(self, colors: java.chaquopy.JavaArrayJInt, offsets: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    def setCornerRadii(self, radii: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    def setCornerRadius(self, radius: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setGradientCenter(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setGradientRadius(self, gradientRadius: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setGradientType(self, gradient: int | java.jint | java.lang.Integer, /) -> None: ...
    def setInnerRadius(self, innerRadius: int | java.jint | java.lang.Integer, /) -> None: ...
    def setInnerRadiusRatio(self, innerRadiusRatio: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setOrientation(self, orientation: GradientDrawable.Orientation, /) -> None: ...
    def setPadding(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setShape(self, shape: int | java.jint | java.lang.Integer, /) -> None: ...
    def setSize(self, width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setStroke(self, width: int | java.jint | java.lang.Integer, color: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setStroke(self, width: int | java.jint | java.lang.Integer, colorStateList: android.content.res.ColorStateList, /) -> None: ...
    @typing.overload
    def setStroke(self, width: int | java.jint | java.lang.Integer, color: int | java.jint | java.lang.Integer, dashWidth: float | java.jfloat | java.lang.Float, dashGap: float | java.jfloat | java.lang.Float, /) -> None: ...
    @typing.overload
    def setStroke(self, width: int | java.jint | java.lang.Integer, colorStateList: android.content.res.ColorStateList, dashWidth: float | java.jfloat | java.lang.Float, dashGap: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setThickness(self, thickness: int | java.jint | java.lang.Integer, /) -> None: ...
    def setThicknessRatio(self, thicknessRatio: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setUseLevel(self, useLevel: bool | java.jboolean | java.lang.Boolean, /) -> None: ...

    class Orientation(java.lang.Enum[GradientDrawable.Orientation]):
        BL_TR: typing.ClassVar[GradientDrawable.Orientation] = ...
        BOTTOM_TOP: typing.ClassVar[GradientDrawable.Orientation] = ...
        BR_TL: typing.ClassVar[GradientDrawable.Orientation] = ...
        LEFT_RIGHT: typing.ClassVar[GradientDrawable.Orientation] = ...
        RIGHT_LEFT: typing.ClassVar[GradientDrawable.Orientation] = ...
        TL_BR: typing.ClassVar[GradientDrawable.Orientation] = ...
        TOP_BOTTOM: typing.ClassVar[GradientDrawable.Orientation] = ...
        TR_BL: typing.ClassVar[GradientDrawable.Orientation] = ...
        @staticmethod
        def valueOf(name: str | java.lang.String, /) -> GradientDrawable.Orientation: ...
        @staticmethod
        def values() -> java.chaquopy.JavaArray[GradientDrawable.Orientation]: ...

class Icon(android.os.Parcelable):
    CREATOR: typing.ClassVar[android.os.Parcelable.Creator[Icon]] = ...
    TYPE_ADAPTIVE_BITMAP: typing.ClassVar[int] = ...
    TYPE_BITMAP: typing.ClassVar[int] = ...
    TYPE_DATA: typing.ClassVar[int] = ...
    TYPE_RESOURCE: typing.ClassVar[int] = ...
    TYPE_URI: typing.ClassVar[int] = ...
    TYPE_URI_ADAPTIVE_BITMAP: typing.ClassVar[int] = ...
    @staticmethod
    def createWithAdaptiveBitmap(bits: android.graphics.Bitmap, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithAdaptiveBitmapContentUri(uri: android.net.Uri, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithAdaptiveBitmapContentUri(uri: str | java.lang.String, /) -> Icon: ...
    @staticmethod
    def createWithBitmap(bits: android.graphics.Bitmap, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithContentUri(uri: android.net.Uri, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithContentUri(uri: str | java.lang.String, /) -> Icon: ...
    @staticmethod
    def createWithData(data: java.chaquopy.JavaArrayJByte, offset: int | java.jint | java.lang.Integer, length: int | java.jint | java.lang.Integer, /) -> Icon: ...
    @staticmethod
    def createWithFilePath(path: str | java.lang.String, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithResource(context: android.content.Context, resId: int | java.jint | java.lang.Integer, /) -> Icon: ...
    @typing.overload
    @staticmethod
    def createWithResource(resPackage: str | java.lang.String, resId: int | java.jint | java.lang.Integer, /) -> Icon: ...
    def describeContents(self) -> int: ...
    def getResId(self) -> int: ...
    def getResPackage(self) -> str: ...
    def getType(self) -> int: ...
    def getUri(self) -> android.net.Uri: ...
    def loadDrawable(self, context: android.content.Context, /) -> Drawable | None: ...
    @typing.overload
    def loadDrawableAsync(self, context: android.content.Context, andThen: android.os.Message, /) -> None: ...
    @typing.overload
    def loadDrawableAsync(self, context: android.content.Context, listener: Icon.OnDrawableLoadedListener, handler: android.os.Handler, /) -> None: ...
    def setTint(self, tint: int | java.jint | java.lang.Integer, /) -> Icon: ...
    def setTintBlendMode(self, mode: android.graphics.BlendMode, /) -> Icon: ...
    def setTintList(self, tintList: android.content.res.ColorStateList, /) -> Icon: ...
    def setTintMode(self, mode: android.graphics.PorterDuff.Mode, /) -> Icon: ...
    def toString(self) -> str: ...
    def writeToParcel(self, dest: android.os.Parcel, flags: int | java.jint | java.lang.Integer, /) -> None: ...

    class OnDrawableLoadedListener(java.lang.Object):
        def onDrawableLoaded(self, arg1: Drawable, /) -> None: ...

class InsetDrawable(DrawableWrapper):
    @typing.overload
    def __init__(self, drawable: Drawable, inset: float | java.jfloat | java.lang.Float, /) -> None: ...
    @typing.overload
    def __init__(self, drawable: Drawable, inset: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def __init__(self, drawable: Drawable, insetLeftFraction: float | java.jfloat | java.lang.Float, insetTopFraction: float | java.jfloat | java.lang.Float, insetRightFraction: float | java.jfloat | java.lang.Float, insetBottomFraction: float | java.jfloat | java.lang.Float, /) -> None: ...
    @typing.overload
    def __init__(self, drawable: Drawable, insetLeft: int | java.jint | java.lang.Integer, insetTop: int | java.jint | java.lang.Integer, insetRight: int | java.jint | java.lang.Integer, insetBottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...

class LayerDrawable(Drawable, Drawable.Callback):
    INSET_UNDEFINED: typing.ClassVar[int] = ...
    PADDING_MODE_NEST: typing.ClassVar[int] = ...
    PADDING_MODE_STACK: typing.ClassVar[int] = ...
    def __init__(self, layers: java.chaquopy.JavaArray[Drawable], /) -> None: ...
    def addLayer(self, dr: Drawable, /) -> int: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def findDrawableByLayerId(self, id: int | java.jint | java.lang.Integer, /) -> Drawable: ...
    def findIndexByLayerId(self, id: int | java.jint | java.lang.Integer, /) -> int: ...
    def getAlpha(self) -> int: ...
    def getBottomPadding(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getDrawable(self, index: int | java.jint | java.lang.Integer, /) -> Drawable: ...
    def getEndPadding(self) -> int: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getId(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getLayerGravity(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerHeight(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetBottom(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetEnd(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetLeft(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetRight(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetStart(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerInsetTop(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLayerWidth(self, index: int | java.jint | java.lang.Integer, /) -> int: ...
    def getLeftPadding(self) -> int: ...
    def getNumberOfLayers(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def getPaddingMode(self) -> int: ...
    def getRightPadding(self) -> int: ...
    def getStartPadding(self) -> int: ...
    def getTopPadding(self) -> int: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def invalidateDrawable(self, who: Drawable, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isProjected(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLayoutDirectionChanged(self, layoutDirection: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def onStateChange(self, state: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def scheduleDrawable(self, who: Drawable, what: java.lang.Runnable, when: int | java.jlong | java.lang.Long, /) -> None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setDrawable(self, index: int | java.jint | java.lang.Integer, drawable: Drawable, /) -> None: ...
    def setDrawableByLayerId(self, id: int | java.jint | java.lang.Integer, drawable: Drawable, /) -> bool: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setId(self, index: int | java.jint | java.lang.Integer, id: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerGravity(self, index: int | java.jint | java.lang.Integer, gravity: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerHeight(self, index: int | java.jint | java.lang.Integer, h: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInset(self, index: int | java.jint | java.lang.Integer, l: int | java.jint | java.lang.Integer, t: int | java.jint | java.lang.Integer, r: int | java.jint | java.lang.Integer, b: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetBottom(self, index: int | java.jint | java.lang.Integer, b: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetEnd(self, index: int | java.jint | java.lang.Integer, e: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetLeft(self, index: int | java.jint | java.lang.Integer, l: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetRelative(self, index: int | java.jint | java.lang.Integer, s: int | java.jint | java.lang.Integer, t: int | java.jint | java.lang.Integer, e: int | java.jint | java.lang.Integer, b: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetRight(self, index: int | java.jint | java.lang.Integer, r: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetStart(self, index: int | java.jint | java.lang.Integer, s: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerInsetTop(self, index: int | java.jint | java.lang.Integer, t: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerSize(self, index: int | java.jint | java.lang.Integer, w: int | java.jint | java.lang.Integer, h: int | java.jint | java.lang.Integer, /) -> None: ...
    def setLayerWidth(self, index: int | java.jint | java.lang.Integer, w: int | java.jint | java.lang.Integer, /) -> None: ...
    def setOpacity(self, opacity: int | java.jint | java.lang.Integer, /) -> None: ...
    def setPadding(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setPaddingMode(self, mode: int | java.jint | java.lang.Integer, /) -> None: ...
    def setPaddingRelative(self, start: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, end: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def unscheduleDrawable(self, who: Drawable, what: java.lang.Runnable, /) -> None: ...

class LevelListDrawable(DrawableContainer):
    def __init__(self) -> None: ...
    def addLevel(self, low: int | java.jint | java.lang.Integer, high: int | java.jint | java.lang.Integer, drawable: Drawable, /) -> None: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def mutate(self) -> Drawable: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def setConstantState(self, state: DrawableContainer.DrawableContainerState, /) -> None: ...

class NinePatchDrawable(Drawable):
    @typing.overload
    def __init__(self, patch: android.graphics.NinePatch, /) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, patch: android.graphics.NinePatch, /) -> None: ...
    @typing.overload
    def __init__(self, bitmap: android.graphics.Bitmap, chunk: java.chaquopy.JavaArrayJByte, padding: android.graphics.Rect, srcName: str | java.lang.String, /) -> None: ...
    @typing.overload
    def __init__(self, res: android.content.res.Resources, bitmap: android.graphics.Bitmap, chunk: java.chaquopy.JavaArrayJByte, padding: android.graphics.Rect, srcName: str | java.lang.String, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def getPaint(self) -> android.graphics.Paint: ...
    def getTransparentRegion(self) -> android.graphics.Region: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isFilterBitmap(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setFilterBitmap(self, filter: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, density: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, canvas: android.graphics.Canvas, /) -> None: ...
    @typing.overload
    def setTargetDensity(self, metrics: android.util.DisplayMetrics, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...

class PaintDrawable(ShapeDrawable):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, color: int | java.jint | java.lang.Integer, /) -> None: ...
    def inflateTag(self, name: str | java.lang.String, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, /) -> bool: ...
    def setCornerRadii(self, radii: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    def setCornerRadius(self, radius: float | java.jfloat | java.lang.Float, /) -> None: ...

class PictureDrawable(Drawable):
    def __init__(self, picture: android.graphics.Picture, /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getPicture(self) -> android.graphics.Picture | None: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setPicture(self, picture: android.graphics.Picture, /) -> None: ...

class RippleDrawable(LayerDrawable):
    RADIUS_AUTO: typing.ClassVar[int] = ...
    def __init__(self, color: android.content.res.ColorStateList, content: Drawable, mask: Drawable, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getDirtyBounds(self) -> android.graphics.Rect: ...
    def getEffectColor(self) -> android.content.res.ColorStateList: ...
    def getHotspotBounds(self, outRect: android.graphics.Rect, /) -> None: ...
    def getOpacity(self) -> int: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getRadius(self) -> int: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def invalidateSelf(self) -> None: ...
    def isProjected(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def jumpToCurrentState(self) -> None: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setColor(self, color: android.content.res.ColorStateList, /) -> None: ...
    def setDrawableByLayerId(self, id: int | java.jint | java.lang.Integer, drawable: Drawable, /) -> bool: ...
    def setEffectColor(self, color: android.content.res.ColorStateList, /) -> None: ...
    def setHotspot(self, x: float | java.jfloat | java.lang.Float, y: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setHotspotBounds(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setPaddingMode(self, mode: int | java.jint | java.lang.Integer, /) -> None: ...
    def setRadius(self, radius: int | java.jint | java.lang.Integer, /) -> None: ...
    def setVisible(self, visible: bool | java.jboolean | java.lang.Boolean, restart: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...

class RotateDrawable(DrawableWrapper):
    def __init__(self) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getFromDegrees(self) -> float: ...
    def getPivotX(self) -> float: ...
    def getPivotY(self) -> float: ...
    def getToDegrees(self) -> float: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isPivotXRelative(self) -> bool: ...
    def isPivotYRelative(self) -> bool: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...
    def setFromDegrees(self, fromDegrees: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setPivotX(self, pivotX: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setPivotXRelative(self, relative: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setPivotY(self, pivotY: float | java.jfloat | java.lang.Float, /) -> None: ...
    def setPivotYRelative(self, relative: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setToDegrees(self, toDegrees: float | java.jfloat | java.lang.Float, /) -> None: ...

class ScaleDrawable(DrawableWrapper):
    def __init__(self, drawable: Drawable, gravity: int | java.jint | java.lang.Integer, scaleWidth: float | java.jfloat | java.lang.Float, scaleHeight: float | java.jfloat | java.lang.Float, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getOpacity(self) -> int: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onLevelChange(self, level: int | java.jint | java.lang.Integer, /) -> bool: ...

class ShapeDrawable(Drawable):
    @typing.overload
    def __init__(self) -> None: ...
    @typing.overload
    def __init__(self, s: android.graphics.drawable.shapes.Shape, /) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOutline(self, outline: android.graphics.Outline, /) -> None: ...
    def getPadding(self, padding: android.graphics.Rect, /) -> bool: ...
    def getPaint(self) -> android.graphics.Paint: ...
    def getShaderFactory(self) -> ShapeDrawable.ShaderFactory: ...
    def getShape(self) -> android.graphics.drawable.shapes.Shape: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def inflateTag(self, name: str | java.lang.String, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, /) -> bool: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onBoundsChange(self, bounds: android.graphics.Rect, /) -> None: ...
    def onDraw(self, shape: android.graphics.drawable.shapes.Shape, canvas: android.graphics.Canvas, paint: android.graphics.Paint, /) -> None: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setDither(self, dither: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setIntrinsicHeight(self, height: int | java.jint | java.lang.Integer, /) -> None: ...
    def setIntrinsicWidth(self, width: int | java.jint | java.lang.Integer, /) -> None: ...
    @typing.overload
    def setPadding(self, padding: android.graphics.Rect, /) -> None: ...
    @typing.overload
    def setPadding(self, left: int | java.jint | java.lang.Integer, top: int | java.jint | java.lang.Integer, right: int | java.jint | java.lang.Integer, bottom: int | java.jint | java.lang.Integer, /) -> None: ...
    def setShaderFactory(self, fact: ShapeDrawable.ShaderFactory, /) -> None: ...
    def setShape(self, s: android.graphics.drawable.shapes.Shape, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...

    class ShaderFactory(java.lang.Object):
        def __init__(self) -> None: ...
        def resize(self, arg1: int | java.jint | java.lang.Integer, arg2: int | java.jint | java.lang.Integer, /) -> android.graphics.Shader: ...

class StateListDrawable(DrawableContainer):
    def __init__(self) -> None: ...
    def addState(self, stateSet: java.chaquopy.JavaArrayJInt, drawable: Drawable, /) -> None: ...
    def applyTheme(self, theme: android.content.res.Resources.Theme, /) -> None: ...
    def findStateDrawableIndex(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> int: ...
    def getStateCount(self) -> int: ...
    def getStateDrawable(self, index: int | java.jint | java.lang.Integer, /) -> Drawable | None: ...
    def getStateSet(self, index: int | java.jint | java.lang.Integer, /) -> java.chaquopy.JavaArrayJInt: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setConstantState(self, state: DrawableContainer.DrawableContainerState, /) -> None: ...

class TransitionDrawable(LayerDrawable, Drawable.Callback):
    def __init__(self, layers: java.chaquopy.JavaArray[Drawable], /) -> None: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def isCrossFadeEnabled(self) -> bool: ...
    def resetTransition(self) -> None: ...
    def reverseTransition(self, duration: int | java.jint | java.lang.Integer, /) -> None: ...
    def setCrossFadeEnabled(self, enabled: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def startTransition(self, durationMillis: int | java.jint | java.lang.Integer, /) -> None: ...

class VectorDrawable(Drawable):
    def __init__(self) -> None: ...
    def applyTheme(self, t: android.content.res.Resources.Theme, /) -> None: ...
    def canApplyTheme(self) -> bool: ...
    def draw(self, canvas: android.graphics.Canvas, /) -> None: ...
    def getAlpha(self) -> int: ...
    def getChangingConfigurations(self) -> int: ...
    def getColorFilter(self) -> android.graphics.ColorFilter: ...
    def getConstantState(self) -> Drawable.ConstantState: ...
    def getIntrinsicHeight(self) -> int: ...
    def getIntrinsicWidth(self) -> int: ...
    def getOpacity(self) -> int: ...
    def getOpticalInsets(self) -> android.graphics.Insets: ...
    def hasFocusStateSpecified(self) -> bool: ...
    def inflate(self, r: android.content.res.Resources, parser: org.xmlpull.v1.XmlPullParser, attrs: android.util.AttributeSet, theme: android.content.res.Resources.Theme, /) -> None: ...
    def isAutoMirrored(self) -> bool: ...
    def isStateful(self) -> bool: ...
    def mutate(self) -> Drawable: ...
    def onStateChange(self, stateSet: java.chaquopy.JavaArrayJInt, /) -> bool: ...
    def setAlpha(self, alpha: int | java.jint | java.lang.Integer, /) -> None: ...
    def setAutoMirrored(self, mirrored: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def setColorFilter(self, colorFilter: android.graphics.ColorFilter, /) -> None: ...
    def setTintBlendMode(self, blendMode: android.graphics.BlendMode, /) -> None: ...
    def setTintList(self, tint: android.content.res.ColorStateList, /) -> None: ...
