import typing

import android.adservices.common
import android.content
import android.os
import java
import java.lang
import java.util.concurrent

class AdId(java.lang.Object):
    ZERO_OUT: typing.ClassVar[str] = ...
    def __init__(self, adId: str | java.lang.String, limitAdTrackingEnabled: bool | java.jboolean | java.lang.Boolean, /) -> None: ...
    def equals(self, o: java.lang.Object | int | bool | float | str, /) -> bool: ...
    def getAdId(self) -> str: ...
    def hashCode(self) -> int: ...
    def isLimitAdTrackingEnabled(self) -> bool: ...
    def toString(self) -> str: ...

class AdIdManager(java.lang.Object):
    @staticmethod
    def get(context: android.content.Context, /) -> AdIdManager: ...
    @typing.overload
    def getAdId(self, executor: java.util.concurrent.Executor, callback: android.adservices.common.AdServicesOutcomeReceiver[AdId, java.lang.Exception], /) -> None: ...
    @typing.overload
    def getAdId(self, executor: java.util.concurrent.Executor, callback: android.os.OutcomeReceiver[AdId, java.lang.Exception], /) -> None: ...
