import typing

import android.app
import android.app.sdksandbox
import android.content
import android.os
import java
import java.lang
import java.util
import java.util.concurrent

class SdkSandboxActivityHandler(java.lang.Object):
    def onActivityCreated(self, arg1: android.app.Activity, /) -> None: ...

class SdkSandboxClientImportanceListener(java.lang.Object):
    def onForegroundImportanceChanged(self, arg1: bool | java.jboolean | java.lang.Boolean, /) -> None: ...

class SdkSandboxController(java.lang.Object):
    SDK_SANDBOX_CONTROLLER_SERVICE: typing.ClassVar[str] = ...
    def getAppOwnedSdkSandboxInterfaces(self) -> java.util.List[android.app.sdksandbox.AppOwnedSdkSandboxInterface]: ...
    def getClientPackageName(self) -> str: ...
    def getClientSharedPreferences(self) -> android.content.SharedPreferences: ...
    def getSandboxedSdks(self) -> java.util.List[android.app.sdksandbox.SandboxedSdk]: ...
    def loadSdk(self, sdkName: str | java.lang.String, params: android.os.Bundle, executor: java.util.concurrent.Executor, receiver: android.os.OutcomeReceiver[android.app.sdksandbox.SandboxedSdk, android.app.sdksandbox.LoadSdkException], /) -> None: ...
    def registerSdkSandboxActivityHandler(self, sdkSandboxActivityHandler: SdkSandboxActivityHandler, /) -> android.os.IBinder: ...
    def registerSdkSandboxClientImportanceListener(self, executor: java.util.concurrent.Executor, listener: SdkSandboxClientImportanceListener, /) -> None: ...
    def unregisterSdkSandboxActivityHandler(self, sdkSandboxActivityHandler: SdkSandboxActivityHandler, /) -> None: ...
    def unregisterSdkSandboxClientImportanceListener(self, listener: SdkSandboxClientImportanceListener, /) -> None: ...
