WalletHandle
FWalletHandle is the base struct that provides a unique handle for distinguishing different types of wallets in the
Thirdweb SDK. It supports a variety of shared operations and is not used directly, but rather inherited.
Wallet handle type identifier.
- InvalidHandle: Represents an uninitialized or invalid handle.
- InApp: Represents an in-app wallet.
- Smart: Represents a smart contract wallet.
- IsValid(): Checks if the wallet handle is valid.
- Invalidate(): Invalidates the wallet handle, setting its ID to zero and marking its type as invalid.
- ToAddress(): Retrieves the wallet address associated with this handle.
- Sign(Message): Sign a message using the wallet handle.
- GetType(): Get the type of wallet handle.
- GetID(): Gets the ID of the wallet handle.
- GetDisplayName(): Retrieves the debug display name of the wallet handle.
- GetTypeString(): Retrieves the type of the wallet handle as a string.
- operator==: Compares two wallet handles for equality.
- operator!=: Compares two wallet handles for inequality.
InAppWalletHandle
FInAppWalletHandle provides a unique handle for InApp wallets. It supports a variety of operations for authentication.
Source that created the InApp wallet
- InvalidSource: Represents an uninitialized or invalid source.
- OAuthProvider: Represents an OAuth provider source.
- Email: Represents an email source.
- Phone: Represents a phone source.
- Jwt: Represents a JWT source.
- AuthEndpoint: Represents an auth endpoint source.
- Guest: Represents a guest source.
- CreateEmailWallet(Email, Wallet, Error): Creates an in-app email wallet.
- CreateEcosystemEmailWallet(PartnerId, Email, Wallet, Error): Creates an ecosystem email wallet.
- CreateOAuthWallet(Provider, Wallet, Error): Creates an in-app OAuth wallet using the specified provider.
- CreateEcosystemOAuthWallet(PartnerId, Provider, Wallet, Error): Creates an ecosystem OAuth wallet using the specified provider.
- CreatePhoneWallet(Phone, Wallet, Error): Creates an in-app phone wallet.
- CreateEcosystemPhoneWallet(PartnerId, Phone, Wallet, Error): Creates an ecosystem phone wallet.
- CreateJwtWallet(Wallet, Error): Creates an in-app JWT wallet.
- CreateEcosystemJwtWallet(PartnerId, Wallet, Error): Creates an ecosystem JWT wallet.
- CreateAuthEndpointWallet(Wallet, Error): Creates an in-app wallet using an authentication endpoint.
- CreateEcosystemAuthEndpointWallet(PartnerId, Wallet, Error): Creates an ecosystem wallet using an authentication endpoint.
- CreateGuestWallet(Email, Wallet, Error): Creates an in-app guest wallet.
- CreateEcosystemGuestWallet(PartnerId, Email, Wallet, Error): Creates an ecosystem guest wallet.
- IsConnected(): Checks if the wallet is connected to a session.
- Disconnect(): Disconnects a wallet from a session.
- VerifyOTP(Method, OTP, Error): Verifies an OTP for in-app wallets.
- SendOTP(Method, Error): Sends an OTP for in-app wallets.
- FetchOAuthLoginURL(RedirectUrl, LoginLink, Error): Fetches the OAuth login URL for in-app wallets.
- SignInWithOAuth(AuthResult, Error): Signs in using OAuth authentication details.
- SignInWithJwt(Jwt, Error): Signs in using a JSON Web Token (JWT).
- SignInWithAuthEndpoint(Jwt, Error): Signs in using any payload.
- SignInWithGuest(Error): Signs in as an anonymous guest user using a semi-reproducible device fingerprint. Fingerprints can change from update to update and should not be relied upon for long term use.
- GetSourceString(): Retrieves the source as an- FString.
- GetSourceString(Source): Retrieves the specified source as an- FString.
- GetOAuthProvider(): Retrieves the configured OAuth provider.
SmartWalletHandle
FSmartWalletHandle provides a unique handle for smart wallets. It supports a variety of operations for handling
sessions, and interacting with smart contract wallets.
- Create(InInAppWallet, ChainID, bGasless, Factory, AccountOverride, bSuccess, Error): Creates a smart wallet.
- IsDeployed(bDeployed, Error): Checks if the smart wallet is deployed.
- CreateSessionKey(Signer, ApprovedTargets, NativeTokenLimitPerTransactionInWei, PermissionStart, PermissionEnd, RequestValidityStart, RequestValidityEnd, TransactionHash, Error): Creates a session key for a smart wallet.
- RevokeSessionKey(Signer, Error): Revokes a session key for a smart wallet.
- GetAdmins(Admins, Error): Retrieves the admins of a smart wallet.
- AddAdmin(Signer, Error): Adds an admin to a smart wallet.
- RemoveAdmin(Signer, Error): Removes an admin from a smart wallet.
- GetActiveSigners(Signers, Error): Retrieves the active signers of a smart wallet.