react-native-google-mobile-ads
    Preparing search index...

    Type Alias AdError

    The single error type every v17 hook and multi-format load result uses.

    It is a real Error (it can be thrown, and it has a stack) that also carries the structured payload, so reason / phase / responseInfo branching works on a hook error exactly as documented, rather than reading undefined.

    This mirrors the classic event path, where the payload of an AdEventType ERROR event is Error & AdErrorPayload. One shape, both delivery styles.

    Branch on phase before reason: a show-phase no-fill is still a presentation failure, while a load-phase no-fill is routine inventory emptiness.

    ad.addAdEventListener(AdEventType.ERROR, error => {
    if (error.phase === 'show') {
    reportPresentationFailure(error);
    } else if (error.reason === 'no-fill' || error.reason === 'mediation-no-fill') {
    scheduleRetry();
    } else {
    reportLoadFailure(error);
    }
    });

    NativeError itself is deliberately not widened: it is shared with legacy code paths that have no structured payload to supply.