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.
83 lines (82 loc) • 2.35 kB
TypeScript
export declare enum TrustCommand {
signMessage = "sign-message",
signPersonalMessage = "sign-personal-message",
signTransaction = "sign-transaction",
}
/**
* @typedef {Object} Result
* @property {string} id payload id
* @property {string} result result value
* @property {string} error error message
*/
export declare namespace TrustCommand {
/**
* helper method to parse url called back from Trust
* @param urlString url called back
* @returns {Result} parsed result
*/
function parseURL(urlString: string): {
id: string;
result: string;
error: string;
};
/**
* generate url for Linking.openURL
* @param data concrete command payload
* @param scheme target wallet scheme default: trust://
*/
function getURL(data: Payload, scheme?: string): string;
}
/**
* Abstract Payload for TrustCommand
*/
export interface Payload {
id: string;
type: TrustCommand;
callbackScheme: string;
toQuery(): string;
}
/**
* MessagePayload for TrustCommand.signMessage|.signPersonalMessage
*/
export declare class MessagePayload implements Payload {
id: string;
message: string;
address: string;
callbackScheme: string;
type: TrustCommand;
/**
* constructor
* @param message message to sign
* @param address optional wallet address
* @param callbackScheme scheme for Trust calls back
*/
constructor(message: string, address?: string, callbackScheme?: string);
toQuery(): string;
}
/**
* TransactionPayload for TrustCommand.signTransaction
*/
export declare class TransactionPayload implements Payload {
id: string;
gasPrice: string;
gasLimit: string;
to: string;
amount: string;
nonce: string;
data: string;
callbackScheme: string;
type: TrustCommand;
/**
* constructor
* @param to EIP55 Address
* @param amount Amount
* @param data optioanl transaction data represented by hex string
* @param gasPrice default: 21, unit: Gwei
* @param gasLimit default: 21000
* @param nonce default: 0
* @param callbackScheme scheme for Trust calls back
*/
constructor(to: string, amount: string, data?: string, gasPrice?: string, gasLimit?: string, nonce?: string, callbackScheme?: string);
toQuery(): string;
}