SeedKeyRepositoryImpl mixin

Implementation of SeedRepository. Usage

class NekotonRepository with SeedRepositoryImpl {}
Implemented types
Mixin applications

Properties

accountsStorage AccountsStorage
no setter
currentTransport TransportStrategy
no setter
findingDerivedKeys Set<String>
Set of master keys that are currently scanning for derived keys with existing wallets.
no setteroverride
findingDerivedKeysStream Stream<Set<String>>
Stream to listen for changes in findingDerivedKeys.
no setteroverride
findingExistingWallets Set<String>
Set of public keys that are currently scanning for existing wallets.
no setteroverride
findingExistingWalletsStream Stream<Set<String>>
Stream to listen for changes in findingExistingWallets.
no setteroverride
hashCode int
The hash code for this object.
no setterinherited
keyStore KeyStore
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
storageRepository NekotonStorageRepository
no setter

Methods

addDefaultAccount(PublicKey publicKey) Future<void>
addSeed({required List<String> phrase, required String password, MnemonicType? mnemonicType, String? name, SeedAddType addType = SeedAddType.create}) Future<PublicKey>
Add new seed to application. Returns publicKey of masterKey of added seed.
override
changeSeedPassword({required PublicKey publicKey, required String oldPassword, required String newPassword, required bool isLegacy}) Future<void>
Change password of seed phrase.
override
decrypt({required EncryptedData data, required SignInput signInput}) Future<String>
Decrypt data from external usages. signInput can be get from SeedKey.signInput.
override
deriveKey({required int accountId, required String password, required PublicKey masterKey, bool addActiveAccounts = true}) Future<PublicKey>
Derive key from masterKey which is key of seed. !!! This method won't work for legacy keys. This method do not triggers accounts adding
override
deriveKeys({required List<int> accountIds, required String password, required PublicKey masterKey, bool addActiveAccounts = true}) Future<List<PublicKey>>
Derive keys from masterKey which is key of seed. !!! This method won't work for legacy keys. This method returns list of public keys that allows add additional logic related to newly added keys.
override
encrypt({required String data, required List<PublicKey> publicKeys, required EncryptionAlgorithm algorithm, required SignInput signInput}) Future<List<EncryptedData>>
Encrypt data for external usages. signInput can be get from SeedKey.signInput.
override
exportSeed({required PublicKey masterKey, required String password, required bool isLegacy}) Future<List<String>>
Return seeds phrase of masterKey. Do not works for ledger key.
override
getKeysToDerive({required PublicKey masterKey, required String password, int offset = 0, int limit = _maxDeriveKeys}) Future<List<PublicKey>>
Returns list of public keys that can be used in deriveKeys from seed with masterKey and password. Returns list of up to 100 public keys, that could be displayed by pages. !!! Seed should not be legacy.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
removeKeys(List<SeedKey> keys) Future<List<PublicKey>>
Remove keys from keystore and return public keys that were deleted
override
renameKey({required PublicKey publicKey, required PublicKey masterKey, required String name, required bool isLegacy}) Future<void>
Rename key (sub or master) with publicKey to name.
override
renameSeed({required PublicKey masterKey, required String name}) Future<void>
Rename seed with masterKey to name. This changes name in storage, not in keystore.
override
sign({required String data, required SignInput signInput, required int? signatureId}) Future<String>
Sign data message with key it was called on. signatureId is Transport.getSignatureId. signInput can be get from SeedKey.signInput.
override
signData({required String data, required SignInput signInput, required int? signatureId}) Future<SignedData>
Sign data message with key it was called on. signatureId is Transport.getSignatureId. signInput can be get from SeedKey.signInput.
override
signRawData({required String data, required SignInput signInput, required int? signatureId}) Future<SignedDataRaw>
Sign raw data message with key it was called on. signatureId is Transport.getSignatureId. signInput can be get from SeedKey.signInput.
override
toString() String
A string representation of this object.
inherited
triggerAddingAccounts(List<PublicKey> publicKeys) Future<void>
Trigger adding accounts to AccountRepository by public keys.
triggerDerivingKeys({required PublicKey masterKey, required String password}) Future<void>
Initiates the process of deriving additional keys from a master key and adds active accounts. Additionally, it triggers adding accounts to the master key.
triggerRemovingAccounts(Iterable<SeedKey> keys) Future<void>
Remove accounts, specified for keys that were removed. Also removes information from storage about hidden and external accounts.

Operators

operator ==(Object other) bool
The equality operator.
inherited