Presents the provider's own account UI and resolves with the ID token it issues for the selected account.
Resolve null to decline the attempt after all — the SDK then falls back
to the browser flow. Use this for conditions that only surface once the
flow starts, such as Google Play services being absent or too old.
Reject to abort the login outright; the rejection reaches the caller unchanged, so a user dismissing the sheet is reported as a cancellation rather than silently reopening in a browser.
The provider name as passed to loginWithOauth.
The provider ID token, or null to fall back to the browser.
Whether an on-device flow exists for this provider on this build and
device. Checked before any UI is shown, so returning false lets the SDK
use the browser flow with nothing presented to the user.
The provider name as passed to loginWithOauth
(an ESPIdProvider value).
True when getIdToken can be attempted for this provider.
OptionalsignClears any credential state the provider caches on the device, so the next sign-in asks the user to pick an account again. Optional; called on logout when implemented.
Interface for an on-device (native) sign-in adapter.
Supplies the SDK with the platform's own account UI — the Google Sign-In SDK, Sign in with Apple, and so on — so that
ESPRMAuth.loginWithOauthcan obtain a provider ID token without opening a browser. The adapter is a platform resource only: it never talks to the RainMaker backend. The SDK owns the exchange, token persistence, and the fallback to the browser flow.