import typing

import android.graphics
import android.os
import android.view
import java
import java.chaquopy
import java.lang
import java.nio.channels
import java.time
import java.util

class BatteryState(java.lang.Object):
    STATUS_CHARGING: typing.ClassVar[int] = ...
    STATUS_DISCHARGING: typing.ClassVar[int] = ...
    STATUS_FULL: typing.ClassVar[int] = ...
    STATUS_NOT_CHARGING: typing.ClassVar[int] = ...
    STATUS_UNKNOWN: typing.ClassVar[int] = ...
    def __init__(self) -> None: ...
    def getCapacity(self) -> float: ...
    def getStatus(self) -> int: ...
    def isPresent(self) -> bool: ...

class Camera(java.lang.Object):
    ACTION_NEW_PICTURE: typing.ClassVar[str] = ...
    ACTION_NEW_VIDEO: typing.ClassVar[str] = ...
    CAMERA_ERROR_EVICTED: typing.ClassVar[int] = ...
    CAMERA_ERROR_SERVER_DIED: typing.ClassVar[int] = ...
    CAMERA_ERROR_UNKNOWN: typing.ClassVar[int] = ...
    def addCallbackBuffer(self, callbackBuffer: java.chaquopy.JavaArrayJByte, /) -> None: ...
    def autoFocus(self, cb: Camera.AutoFocusCallback, /) -> None: ...
    def cancelAutoFocus(self) -> None: ...
    def enableShutterSound(self, enabled: bool | java.jboolean | java.lang.Boolean, /) -> bool: ...
    def finalize(self) -> None: ...
    @staticmethod
    def getCameraInfo(cameraId: int | java.jint | java.lang.Integer, cameraInfo: Camera.CameraInfo, /) -> None: ...
    @staticmethod
    def getNumberOfCameras() -> int: ...
    def getParameters(self) -> Camera.Parameters: ...
    def lock(self) -> None: ...
    @typing.overload
    @staticmethod
    def open() -> Camera | None: ...
    @typing.overload
    @staticmethod
    def open(cameraId: int | java.jint | java.lang.Integer, /) -> Camera | None: ...
    def reconnect(self) -> None: ...
    def release(self) -> None: ...
    def setAutoFocusMoveCallback(self, cb: Camera.AutoFocusMoveCallback, /) -> None: ...
    def setDisplayOrientation(self, arg1: int | java.jint | java.lang.Integer, /) -> None: ...
    def setErrorCallback(self, cb: Camera.ErrorCallback, /) -> None: ...
    def setFaceDetectionListener(self, listener: Camera.FaceDetectionListener, /) -> None: ...
    def setOneShotPreviewCallback(self, cb: Camera.PreviewCallback, /) -> None: ...
    def setParameters(self, params: Camera.Parameters, /) -> None: ...
    def setPreviewCallback(self, cb: Camera.PreviewCallback, /) -> None: ...
    def setPreviewCallbackWithBuffer(self, cb: Camera.PreviewCallback, /) -> None: ...
    def setPreviewDisplay(self, holder: android.view.SurfaceHolder, /) -> None: ...
    def setPreviewTexture(self, arg1: android.graphics.SurfaceTexture, /) -> None: ...
    def setZoomChangeListener(self, listener: Camera.OnZoomChangeListener, /) -> None: ...
    def startFaceDetection(self) -> None: ...
    def startPreview(self) -> None: ...
    def startSmoothZoom(self, arg1: int | java.jint | java.lang.Integer, /) -> None: ...
    def stopFaceDetection(self) -> None: ...
    def stopPreview(self) -> None: ...
    def stopSmoothZoom(self) -> None: ...
    @typing.overload
    def takePicture(self, shutter: Camera.ShutterCallback, raw: Camera.PictureCallback, jpeg: Camera.PictureCallback, /) -> None: ...
    @typing.overload
    def takePicture(self, shutter: Camera.ShutterCallback, raw: Camera.PictureCallback, postview: Camera.PictureCallback, jpeg: Camera.PictureCallback, /) -> None: ...
    def unlock(self) -> None: ...

    class Size(java.lang.Object):
        height: int = ...
        width: int = ...
        def __init__(self, this_0: Camera, w: int | java.jint | java.lang.Integer, h: int | java.jint | java.lang.Integer, /) -> None: ...
        def equals(self, obj: java.lang.Object | int | bool | float | str, /) -> bool: ...
        def hashCode(self) -> int: ...

    class ShutterCallback(java.lang.Object):
        def onShutter(self) -> None: ...

    class PreviewCallback(java.lang.Object):
        def onPreviewFrame(self, arg1: java.chaquopy.JavaArrayJByte, arg2: Camera, /) -> None: ...

    class PictureCallback(java.lang.Object):
        def onPictureTaken(self, arg1: java.chaquopy.JavaArrayJByte, arg2: Camera, /) -> None: ...

    class Parameters(java.lang.Object):
        ANTIBANDING_50HZ: typing.ClassVar[str] = ...
        ANTIBANDING_60HZ: typing.ClassVar[str] = ...
        ANTIBANDING_AUTO: typing.ClassVar[str] = ...
        ANTIBANDING_OFF: typing.ClassVar[str] = ...
        EFFECT_AQUA: typing.ClassVar[str] = ...
        EFFECT_BLACKBOARD: typing.ClassVar[str] = ...
        EFFECT_MONO: typing.ClassVar[str] = ...
        EFFECT_NEGATIVE: typing.ClassVar[str] = ...
        EFFECT_NONE: typing.ClassVar[str] = ...
        EFFECT_POSTERIZE: typing.ClassVar[str] = ...
        EFFECT_SEPIA: typing.ClassVar[str] = ...
        EFFECT_SOLARIZE: typing.ClassVar[str] = ...
        EFFECT_WHITEBOARD: typing.ClassVar[str] = ...
        FLASH_MODE_AUTO: typing.ClassVar[str] = ...
        FLASH_MODE_OFF: typing.ClassVar[str] = ...
        FLASH_MODE_ON: typing.ClassVar[str] = ...
        FLASH_MODE_RED_EYE: typing.ClassVar[str] = ...
        FLASH_MODE_TORCH: typing.ClassVar[str] = ...
        FOCUS_DISTANCE_FAR_INDEX: typing.ClassVar[int] = ...
        FOCUS_DISTANCE_NEAR_INDEX: typing.ClassVar[int] = ...
        FOCUS_DISTANCE_OPTIMAL_INDEX: typing.ClassVar[int] = ...
        FOCUS_MODE_AUTO: typing.ClassVar[str] = ...
        FOCUS_MODE_CONTINUOUS_PICTURE: typing.ClassVar[str] = ...
        FOCUS_MODE_CONTINUOUS_VIDEO: typing.ClassVar[str] = ...
        FOCUS_MODE_EDOF: typing.ClassVar[str] = ...
        FOCUS_MODE_FIXED: typing.ClassVar[str] = ...
        FOCUS_MODE_INFINITY: typing.ClassVar[str] = ...
        FOCUS_MODE_MACRO: typing.ClassVar[str] = ...
        PREVIEW_FPS_MAX_INDEX: typing.ClassVar[int] = ...
        PREVIEW_FPS_MIN_INDEX: typing.ClassVar[int] = ...
        SCENE_MODE_ACTION: typing.ClassVar[str] = ...
        SCENE_MODE_AUTO: typing.ClassVar[str] = ...
        SCENE_MODE_BARCODE: typing.ClassVar[str] = ...
        SCENE_MODE_BEACH: typing.ClassVar[str] = ...
        SCENE_MODE_CANDLELIGHT: typing.ClassVar[str] = ...
        SCENE_MODE_FIREWORKS: typing.ClassVar[str] = ...
        SCENE_MODE_HDR: typing.ClassVar[str] = ...
        SCENE_MODE_LANDSCAPE: typing.ClassVar[str] = ...
        SCENE_MODE_NIGHT: typing.ClassVar[str] = ...
        SCENE_MODE_NIGHT_PORTRAIT: typing.ClassVar[str] = ...
        SCENE_MODE_PARTY: typing.ClassVar[str] = ...
        SCENE_MODE_PORTRAIT: typing.ClassVar[str] = ...
        SCENE_MODE_SNOW: typing.ClassVar[str] = ...
        SCENE_MODE_SPORTS: typing.ClassVar[str] = ...
        SCENE_MODE_STEADYPHOTO: typing.ClassVar[str] = ...
        SCENE_MODE_SUNSET: typing.ClassVar[str] = ...
        SCENE_MODE_THEATRE: typing.ClassVar[str] = ...
        WHITE_BALANCE_AUTO: typing.ClassVar[str] = ...
        WHITE_BALANCE_CLOUDY_DAYLIGHT: typing.ClassVar[str] = ...
        WHITE_BALANCE_DAYLIGHT: typing.ClassVar[str] = ...
        WHITE_BALANCE_FLUORESCENT: typing.ClassVar[str] = ...
        WHITE_BALANCE_INCANDESCENT: typing.ClassVar[str] = ...
        WHITE_BALANCE_SHADE: typing.ClassVar[str] = ...
        WHITE_BALANCE_TWILIGHT: typing.ClassVar[str] = ...
        WHITE_BALANCE_WARM_FLUORESCENT: typing.ClassVar[str] = ...
        def flatten(self) -> str: ...
        def get(self, key: str | java.lang.String, /) -> str: ...
        def getAntibanding(self) -> str: ...
        def getAutoExposureLock(self) -> bool: ...
        def getAutoWhiteBalanceLock(self) -> bool: ...
        def getColorEffect(self) -> str: ...
        def getExposureCompensation(self) -> int: ...
        def getExposureCompensationStep(self) -> float: ...
        def getFlashMode(self) -> str: ...
        def getFocalLength(self) -> float: ...
        def getFocusAreas(self) -> java.util.List[Camera.Area]: ...
        def getFocusDistances(self, output: java.chaquopy.JavaArrayJFloat, /) -> None: ...
        def getFocusMode(self) -> str: ...
        def getHorizontalViewAngle(self) -> float: ...
        def getInt(self, key: str | java.lang.String, /) -> int: ...
        def getJpegQuality(self) -> int: ...
        def getJpegThumbnailQuality(self) -> int: ...
        def getJpegThumbnailSize(self) -> Camera.Size: ...
        def getMaxExposureCompensation(self) -> int: ...
        def getMaxNumDetectedFaces(self) -> int: ...
        def getMaxNumFocusAreas(self) -> int: ...
        def getMaxNumMeteringAreas(self) -> int: ...
        def getMaxZoom(self) -> int: ...
        def getMeteringAreas(self) -> java.util.List[Camera.Area]: ...
        def getMinExposureCompensation(self) -> int: ...
        def getPictureFormat(self) -> int: ...
        def getPictureSize(self) -> Camera.Size: ...
        def getPreferredPreviewSizeForVideo(self) -> Camera.Size: ...
        def getPreviewFormat(self) -> int: ...
        def getPreviewFpsRange(self, range: java.chaquopy.JavaArrayJInt, /) -> None: ...
        def getPreviewFrameRate(self) -> int: ...
        def getPreviewSize(self) -> Camera.Size: ...
        def getSceneMode(self) -> str: ...
        def getSupportedAntibanding(self) -> java.util.List[java.lang.String]: ...
        def getSupportedColorEffects(self) -> java.util.List[java.lang.String]: ...
        def getSupportedFlashModes(self) -> java.util.List[java.lang.String]: ...
        def getSupportedFocusModes(self) -> java.util.List[java.lang.String]: ...
        def getSupportedJpegThumbnailSizes(self) -> java.util.List[Camera.Size]: ...
        def getSupportedPictureFormats(self) -> java.util.List[java.lang.Integer]: ...
        def getSupportedPictureSizes(self) -> java.util.List[Camera.Size]: ...
        def getSupportedPreviewFormats(self) -> java.util.List[java.lang.Integer]: ...
        def getSupportedPreviewFpsRange(self) -> java.util.List[java.chaquopy.JavaArrayJInt]: ...
        def getSupportedPreviewFrameRates(self) -> java.util.List[java.lang.Integer]: ...
        def getSupportedPreviewSizes(self) -> java.util.List[Camera.Size]: ...
        def getSupportedSceneModes(self) -> java.util.List[java.lang.String]: ...
        def getSupportedVideoSizes(self) -> java.util.List[Camera.Size]: ...
        def getSupportedWhiteBalance(self) -> java.util.List[java.lang.String]: ...
        def getVerticalViewAngle(self) -> float: ...
        def getVideoStabilization(self) -> bool: ...
        def getWhiteBalance(self) -> str: ...
        def getZoom(self) -> int: ...
        def getZoomRatios(self) -> java.util.List[java.lang.Integer]: ...
        def isAutoExposureLockSupported(self) -> bool: ...
        def isAutoWhiteBalanceLockSupported(self) -> bool: ...
        def isSmoothZoomSupported(self) -> bool: ...
        def isVideoSnapshotSupported(self) -> bool: ...
        def isVideoStabilizationSupported(self) -> bool: ...
        def isZoomSupported(self) -> bool: ...
        def remove(self, key: str | java.lang.String, /) -> None: ...
        def removeGpsData(self) -> None: ...
        @typing.overload
        def set(self, key: str | java.lang.String, value: int | java.jint | java.lang.Integer, /) -> None: ...
        @typing.overload
        def set(self, key: str | java.lang.String, value: str | java.lang.String, /) -> None: ...
        def setAntibanding(self, antibanding: str | java.lang.String, /) -> None: ...
        def setAutoExposureLock(self, toggle: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
        def setAutoWhiteBalanceLock(self, toggle: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
        def setColorEffect(self, value: str | java.lang.String, /) -> None: ...
        def setExposureCompensation(self, value: int | java.jint | java.lang.Integer, /) -> None: ...
        def setFlashMode(self, value: str | java.lang.String, /) -> None: ...
        def setFocusAreas(self, focusAreas: java.util.List[Camera.Area], /) -> None: ...
        def setFocusMode(self, value: str | java.lang.String, /) -> None: ...
        def setGpsAltitude(self, altitude: float | java.jdouble | java.lang.Double, /) -> None: ...
        def setGpsLatitude(self, latitude: float | java.jdouble | java.lang.Double, /) -> None: ...
        def setGpsLongitude(self, longitude: float | java.jdouble | java.lang.Double, /) -> None: ...
        def setGpsProcessingMethod(self, processing_method: str | java.lang.String, /) -> None: ...
        def setGpsTimestamp(self, timestamp: int | java.jlong | java.lang.Long, /) -> None: ...
        def setJpegQuality(self, quality: int | java.jint | java.lang.Integer, /) -> None: ...
        def setJpegThumbnailQuality(self, quality: int | java.jint | java.lang.Integer, /) -> None: ...
        def setJpegThumbnailSize(self, width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, /) -> None: ...
        def setMeteringAreas(self, meteringAreas: java.util.List[Camera.Area], /) -> None: ...
        def setPictureFormat(self, pixel_format: int | java.jint | java.lang.Integer, /) -> None: ...
        def setPictureSize(self, width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, /) -> None: ...
        def setPreviewFormat(self, pixel_format: int | java.jint | java.lang.Integer, /) -> None: ...
        def setPreviewFpsRange(self, min: int | java.jint | java.lang.Integer, max: int | java.jint | java.lang.Integer, /) -> None: ...
        def setPreviewFrameRate(self, fps: int | java.jint | java.lang.Integer, /) -> None: ...
        def setPreviewSize(self, width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, /) -> None: ...
        def setRecordingHint(self, hint: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
        def setRotation(self, rotation: int | java.jint | java.lang.Integer, /) -> None: ...
        def setSceneMode(self, value: str | java.lang.String, /) -> None: ...
        def setVideoStabilization(self, toggle: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
        def setWhiteBalance(self, value: str | java.lang.String, /) -> None: ...
        def setZoom(self, value: int | java.jint | java.lang.Integer, /) -> None: ...
        def unflatten(self, flattened: str | java.lang.String, /) -> None: ...

    class OnZoomChangeListener(java.lang.Object):
        def onZoomChange(self, arg1: int | java.jint | java.lang.Integer, arg2: bool | java.jboolean | java.lang.Boolean, arg3: Camera, /) -> None: ...

    class FaceDetectionListener(java.lang.Object):
        def onFaceDetection(self, arg1: java.chaquopy.JavaArray[Camera.Face], arg2: Camera, /) -> None: ...

    class Face(java.lang.Object):
        id: int = ...
        leftEye: android.graphics.Point = ...
        mouth: android.graphics.Point = ...
        rect: android.graphics.Rect = ...
        rightEye: android.graphics.Point = ...
        score: int = ...
        def __init__(self) -> None: ...

    class ErrorCallback(java.lang.Object):
        def onError(self, arg1: int | java.jint | java.lang.Integer, arg2: Camera, /) -> None: ...

    class CameraInfo(java.lang.Object):
        CAMERA_FACING_BACK: typing.ClassVar[int] = ...
        CAMERA_FACING_FRONT: typing.ClassVar[int] = ...
        canDisableShutterSound: bool = ...
        facing: int = ...
        orientation: int = ...
        def __init__(self) -> None: ...

    class AutoFocusMoveCallback(java.lang.Object):
        def onAutoFocusMoving(self, arg1: bool | java.jboolean | java.lang.Boolean, arg2: Camera, /) -> None: ...

    class AutoFocusCallback(java.lang.Object):
        def onAutoFocus(self, arg1: bool | java.jboolean | java.lang.Boolean, arg2: Camera, /) -> None: ...

    class Area(java.lang.Object):
        rect: android.graphics.Rect = ...
        weight: int = ...
        def __init__(self, rect: android.graphics.Rect, weight: int | java.jint | java.lang.Integer, /) -> None: ...
        def equals(self, obj: java.lang.Object | int | bool | float | str, /) -> bool: ...

class ConsumerIrManager(java.lang.Object):
    def getCarrierFrequencies(self) -> java.chaquopy.JavaArray[ConsumerIrManager.CarrierFrequencyRange]: ...
    def hasIrEmitter(self) -> bool: ...
    def transmit(self, carrierFrequency: int | java.jint | java.lang.Integer, pattern: java.chaquopy.JavaArrayJInt, /) -> None: ...

    class CarrierFrequencyRange(java.lang.Object):
        def __init__(self, this_0: ConsumerIrManager, min: int | java.jint | java.lang.Integer, max: int | java.jint | java.lang.Integer, /) -> None: ...
        def getMaxFrequency(self) -> int: ...
        def getMinFrequency(self) -> int: ...

class DataSpace(java.lang.Object):
    DATASPACE_ADOBE_RGB: typing.ClassVar[int] = ...
    DATASPACE_BT2020: typing.ClassVar[int] = ...
    DATASPACE_BT2020_HLG: typing.ClassVar[int] = ...
    DATASPACE_BT2020_PQ: typing.ClassVar[int] = ...
    DATASPACE_BT601_525: typing.ClassVar[int] = ...
    DATASPACE_BT601_625: typing.ClassVar[int] = ...
    DATASPACE_BT709: typing.ClassVar[int] = ...
    DATASPACE_DCI_P3: typing.ClassVar[int] = ...
    DATASPACE_DEPTH: typing.ClassVar[int] = ...
    DATASPACE_DISPLAY_P3: typing.ClassVar[int] = ...
    DATASPACE_DYNAMIC_DEPTH: typing.ClassVar[int] = ...
    DATASPACE_HEIF: typing.ClassVar[int] = ...
    DATASPACE_HEIF_ULTRAHDR: typing.ClassVar[int] = ...
    DATASPACE_JFIF: typing.ClassVar[int] = ...
    DATASPACE_JPEG_R: typing.ClassVar[int] = ...
    DATASPACE_SCRGB: typing.ClassVar[int] = ...
    DATASPACE_SCRGB_LINEAR: typing.ClassVar[int] = ...
    DATASPACE_SRGB: typing.ClassVar[int] = ...
    DATASPACE_SRGB_LINEAR: typing.ClassVar[int] = ...
    DATASPACE_UNKNOWN: typing.ClassVar[int] = ...
    RANGE_EXTENDED: typing.ClassVar[int] = ...
    RANGE_FULL: typing.ClassVar[int] = ...
    RANGE_LIMITED: typing.ClassVar[int] = ...
    RANGE_UNSPECIFIED: typing.ClassVar[int] = ...
    STANDARD_ADOBE_RGB: typing.ClassVar[int] = ...
    STANDARD_BT2020: typing.ClassVar[int] = ...
    STANDARD_BT2020_CONSTANT_LUMINANCE: typing.ClassVar[int] = ...
    STANDARD_BT470M: typing.ClassVar[int] = ...
    STANDARD_BT601_525: typing.ClassVar[int] = ...
    STANDARD_BT601_525_UNADJUSTED: typing.ClassVar[int] = ...
    STANDARD_BT601_625: typing.ClassVar[int] = ...
    STANDARD_BT601_625_UNADJUSTED: typing.ClassVar[int] = ...
    STANDARD_BT709: typing.ClassVar[int] = ...
    STANDARD_DCI_P3: typing.ClassVar[int] = ...
    STANDARD_FILM: typing.ClassVar[int] = ...
    STANDARD_UNSPECIFIED: typing.ClassVar[int] = ...
    TRANSFER_GAMMA2_2: typing.ClassVar[int] = ...
    TRANSFER_GAMMA2_6: typing.ClassVar[int] = ...
    TRANSFER_GAMMA2_8: typing.ClassVar[int] = ...
    TRANSFER_HLG: typing.ClassVar[int] = ...
    TRANSFER_LINEAR: typing.ClassVar[int] = ...
    TRANSFER_SMPTE_170M: typing.ClassVar[int] = ...
    TRANSFER_SRGB: typing.ClassVar[int] = ...
    TRANSFER_ST2084: typing.ClassVar[int] = ...
    TRANSFER_UNSPECIFIED: typing.ClassVar[int] = ...
    @staticmethod
    def getRange(dataSpace: int | java.jint | java.lang.Integer, /) -> int: ...
    @staticmethod
    def getStandard(dataSpace: int | java.jint | java.lang.Integer, /) -> int: ...
    @staticmethod
    def getTransfer(dataSpace: int | java.jint | java.lang.Integer, /) -> int: ...
    @staticmethod
    def pack(standard: int | java.jint | java.lang.Integer, transfer: int | java.jint | java.lang.Integer, range: int | java.jint | java.lang.Integer, /) -> int: ...

class DisplayLuts(java.lang.Object):
    def __init__(self) -> None: ...
    @typing.overload
    def set(self, entry: DisplayLuts.Entry, /) -> None: ...
    @typing.overload
    def set(self, first: DisplayLuts.Entry, second: DisplayLuts.Entry, /) -> None: ...
    def toString(self) -> str: ...

    class Entry(java.lang.Object):
        def __init__(self, buffer: java.chaquopy.JavaArrayJFloat, dimension: int | java.jint | java.lang.Integer, samplingKey: int | java.jint | java.lang.Integer, /) -> None: ...
        def getBuffer(self) -> java.chaquopy.JavaArrayJFloat: ...
        def getDimension(self) -> int: ...
        def getSamplingKey(self) -> int: ...
        def toString(self) -> str: ...

class GeomagneticField(java.lang.Object):
    def __init__(self, gdLatitudeDeg: float | java.jfloat | java.lang.Float, gdLongitudeDeg: float | java.jfloat | java.lang.Float, altitudeMeters: float | java.jfloat | java.lang.Float, timeMillis: int | java.jlong | java.lang.Long, /) -> None: ...
    def getDeclination(self) -> float: ...
    def getFieldStrength(self) -> float: ...
    def getHorizontalStrength(self) -> float: ...
    def getInclination(self) -> float: ...
    def getX(self) -> float: ...
    def getY(self) -> float: ...
    def getZ(self) -> float: ...

class HardwareBuffer(android.os.Parcelable, java.lang.AutoCloseable):
    BLOB: typing.ClassVar[int] = ...
    CREATOR: typing.ClassVar[android.os.Parcelable.Creator[HardwareBuffer]] = ...
    DS_24UI8: typing.ClassVar[int] = ...
    DS_FP32UI8: typing.ClassVar[int] = ...
    D_16: typing.ClassVar[int] = ...
    D_24: typing.ClassVar[int] = ...
    D_FP32: typing.ClassVar[int] = ...
    RGBA_10101010: typing.ClassVar[int] = ...
    RGBA_1010102: typing.ClassVar[int] = ...
    RGBA_8888: typing.ClassVar[int] = ...
    RGBA_FP16: typing.ClassVar[int] = ...
    RGBX_8888: typing.ClassVar[int] = ...
    RGB_565: typing.ClassVar[int] = ...
    RGB_888: typing.ClassVar[int] = ...
    RG_1616: typing.ClassVar[int] = ...
    R_16: typing.ClassVar[int] = ...
    R_8: typing.ClassVar[int] = ...
    S_UI8: typing.ClassVar[int] = ...
    USAGE_COMPOSER_OVERLAY: typing.ClassVar[int] = ...
    USAGE_CPU_READ_OFTEN: typing.ClassVar[int] = ...
    USAGE_CPU_READ_RARELY: typing.ClassVar[int] = ...
    USAGE_CPU_WRITE_OFTEN: typing.ClassVar[int] = ...
    USAGE_CPU_WRITE_RARELY: typing.ClassVar[int] = ...
    USAGE_FRONT_BUFFER: typing.ClassVar[int] = ...
    USAGE_GPU_COLOR_OUTPUT: typing.ClassVar[int] = ...
    USAGE_GPU_CUBE_MAP: typing.ClassVar[int] = ...
    USAGE_GPU_DATA_BUFFER: typing.ClassVar[int] = ...
    USAGE_GPU_MIPMAP_COMPLETE: typing.ClassVar[int] = ...
    USAGE_GPU_SAMPLED_IMAGE: typing.ClassVar[int] = ...
    USAGE_PROTECTED_CONTENT: typing.ClassVar[int] = ...
    USAGE_SENSOR_DIRECT_DATA: typing.ClassVar[int] = ...
    USAGE_VIDEO_ENCODE: typing.ClassVar[int] = ...
    YCBCR_420_888: typing.ClassVar[int] = ...
    YCBCR_P010: typing.ClassVar[int] = ...
    YCBCR_P210: typing.ClassVar[int] = ...
    def close(self) -> None: ...
    @staticmethod
    def create(width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, format: int | java.jint | java.lang.Integer, layers: int | java.jint | java.lang.Integer, usage: int | java.jlong | java.lang.Long, /) -> HardwareBuffer: ...
    def describeContents(self) -> int: ...
    def finalize(self) -> None: ...
    def getFormat(self) -> int: ...
    def getHeight(self) -> int: ...
    def getId(self) -> int: ...
    def getLayers(self) -> int: ...
    def getUsage(self) -> int: ...
    def getWidth(self) -> int: ...
    def isClosed(self) -> bool: ...
    @staticmethod
    def isSupported(width: int | java.jint | java.lang.Integer, height: int | java.jint | java.lang.Integer, format: int | java.jint | java.lang.Integer, layers: int | java.jint | java.lang.Integer, usage: int | java.jlong | java.lang.Long, /) -> bool: ...
    def writeToParcel(self, dest: android.os.Parcel, flags: int | java.jint | java.lang.Integer, /) -> None: ...

class LutProperties(java.lang.Object):
    ONE_DIMENSION: typing.ClassVar[int] = ...
    SAMPLING_KEY_CIE_Y: typing.ClassVar[int] = ...
    SAMPLING_KEY_MAX_RGB: typing.ClassVar[int] = ...
    SAMPLING_KEY_RGB: typing.ClassVar[int] = ...
    THREE_DIMENSION: typing.ClassVar[int] = ...
    def getDimension(self) -> int: ...
    def getSamplingKeys(self) -> java.chaquopy.JavaArrayJInt: ...
    def getSize(self) -> int: ...

class OverlayProperties(android.os.Parcelable):
    CREATOR: typing.ClassVar[android.os.Parcelable.Creator[OverlayProperties]] = ...
    def describeContents(self) -> int: ...
    def getLutProperties(self) -> java.chaquopy.JavaArray[LutProperties]: ...
    def isCombinationSupported(self, dataspace: int | java.jint | java.lang.Integer, format: int | java.jint | java.lang.Integer, /) -> bool: ...
    def isMixedColorSpacesSupported(self) -> bool: ...
    def writeToParcel(self, dest: android.os.Parcel, flags: int | java.jint | java.lang.Integer, /) -> None: ...

class Sensor(java.lang.Object):
    REPORTING_MODE_CONTINUOUS: typing.ClassVar[int] = ...
    REPORTING_MODE_ONE_SHOT: typing.ClassVar[int] = ...
    REPORTING_MODE_ON_CHANGE: typing.ClassVar[int] = ...
    REPORTING_MODE_SPECIAL_TRIGGER: typing.ClassVar[int] = ...
    STRING_TYPE_ACCELEROMETER: typing.ClassVar[str] = ...
    STRING_TYPE_ACCELEROMETER_LIMITED_AXES: typing.ClassVar[str] = ...
    STRING_TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED: typing.ClassVar[str] = ...
    STRING_TYPE_ACCELEROMETER_UNCALIBRATED: typing.ClassVar[str] = ...
    STRING_TYPE_AMBIENT_TEMPERATURE: typing.ClassVar[str] = ...
    STRING_TYPE_GAME_ROTATION_VECTOR: typing.ClassVar[str] = ...
    STRING_TYPE_GEOMAGNETIC_ROTATION_VECTOR: typing.ClassVar[str] = ...
    STRING_TYPE_GRAVITY: typing.ClassVar[str] = ...
    STRING_TYPE_GYROSCOPE: typing.ClassVar[str] = ...
    STRING_TYPE_GYROSCOPE_LIMITED_AXES: typing.ClassVar[str] = ...
    STRING_TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED: typing.ClassVar[str] = ...
    STRING_TYPE_GYROSCOPE_UNCALIBRATED: typing.ClassVar[str] = ...
    STRING_TYPE_HEADING: typing.ClassVar[str] = ...
    STRING_TYPE_HEAD_TRACKER: typing.ClassVar[str] = ...
    STRING_TYPE_HEART_BEAT: typing.ClassVar[str] = ...
    STRING_TYPE_HEART_RATE: typing.ClassVar[str] = ...
    STRING_TYPE_HINGE_ANGLE: typing.ClassVar[str] = ...
    STRING_TYPE_LIGHT: typing.ClassVar[str] = ...
    STRING_TYPE_LINEAR_ACCELERATION: typing.ClassVar[str] = ...
    STRING_TYPE_LOW_LATENCY_OFFBODY_DETECT: typing.ClassVar[str] = ...
    STRING_TYPE_MAGNETIC_FIELD: typing.ClassVar[str] = ...
    STRING_TYPE_MAGNETIC_FIELD_UNCALIBRATED: typing.ClassVar[str] = ...
    STRING_TYPE_MOTION_DETECT: typing.ClassVar[str] = ...
    STRING_TYPE_ORIENTATION: typing.ClassVar[str] = ...
    STRING_TYPE_POSE_6DOF: typing.ClassVar[str] = ...
    STRING_TYPE_PRESSURE: typing.ClassVar[str] = ...
    STRING_TYPE_PROXIMITY: typing.ClassVar[str] = ...
    STRING_TYPE_RELATIVE_HUMIDITY: typing.ClassVar[str] = ...
    STRING_TYPE_ROTATION_VECTOR: typing.ClassVar[str] = ...
    STRING_TYPE_SIGNIFICANT_MOTION: typing.ClassVar[str] = ...
    STRING_TYPE_STATIONARY_DETECT: typing.ClassVar[str] = ...
    STRING_TYPE_STEP_COUNTER: typing.ClassVar[str] = ...
    STRING_TYPE_STEP_DETECTOR: typing.ClassVar[str] = ...
    STRING_TYPE_TEMPERATURE: typing.ClassVar[str] = ...
    TYPE_ACCELEROMETER: typing.ClassVar[int] = ...
    TYPE_ACCELEROMETER_LIMITED_AXES: typing.ClassVar[int] = ...
    TYPE_ACCELEROMETER_LIMITED_AXES_UNCALIBRATED: typing.ClassVar[int] = ...
    TYPE_ACCELEROMETER_UNCALIBRATED: typing.ClassVar[int] = ...
    TYPE_ALL: typing.ClassVar[int] = ...
    TYPE_AMBIENT_TEMPERATURE: typing.ClassVar[int] = ...
    TYPE_DEVICE_PRIVATE_BASE: typing.ClassVar[int] = ...
    TYPE_GAME_ROTATION_VECTOR: typing.ClassVar[int] = ...
    TYPE_GEOMAGNETIC_ROTATION_VECTOR: typing.ClassVar[int] = ...
    TYPE_GRAVITY: typing.ClassVar[int] = ...
    TYPE_GYROSCOPE: typing.ClassVar[int] = ...
    TYPE_GYROSCOPE_LIMITED_AXES: typing.ClassVar[int] = ...
    TYPE_GYROSCOPE_LIMITED_AXES_UNCALIBRATED: typing.ClassVar[int] = ...
    TYPE_GYROSCOPE_UNCALIBRATED: typing.ClassVar[int] = ...
    TYPE_HEADING: typing.ClassVar[int] = ...
    TYPE_HEAD_TRACKER: typing.ClassVar[int] = ...
    TYPE_HEART_BEAT: typing.ClassVar[int] = ...
    TYPE_HEART_RATE: typing.ClassVar[int] = ...
    TYPE_HINGE_ANGLE: typing.ClassVar[int] = ...
    TYPE_LIGHT: typing.ClassVar[int] = ...
    TYPE_LINEAR_ACCELERATION: typing.ClassVar[int] = ...
    TYPE_LOW_LATENCY_OFFBODY_DETECT: typing.ClassVar[int] = ...
    TYPE_MAGNETIC_FIELD: typing.ClassVar[int] = ...
    TYPE_MAGNETIC_FIELD_UNCALIBRATED: typing.ClassVar[int] = ...
    TYPE_MOTION_DETECT: typing.ClassVar[int] = ...
    TYPE_ORIENTATION: typing.ClassVar[int] = ...
    TYPE_POSE_6DOF: typing.ClassVar[int] = ...
    TYPE_PRESSURE: typing.ClassVar[int] = ...
    TYPE_PROXIMITY: typing.ClassVar[int] = ...
    TYPE_RELATIVE_HUMIDITY: typing.ClassVar[int] = ...
    TYPE_ROTATION_VECTOR: typing.ClassVar[int] = ...
    TYPE_SIGNIFICANT_MOTION: typing.ClassVar[int] = ...
    TYPE_STATIONARY_DETECT: typing.ClassVar[int] = ...
    TYPE_STEP_COUNTER: typing.ClassVar[int] = ...
    TYPE_STEP_DETECTOR: typing.ClassVar[int] = ...
    TYPE_TEMPERATURE: typing.ClassVar[int] = ...
    def getFifoMaxEventCount(self) -> int: ...
    def getFifoReservedEventCount(self) -> int: ...
    def getHighestDirectReportRateLevel(self) -> int: ...
    def getId(self) -> int: ...
    def getMaxDelay(self) -> int: ...
    def getMaximumRange(self) -> float: ...
    def getMinDelay(self) -> int: ...
    def getName(self) -> str: ...
    def getPower(self) -> float: ...
    def getReportingMode(self) -> int: ...
    def getResolution(self) -> float: ...
    def getStringType(self) -> str: ...
    def getType(self) -> int: ...
    def getVendor(self) -> str: ...
    def getVersion(self) -> int: ...
    def isAdditionalInfoSupported(self) -> bool: ...
    def isDirectChannelTypeSupported(self, sharedMemType: int | java.jint | java.lang.Integer, /) -> bool: ...
    def isDynamicSensor(self) -> bool: ...
    def isWakeUpSensor(self) -> bool: ...
    def toString(self) -> str: ...

class SensorAdditionalInfo(java.lang.Object):
    TYPE_FRAME_BEGIN: typing.ClassVar[int] = ...
    TYPE_FRAME_END: typing.ClassVar[int] = ...
    TYPE_INTERNAL_TEMPERATURE: typing.ClassVar[int] = ...
    TYPE_SAMPLING: typing.ClassVar[int] = ...
    TYPE_SENSOR_PLACEMENT: typing.ClassVar[int] = ...
    TYPE_UNTRACKED_DELAY: typing.ClassVar[int] = ...
    TYPE_VEC3_CALIBRATION: typing.ClassVar[int] = ...
    floatValues: java.chaquopy.JavaArrayJFloat = ...
    intValues: java.chaquopy.JavaArrayJInt = ...
    sensor: Sensor = ...
    serial: int = ...
    type: int = ...

class SensorDirectChannel(java.nio.channels.Channel):
    RATE_FAST: typing.ClassVar[int] = ...
    RATE_NORMAL: typing.ClassVar[int] = ...
    RATE_STOP: typing.ClassVar[int] = ...
    RATE_VERY_FAST: typing.ClassVar[int] = ...
    TYPE_HARDWARE_BUFFER: typing.ClassVar[int] = ...
    TYPE_MEMORY_FILE: typing.ClassVar[int] = ...
    def close(self) -> None: ...
    def configure(self, sensor: Sensor, rateLevel: int | java.jint | java.lang.Integer, /) -> int: ...
    def finalize(self) -> None: ...
    def isOpen(self) -> bool: ...

class SensorEvent(java.lang.Object):
    accuracy: int = ...
    firstEventAfterDiscontinuity: bool = ...
    sensor: Sensor = ...
    timestamp: int = ...
    values: java.chaquopy.JavaArrayJFloat = ...

class SensorEventCallback(SensorEventListener2):
    def __init__(self) -> None: ...
    def onAccuracyChanged(self, sensor: Sensor, accuracy: int | java.jint | java.lang.Integer, /) -> None: ...
    def onFlushCompleted(self, sensor: Sensor, /) -> None: ...
    def onSensorAdditionalInfo(self, info: SensorAdditionalInfo, /) -> None: ...
    def onSensorChanged(self, event: SensorEvent, /) -> None: ...

class SensorEventListener(java.lang.Object):
    def onAccuracyChanged(self, arg1: Sensor, arg2: int | java.jint | java.lang.Integer, /) -> None: ...
    def onSensorChanged(self, arg1: SensorEvent, /) -> None: ...

class SensorEventListener2(SensorEventListener):
    def onFlushCompleted(self, arg1: Sensor, /) -> None: ...

class SensorListener(java.lang.Object):
    def onAccuracyChanged(self, arg1: int | java.jint | java.lang.Integer, arg2: int | java.jint | java.lang.Integer, /) -> None: ...
    def onSensorChanged(self, arg1: int | java.jint | java.lang.Integer, arg2: java.chaquopy.JavaArrayJFloat, /) -> None: ...

class SensorManager(java.lang.Object):
    AXIS_MINUS_X: typing.ClassVar[int] = ...
    AXIS_MINUS_Y: typing.ClassVar[int] = ...
    AXIS_MINUS_Z: typing.ClassVar[int] = ...
    AXIS_X: typing.ClassVar[int] = ...
    AXIS_Y: typing.ClassVar[int] = ...
    AXIS_Z: typing.ClassVar[int] = ...
    DATA_X: typing.ClassVar[int] = ...
    DATA_Y: typing.ClassVar[int] = ...
    DATA_Z: typing.ClassVar[int] = ...
    GRAVITY_DEATH_STAR_I: typing.ClassVar[float] = ...
    GRAVITY_EARTH: typing.ClassVar[float] = ...
    GRAVITY_JUPITER: typing.ClassVar[float] = ...
    GRAVITY_MARS: typing.ClassVar[float] = ...
    GRAVITY_MERCURY: typing.ClassVar[float] = ...
    GRAVITY_MOON: typing.ClassVar[float] = ...
    GRAVITY_NEPTUNE: typing.ClassVar[float] = ...
    GRAVITY_PLUTO: typing.ClassVar[float] = ...
    GRAVITY_SATURN: typing.ClassVar[float] = ...
    GRAVITY_SUN: typing.ClassVar[float] = ...
    GRAVITY_THE_ISLAND: typing.ClassVar[float] = ...
    GRAVITY_URANUS: typing.ClassVar[float] = ...
    GRAVITY_VENUS: typing.ClassVar[float] = ...
    LIGHT_CLOUDY: typing.ClassVar[float] = ...
    LIGHT_FULLMOON: typing.ClassVar[float] = ...
    LIGHT_NO_MOON: typing.ClassVar[float] = ...
    LIGHT_OVERCAST: typing.ClassVar[float] = ...
    LIGHT_SHADE: typing.ClassVar[float] = ...
    LIGHT_SUNLIGHT: typing.ClassVar[float] = ...
    LIGHT_SUNLIGHT_MAX: typing.ClassVar[float] = ...
    LIGHT_SUNRISE: typing.ClassVar[float] = ...
    MAGNETIC_FIELD_EARTH_MAX: typing.ClassVar[float] = ...
    MAGNETIC_FIELD_EARTH_MIN: typing.ClassVar[float] = ...
    PRESSURE_STANDARD_ATMOSPHERE: typing.ClassVar[float] = ...
    RAW_DATA_INDEX: typing.ClassVar[int] = ...
    RAW_DATA_X: typing.ClassVar[int] = ...
    RAW_DATA_Y: typing.ClassVar[int] = ...
    RAW_DATA_Z: typing.ClassVar[int] = ...
    SENSOR_ACCELEROMETER: typing.ClassVar[int] = ...
    SENSOR_ALL: typing.ClassVar[int] = ...
    SENSOR_DELAY_FASTEST: typing.ClassVar[int] = ...
    SENSOR_DELAY_GAME: typing.ClassVar[int] = ...
    SENSOR_DELAY_NORMAL: typing.ClassVar[int] = ...
    SENSOR_DELAY_UI: typing.ClassVar[int] = ...
    SENSOR_LIGHT: typing.ClassVar[int] = ...
    SENSOR_MAGNETIC_FIELD: typing.ClassVar[int] = ...
    SENSOR_MAX: typing.ClassVar[int] = ...
    SENSOR_MIN: typing.ClassVar[int] = ...
    SENSOR_ORIENTATION: typing.ClassVar[int] = ...
    SENSOR_ORIENTATION_RAW: typing.ClassVar[int] = ...
    SENSOR_PROXIMITY: typing.ClassVar[int] = ...
    SENSOR_STATUS_ACCURACY_HIGH: typing.ClassVar[int] = ...
    SENSOR_STATUS_ACCURACY_LOW: typing.ClassVar[int] = ...
    SENSOR_STATUS_ACCURACY_MEDIUM: typing.ClassVar[int] = ...
    SENSOR_STATUS_NO_CONTACT: typing.ClassVar[int] = ...
    SENSOR_STATUS_UNRELIABLE: typing.ClassVar[int] = ...
    SENSOR_TEMPERATURE: typing.ClassVar[int] = ...
    SENSOR_TRICORDER: typing.ClassVar[int] = ...
    STANDARD_GRAVITY: typing.ClassVar[float] = ...
    def cancelTriggerSensor(self, listener: TriggerEventListener, sensor: Sensor, /) -> bool: ...
    @typing.overload
    def createDirectChannel(self, mem: HardwareBuffer, /) -> SensorDirectChannel: ...
    @typing.overload
    def createDirectChannel(self, mem: android.os.MemoryFile, /) -> SensorDirectChannel: ...
    def flush(self, listener: SensorEventListener, /) -> bool: ...
    @staticmethod
    def getAltitude(p0: float | java.jfloat | java.lang.Float, p: float | java.jfloat | java.lang.Float, /) -> float: ...
    @staticmethod
    def getAngleChange(angleChange: java.chaquopy.JavaArrayJFloat, R: java.chaquopy.JavaArrayJFloat, prevR: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    @typing.overload
    def getDefaultSensor(self, type: int | java.jint | java.lang.Integer, /) -> Sensor | None: ...
    @typing.overload
    def getDefaultSensor(self, type: int | java.jint | java.lang.Integer, wakeUp: bool | java.jboolean | java.lang.Boolean, /) -> Sensor | None: ...
    def getDynamicSensorList(self, type: int | java.jint | java.lang.Integer, /) -> java.util.List[Sensor]: ...
    @staticmethod
    def getInclination(I: java.chaquopy.JavaArrayJFloat, /) -> float: ...
    @staticmethod
    def getOrientation(R: java.chaquopy.JavaArrayJFloat, values: java.chaquopy.JavaArrayJFloat, /) -> java.chaquopy.JavaArrayJFloat: ...
    @staticmethod
    def getQuaternionFromVector(Q: java.chaquopy.JavaArrayJFloat, rv: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    @staticmethod
    def getRotationMatrix(R: java.chaquopy.JavaArrayJFloat, I: java.chaquopy.JavaArrayJFloat, gravity: java.chaquopy.JavaArrayJFloat, geomagnetic: java.chaquopy.JavaArrayJFloat, /) -> bool: ...
    @staticmethod
    def getRotationMatrixFromVector(R: java.chaquopy.JavaArrayJFloat, rotationVector: java.chaquopy.JavaArrayJFloat, /) -> None: ...
    def getSensorList(self, type: int | java.jint | java.lang.Integer, /) -> java.util.List[Sensor]: ...
    def getSensors(self) -> int: ...
    def isDynamicSensorDiscoverySupported(self) -> bool: ...
    @typing.overload
    def registerDynamicSensorCallback(self, callback: SensorManager.DynamicSensorCallback, /) -> None: ...
    @typing.overload
    def registerDynamicSensorCallback(self, callback: SensorManager.DynamicSensorCallback, handler: android.os.Handler, /) -> None: ...
    @typing.overload
    def registerListener(self, listener: SensorListener, sensors: int | java.jint | java.lang.Integer, /) -> bool: ...
    @typing.overload
    def registerListener(self, listener: SensorEventListener, sensor: Sensor, samplingPeriodUs: int | java.jint | java.lang.Integer, /) -> bool: ...
    @typing.overload
    def registerListener(self, listener: SensorListener, sensors: int | java.jint | java.lang.Integer, rate: int | java.jint | java.lang.Integer, /) -> bool: ...
    @typing.overload
    def registerListener(self, listener: SensorEventListener, sensor: Sensor, samplingPeriodUs: int | java.jint | java.lang.Integer, maxReportLatencyUs: int | java.jint | java.lang.Integer, /) -> bool: ...
    @typing.overload
    def registerListener(self, listener: SensorEventListener, sensor: Sensor, samplingPeriodUs: int | java.jint | java.lang.Integer, handler: android.os.Handler, /) -> bool: ...
    @typing.overload
    def registerListener(self, listener: SensorEventListener, sensor: Sensor, samplingPeriodUs: int | java.jint | java.lang.Integer, maxReportLatencyUs: int | java.jint | java.lang.Integer, handler: android.os.Handler, /) -> bool: ...
    @staticmethod
    def remapCoordinateSystem(inR: java.chaquopy.JavaArrayJFloat, X: int | java.jint | java.lang.Integer, Y: int | java.jint | java.lang.Integer, outR: java.chaquopy.JavaArrayJFloat, /) -> bool: ...
    def requestTriggerSensor(self, listener: TriggerEventListener, sensor: Sensor, /) -> bool: ...
    def unregisterDynamicSensorCallback(self, callback: SensorManager.DynamicSensorCallback, /) -> None: ...
    @typing.overload
    def unregisterListener(self, listener: SensorEventListener, /) -> None: ...
    @typing.overload
    def unregisterListener(self, listener: SensorListener, /) -> None: ...
    @typing.overload
    def unregisterListener(self, listener: SensorEventListener, sensor: Sensor, /) -> None: ...
    @typing.overload
    def unregisterListener(self, listener: SensorListener, sensors: int | java.jint | java.lang.Integer, /) -> None: ...

    class DynamicSensorCallback(java.lang.Object):
        def __init__(self) -> None: ...
        def onDynamicSensorConnected(self, sensor: Sensor, /) -> None: ...
        def onDynamicSensorDisconnected(self, sensor: Sensor, /) -> None: ...

class SensorPrivacyManager(java.lang.Object):
    TOGGLE_TYPE_HARDWARE: typing.ClassVar[int] = ...
    TOGGLE_TYPE_SOFTWARE: typing.ClassVar[int] = ...
    @typing.overload
    def supportsSensorToggle(self, sensor: int | java.jint | java.lang.Integer, /) -> bool: ...
    @typing.overload
    def supportsSensorToggle(self, toggleType: int | java.jint | java.lang.Integer, sensor: int | java.jint | java.lang.Integer, /) -> bool: ...

    class Sensors(java.lang.Object):
        CAMERA: typing.ClassVar[int] = ...
        MICROPHONE: typing.ClassVar[int] = ...

class SyncFence(android.os.Parcelable, java.lang.AutoCloseable):
    CREATOR: typing.ClassVar[android.os.Parcelable.Creator[SyncFence]] = ...
    SIGNAL_TIME_INVALID: typing.ClassVar[int] = ...
    SIGNAL_TIME_PENDING: typing.ClassVar[int] = ...
    def __init__(self, other: SyncFence, /) -> None: ...
    def awaitForever(self) -> bool: ...
    def await_(self, timeout: java.time.Duration, /) -> bool: ...
    def close(self) -> None: ...
    def describeContents(self) -> int: ...
    def getSignalTime(self) -> int: ...
    def isValid(self) -> bool: ...
    def writeToParcel(self, out: android.os.Parcel, flags: int | java.jint | java.lang.Integer, /) -> None: ...

class TriggerEvent(java.lang.Object):
    sensor: Sensor = ...
    timestamp: int = ...
    values: java.chaquopy.JavaArrayJFloat = ...

class TriggerEventListener(java.lang.Object):
    def __init__(self) -> None: ...
    def onTrigger(self, arg1: TriggerEvent, /) -> None: ...
