UNPKG

react-native-trust-sdk

Version:

The react-native-trust-sdk lets you sign Ethereum transactions and messages with Trust Wallet so that you can bulid a react native DApp without having to worry about keys or wallets.

67 lines (66 loc) 2.01 kB
import { TrustCommand, MessagePayload, TransactionPayload } from './lib/commands'; export declare enum TrustError { unknown = -1, none = 0, cancelled = 1, invalidRequest = 2, watchOnly = 3, notInstalled = 1000, } export declare namespace TrustError { function toString(error: TrustError): "" | "Unknown Error" | "No Error" | "User cancelled" | "Signing request is invalid" | "Wallet is watch only" | "Trust Wallet is not installed"; } declare class TrustWallet { callbackScheme: string; app: { name: string; scheme: string; AppStoreURL: string; GooglePlayURL: string; }; resolvers: { [key: string]: (value: string) => void; }; rejectors: { [key: string]: (value: Object) => void; }; /** * constructor * @param callbackScheme default callback scheme */ constructor(callbackScheme: string); /** * start listening openURL event, you don't need to call it unless you explicit called cleanup */ start(): void; /** * stop listening openURL event and clean resolvers */ cleanup(): void; /** * check if Trust Wallet is installed */ installed(): Promise<boolean>; /** * sign a transaction * @param payload transaction payload * @returns {Promise<string>} signed transaction hash */ signTransaction(payload: TransactionPayload): Promise<string>; /** * sign a message * @param payload message payload * @returns {Promise<string>} signed message hash */ signMessage(payload: MessagePayload): Promise<string>; /** * sign a personal message * @param payload message payload * @returns {Promise<string>} signed personal message hash */ signPersonalMessage(payload: MessagePayload): Promise<string>; private runCommand(payload); private handleOpenURL(event); } export default TrustWallet; export { TrustCommand, MessagePayload, TransactionPayload };