import * as ethers from "ethers"; import { GetUserInfoResponse, GetWalletResponse, MPConstructorParams } from "./interfaces"; import { HallidayBase } from "./base"; /** * @Deprecated */ export declare class Halliday extends HallidayBase { private readonly web3authClient; private initPromise; /** * @Deprecated * Constructor for the Halliday client. * * @param {string} apiKey API key provided to you by the Halliday team * @param {string} blockchainType Blockchain of the Halliday AA wallet * @param {string} verifierClientId Verifier client id provided to you by the Halliday team */ constructor({ hallidayPublicApiKey, blockchainType, verifierClientId }: MPConstructorParams); /** * Sends user to Google to login. Will then redirect to OpenLogin to * generate the wallet key, then redirect back to your login page. * If the process was successful, you'll be able to use getSigner() * to get their signer. */ logInWithGoogle(): Promise; /** * Sends user to Facebook to login. Will then redirect to OpenLogin to * generate the wallet key, then redirect back to your login page. * If the process was successful, you'll be able to use getSigner() * to get their signer. */ logInWithFacebook(): Promise; /** * Sends user to Twitter to login. Will then redirect to OpenLogin to * generate the wallet key, then redirect back to your login page. * If the process was successful, you'll be able to use getSigner() * to get their signer. */ logInWithTwitter(): Promise; /** * Sends user to Line to login. Will then redirect to OpenLogin to * generate the wallet key, then redirect back to your login page. * If the process was successful, you'll be able to use getSigner() * to get their signer. */ logInWithLine(): Promise; /** * Logs in with email OTP. After the user clicks on the link in * their email, the page will redirect back to your login page. * If the process was successful, you'll be able to use getSigner() * to get their signer. * * @param {string} email The email to log in with */ logInWithEmailOTP(email: string): Promise; /** * Logs the user out */ logOut(): Promise; /** * Returns the user's info (email, name, signer) if they are logged in. * * @returns {Promise} The user's info: email, name, * and ethers.JsonRpcSigner. Returns null if the user is not logged in. */ getUserInfo(): Promise; private ensureInitialized; private ensureConnected; getSigner(): Promise; private _logInWithProvider; /*************************************************** * * * API METHODS * * * ***************************************************/ /** * After logging in using one of the above options, you can call getUserInfo * and use the returned info to create an account on your end. Then, call * this function, getOrCreateHallidayAAWallet, with the user's id in your * system. This function will get or create the Halliday AA wallet, that * the non-custodial wallet will be the owner of. * * Need to call this before any of the below methods to make sure the user * has a Halliday AA Wallet * * @param {string} alias * @returns {Promise} Halliday AA wallet info */ getOrCreateHallidayAAWallet(alias: string): Promise; }