@toruslabs/torus-embed
Version:
Embed script for Torus
89 lines (88 loc) • 3.79 kB
TypeScript
import { ObjectMultiplex } from "@toruslabs/openlogin-jrpc";
import TorusInpageProvider from "./inpage-provider";
import { BUTTON_POSITION_TYPE, EMBED_TRANSLATION_ITEM, NetworkInterface, PAYMENT_PROVIDER_TYPE, PaymentParams, TorusCtorArgs, TorusLoginParams, TorusParams, TorusPublicKey, UserInfo, VerifierArgs, WALLET_PATH, WhiteLabelParams } from "./interfaces";
declare class Torus {
buttonPosition: BUTTON_POSITION_TYPE;
buttonSize: number;
torusUrl: string;
torusIframe: HTMLIFrameElement;
styleLink: HTMLLinkElement;
isLoggedIn: boolean;
isInitialized: boolean;
torusWidgetVisibility: boolean;
torusAlert: HTMLDivElement;
apiKey: string;
modalZIndex: number;
alertZIndex: number;
torusAlertContainer: HTMLDivElement;
isIframeFullScreen: boolean;
whiteLabel: WhiteLabelParams;
requestedVerifier: string;
currentVerifier: string;
embedTranslations: EMBED_TRANSLATION_ITEM;
ethereum: TorusInpageProvider;
provider: TorusInpageProvider;
communicationMux: ObjectMultiplex;
isLoginCallback: () => void;
paymentProviders: {
moonpay: import("./interfaces").IPaymentProvider;
rampnetwork: import("./interfaces").IPaymentProvider;
mercuryo: import("./interfaces").IPaymentProvider;
transak: import("./interfaces").IPaymentProvider;
banxa: {
line1: string;
line2: string;
line3: string;
supportPage: string;
minOrderValue: number;
maxOrderValue: number;
validCurrencies: string[];
validCryptoCurrenciesByChain: {
mainnet: {
value: string;
display: string;
}[];
matic: {
value: string;
display: string;
}[];
};
includeFees: boolean;
enforceMax: boolean;
};
};
private loginHint;
private useWalletConnect;
private isCustomLogin;
constructor({ buttonPosition, buttonSize, modalZIndex, apiKey }?: TorusCtorArgs);
init({ buildEnv, enableLogging, network, loginConfig, showTorusButton, integrity, whiteLabel, useWalletConnect, mfaLevel, }?: TorusParams): Promise<void>;
login({ verifier, login_hint: loginHint }?: TorusLoginParams): Promise<string[]>;
logout(): Promise<void>;
cleanUp(): Promise<void>;
clearInit(): void;
hideTorusButton(): void;
showTorusButton(): void;
setProvider({ host, chainId, networkName, ...rest }: NetworkInterface): Promise<void>;
showWallet(path: WALLET_PATH, params?: Record<string, string>): void;
getPublicAddress({ verifier, verifierId, isExtended }: VerifierArgs): Promise<string | TorusPublicKey>;
getUserInfo(message: string): Promise<UserInfo>;
initiateTopup(provider: PAYMENT_PROVIDER_TYPE, params: PaymentParams): Promise<boolean>;
loginWithPrivateKey(loginParams: {
privateKey: string;
userInfo: Omit<UserInfo, "isNewUser">;
}): Promise<boolean>;
showWalletConnectScanner(): Promise<boolean>;
protected _handleWindow(preopenInstanceId: string, { url, target, features }?: {
url?: string;
target?: string;
features?: string;
}): void;
protected _setEmbedWhiteLabel(element: HTMLElement): void;
protected _getLogoUrl(): string;
protected _sendWidgetVisibilityStatus(status: boolean): void;
protected _displayIframe(isFull?: boolean): void;
protected _setupWeb3(): void;
protected _showLoginPopup(calledFromEmbed: boolean, resolve: (a: string[]) => void, reject: (err: Error) => void): void;
protected _createPopupBlockAlert(preopenInstanceId: string, url: string): void;
}
export default Torus;