@streambird/streambird-js
Version:
39 lines (38 loc) • 1.65 kB
TypeScript
import { StreambirdWalletType } from '@streambird/web3-core';
import { EmailMagicLinkOptions } from './types/email-magic-link-options';
import { StreambirdClientProps } from './types/streambird-client-props';
export interface CheckLoginStatusResponse {
public_address?: string;
session_token: string;
wallet_type?: StreambirdWalletType;
publicAddress?: string;
sessionToken: string;
sessionJwt: string;
walletType?: StreambirdWalletType;
}
export interface LoginOrCreateResponse {
verifiedRequired: boolean;
emailId: string;
requestOriginToken: string;
}
export declare type SessionTokenCallback = (sessionToken: string) => void;
export declare class MagicLinks {
props?: StreambirdClientProps;
publicKey: string;
loginVerified: boolean;
verifyInProgress: boolean;
overrideClearInterval: boolean;
private apiHost?;
private headless?;
private emailMagicLinkOptions?;
constructor(publicKey: string, apiHost?: string, headless?: boolean, emailMagicLinkOptions?: EmailMagicLinkOptions);
loginOrCreate: (email?: string | undefined) => Promise<CheckLoginStatusResponse | LoginOrCreateResponse>;
beginVerifyEmail: (data: LoginOrCreateResponse) => Promise<CheckLoginStatusResponse>;
beginLoginOrCreate: (email: string) => Promise<LoginOrCreateResponse>;
performCheckLoginStatus: (verificationData: Omit<LoginOrCreateResponse, 'verifiedRequired'>, opts?: {
extraErrors: boolean;
}) => Promise<CheckLoginStatusResponse | undefined>;
getWalletType: () => StreambirdWalletType;
getValidWallet: () => boolean;
getAutoVerify: () => boolean;
}