Class: SafeWallet
"wallets/SafeWallet".SafeWallet
#
Hierarchy- SafeWallet
#
Implements#
Constructors#
constructor+ new SafeWallet(provider
: TLProvider, safeRelayProvider
: SafeRelayProvider, chainId
: number, identityFactoryAddress
: string, identityImplementationAddress
: string, gnosisSafeL2Address
: string, gnosisSafeProxyFactoryAddress
: string, nonceMechanism
: NonceMechanism): SafeWallet
Defined in src/wallets/SafeWallet.ts:52
#
Parameters:Name | Type |
---|---|
provider | TLProvider |
safeRelayProvider | SafeRelayProvider |
chainId | number |
identityFactoryAddress | string |
identityImplementationAddress | string |
gnosisSafeL2Address | string |
gnosisSafeProxyFactoryAddress | string |
nonceMechanism | NonceMechanism |
Returns: SafeWallet
#
Properties#
provider• provider: TLProvider
Defined in src/wallets/SafeWallet.ts:41
#
Accessors#
address• get address(): string
Defined in src/wallets/SafeWallet.ts:75
Returns: string
#
Methods#
buildMetaTransactionâ–¸ buildMetaTransaction(rawTx
: RawTxObject): SafeMetaTransaction
Defined in src/wallets/SafeWallet.ts:513
#
Parameters:Name | Type |
---|---|
rawTx | RawTxObject |
Returns: SafeMetaTransaction
#
confirmâ–¸ confirm(rawTx
: RawTxObject): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:331
Takes a raw transaction object, turns it into a meta-transaction signed by the loaded user and relays the transaction.
#
Parameters:Name | Type | Description |
---|---|---|
rawTx | RawTxObject | Raw transaction object. |
Returns: Promise<string>
the hash of the meta-transaction
#
createâ–¸ create(): Promise<SafeWalletData>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:108
Creates wallet data of type identity
.
Returns: Promise<SafeWalletData>
#
decryptâ–¸ decrypt(encMsg
: any, theirPubKey
: string): Promise<any>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:313
#
Parameters:Name | Type |
---|---|
encMsg | any |
theirPubKey | string |
Returns: Promise<any>
#
deployIdentityâ–¸ deployIdentity(): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:150
Deploys a new identity contract on the chain
Returns: Promise<string>
#
encryptâ–¸ encrypt(msg
: string, theirPubKey
: string): Promise<any>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:309
#
Parameters:Name | Type |
---|---|
msg | string |
theirPubKey | string |
Returns: Promise<any>
#
encryptToSerializedKeystoreâ–¸ encryptToSerializedKeystore(walletData
: SafeWalletData, password
: string, progressCallback?
: (progress: number) => any): Promise<string>
Defined in src/wallets/SafeWallet.ts:500
Returns a serialized encrypted ethereum JSON keystore v3.
#
Parameters:Name | Type | Description |
---|---|---|
walletData | SafeWalletData | Wallet data of type identity . |
password | string | Password to encrypt wallet data. |
progressCallback? | (progress: number) => any | Optional encryption progress callback. |
Returns: Promise<string>
#
exportPrivateKeyâ–¸ exportPrivateKey(): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:302
Returns a Promise
with the private key of loaded user.
Returns: Promise<string>
#
getAddressâ–¸ getAddress(): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:83
Returns: Promise<string>
#
getBalanceâ–¸ getBalance(): Promise<Amount>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:98
Returns: Promise<Amount>
#
getIdentityImplementationAddressâ–¸ getIdentityImplementationAddress(): Promise<string>
Defined in src/wallets/SafeWallet.ts:215
Returns: Promise<string>
#
getMetaTxFeesâ–¸ getMetaTxFees(rawTx
: RawTxObject): Promise<SafeTransactionFees>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:479
#
Parameters:Name | Type |
---|---|
rawTx | RawTxObject |
Returns: Promise<SafeTransactionFees>
#
getNonceâ–¸ getNonce(): Promise<string>
Defined in src/wallets/SafeWallet.ts:531
Returns: Promise<string>
#
getTxStatusâ–¸ getTxStatus(metaTx
: string | RawTxObject): Promise<TransactionStatusObject>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:486
#
Parameters:Name | Type |
---|---|
metaTx | string | RawTxObject |
Returns: Promise<TransactionStatusObject>
#
getWalletDataâ–¸ getWalletData(): Promise<SafeWalletData>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:90
Returns: Promise<SafeWalletData>
#
hashMetaTransactionâ–¸ hashMetaTransaction(metaTransaction
: SafeMetaTransaction): Promise<string>
Defined in src/wallets/SafeWallet.ts:355
#
Parameters:Name | Type |
---|---|
metaTransaction | SafeMetaTransaction |
Returns: Promise<string>
#
hashTxâ–¸ hashTx(rawTx
: RawTxObject): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:347
Return the meta-tx hash for given raw transaction for loaded user
#
Parameters:Name | Type | Description |
---|---|---|
rawTx | RawTxObject |
Returns: Promise<string>
#
isIdentityDeployedâ–¸ isIdentityDeployed(): Promise<boolean>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:184
Returns: Promise<boolean>
#
isIdentityImplementationUpToDateâ–¸ isIdentityImplementationUpToDate(): Promise<boolean>
Defined in src/wallets/SafeWallet.ts:208
Returns: Promise<boolean>
#
loadFromâ–¸ loadFrom(walletData
: SafeWalletData): Promise<void>
Defined in src/wallets/SafeWallet.ts:223
Loads given wallet data of type identity
.
#
Parameters:Name | Type | Description |
---|---|---|
walletData | SafeWalletData | Wallet data of type identity . |
Returns: Promise<void>
#
prepareImplementationUpdateâ–¸ prepareImplementationUpdate(transaction
: Transaction, options?
: TxOptionsInternal): Promise<TxObjectInternal>
Defined in src/wallets/SafeWallet.ts:536
#
Parameters:Name | Type | Default value |
---|---|---|
transaction | Transaction | - |
options | TxOptionsInternal | {} |
Returns: Promise<TxObjectInternal>
#
prepareTransactionâ–¸ prepareTransaction(rawTx
: RawTxObject): Promise<TxObjectRaw>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:445
#
Parameters:Name | Type |
---|---|
rawTx | RawTxObject |
Returns: Promise<TxObjectRaw>
#
recoverFromEncryptedKeystoreâ–¸ recoverFromEncryptedKeystore(serializedEncryptedKeystore
: string, password
: string, progressCallback?
: (progress: number) => any): Promise<SafeWalletData>
Defined in src/wallets/SafeWallet.ts:238
Recovers wallet data from a serialized encrypted ethereum JSON keystore v3
(e.g. as returned by encryptToSerializedKeystore
).
#
Parameters:Name | Type | Description |
---|---|---|
serializedEncryptedKeystore | string | Serialized encrypted ethereum JSON keystore v3. |
password | string | Password to decrypt serialized encrypted ethereum JSON keystore v3 with. |
progressCallback? | (progress: number) => any | Callback function for decryption progress. |
Returns: Promise<SafeWalletData>
#
recoverFromPrivateKeyâ–¸ recoverFromPrivateKey(privateKey
: string): Promise<SafeWalletData>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:277
Recovers wallet data from private key.
Note that mnemonic and derivation path is undefined
here.
#
Parameters:Name | Type | Description |
---|---|---|
privateKey | string | Private key to recover wallet data from. |
Returns: Promise<SafeWalletData>
#
recoverFromSeedâ–¸ recoverFromSeed(seed
: string): Promise<SafeWalletData>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:260
Recovers wallet data from mnemonic phrase.
#
Parameters:Name | Type | Description |
---|---|---|
seed | string | Mnemonic seed phrase. |
Returns: Promise<SafeWalletData>
#
showSeedâ–¸ showSeed(): Promise<string>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:292
Returns a Promise
with the mnemonic seed phrase of loaded user.
Returns: Promise<string>
#
signMessageâ–¸ signMessage(message
: BytesLike): Promise<Signature>
Defined in src/wallets/SafeWallet.ts:321
#
Parameters:Name | Type |
---|---|
message | BytesLike |
Returns: Promise<Signature>
#
signMetaTransactionâ–¸ signMetaTransaction(metaTransaction
: SafeMetaTransaction): Promise<string>
Defined in src/wallets/SafeWallet.ts:435
#
Parameters:Name | Type |
---|---|
metaTransaction | SafeMetaTransaction |
Returns: Promise<string>
#
signMsgHashâ–¸ signMsgHash(msgHash
: string): Promise<Signature>
Implementation of TLWallet
Defined in src/wallets/SafeWallet.ts:317
#
Parameters:Name | Type |
---|---|
msgHash | string |
Returns: Promise<Signature>
#
waitForSafeToBeDeployedâ–¸ waitForSafeToBeDeployed(safeAddress
: string): Promise<boolean>
Defined in src/wallets/SafeWallet.ts:119
#
Parameters:Name | Type |
---|---|
safeAddress | string |
Returns: Promise<boolean>