Skip to Content

@cfxdevkit/services


@cfxdevkit/services / KeystoreService

Class: KeystoreService

Defined in: packages/services/src/services/keystore.ts:77

KeystoreService V2

Constructors

Constructor

new KeystoreService(keystorePath?): KeystoreService

Defined in: packages/services/src/services/keystore.ts:82

Parameters

keystorePath?

string = DEFAULT_KEYSTORE_PATH

Returns

KeystoreService

Methods

addAdminAddress()

addAdminAddress(address): Promise<void>

Defined in: packages/services/src/services/keystore.ts:238

Add admin address

Parameters

address

string

Returns

Promise<void>


addMnemonic()

addMnemonic(data): Promise<MnemonicEntry>

Defined in: packages/services/src/services/keystore.ts:352

Add new mnemonic

Parameters

data

AddMnemonicData

Returns

Promise<MnemonicEntry>


canModifyNodeConfig()

canModifyNodeConfig(mnemonicId): Promise<ConfigModificationCheck>

Defined in: packages/services/src/services/keystore.ts:500

Check if node configuration can be modified

Parameters

mnemonicId

string

Returns

Promise<ConfigModificationCheck>


completeSetup()

completeSetup(data): Promise<void>

Defined in: packages/services/src/services/keystore.ts:176

Complete initial setup

Parameters

data

SetupData

Returns

Promise<void>


deleteMnemonic()

deleteMnemonic(id, deleteData?): Promise<void>

Defined in: packages/services/src/services/keystore.ts:440

Delete mnemonic and its data

Parameters

id

string

deleteData?

boolean = false

Returns

Promise<void>


deleteNodeData()

deleteNodeData(mnemonicId): Promise<{ dataSize: string; deletedDir: string; }>

Defined in: packages/services/src/services/keystore.ts:577

Delete blockchain data directory

Parameters

mnemonicId

string

Returns

Promise<{ dataSize: string; deletedDir: string; }>


deriveAccountsFromMnemonic()

deriveAccountsFromMnemonic(mnemonic, _network, count, startIndex?, chainIdOverride?): Promise<DerivedAccount[]>

Defined in: packages/services/src/services/keystore.ts:735

Derive accounts from mnemonic (HD wallet derivation) Returns accounts with both Core and eSpace private keys Uses @cfxdevkit/core/wallet for derivation

Parameters

mnemonic

string

_network

"core" | "espace"

count

number

startIndex?

number = 0

chainIdOverride?

number

Returns

Promise<DerivedAccount[]>


deriveFaucetAccount()

deriveFaucetAccount(mnemonicId): Promise<DerivedAccount>

Defined in: packages/services/src/services/keystore.ts:707

Get faucet account for a mnemonic

Parameters

mnemonicId

string

Returns

Promise<DerivedAccount>


deriveGenesisAccounts()

deriveGenesisAccounts(mnemonicId): Promise<DerivedAccount[]>

Defined in: packages/services/src/services/keystore.ts:681

Get genesis accounts for a mnemonic

Parameters

mnemonicId

string

Returns

Promise<DerivedAccount[]>


generateMnemonic()

generateMnemonic(): string

Defined in: packages/services/src/services/keystore.ts:819

Generate new BIP-39 mnemonic Uses @cfxdevkit/core/wallet for generation

Returns

string


getActiveIndex()

getActiveIndex(): number

Defined in: packages/services/src/services/keystore.ts:811

Get active mnemonic index

Returns

number


getActiveLabel()

getActiveLabel(): string

Defined in: packages/services/src/services/keystore.ts:802

Get active mnemonic label

Returns

string


getActiveMnemonic()

getActiveMnemonic(): Promise<MnemonicEntry>

Defined in: packages/services/src/services/keystore.ts:305

Get active mnemonic entry

Returns

Promise<MnemonicEntry>


getAdminAddresses()

getAdminAddresses(): Promise<string[]>

Defined in: packages/services/src/services/keystore.ts:230

Get all admin addresses

Returns

Promise<string[]>


getDataDir()

getDataDir(): Promise<string>

Defined in: packages/services/src/services/keystore.ts:776

Get data directory for active mnemonic

Returns

Promise<string>


getDecryptedMnemonic()

getDecryptedMnemonic(mnemonicId): Promise<string>

Defined in: packages/services/src/services/keystore.ts:656

Get decrypted mnemonic

Parameters

mnemonicId

string

Returns

Promise<string>


getMnemonic()

getMnemonic(id): Promise<MnemonicEntry>

Defined in: packages/services/src/services/keystore.ts:320

Get mnemonic by ID

Parameters

id

string

Returns

Promise<MnemonicEntry>


getMnemonicHash()

getMnemonicHash(): Promise<string>

Defined in: packages/services/src/services/keystore.ts:793

Get mnemonic hash (for display)

Returns

Promise<string>


getNodeConfig()

getNodeConfig(mnemonicId): Promise<NodeConfig>

Defined in: packages/services/src/services/keystore.ts:492

Get node configuration for a mnemonic

Parameters

mnemonicId

string

Returns

Promise<NodeConfig>


initialize()

initialize(): Promise<void>

Defined in: packages/services/src/services/keystore.ts:115

Initialize keystore (load from disk or create empty)

Returns

Promise<void>


isAdmin()

isAdmin(address): boolean

Defined in: packages/services/src/services/keystore.ts:292

Check if address is admin

Parameters

address

string

Returns

boolean


isEncryptionEnabled()

isEncryptionEnabled(): boolean

Defined in: packages/services/src/services/keystore.ts:618

Check if encryption is enabled for the keystore

Returns

boolean


isLocked()

isLocked(): boolean

Defined in: packages/services/src/services/keystore.ts:607

Check if keystore is locked

Returns

boolean


isSetupCompleted()

isSetupCompleted(): Promise<boolean>

Defined in: packages/services/src/services/keystore.ts:169

Check if initial setup is completed

Returns

Promise<boolean>


listMnemonics()

listMnemonics(): Promise<MnemonicSummary[]>

Defined in: packages/services/src/services/keystore.ts:334

List all mnemonics (summary only)

Returns

Promise<MnemonicSummary[]>


lockKeystore()

lockKeystore(): Promise<void>

Defined in: packages/services/src/services/keystore.ts:648

Lock keystore (clear password from memory)

Returns

Promise<void>


removeAdminAddress()

removeAdminAddress(address, currentAdmin): Promise<void>

Defined in: packages/services/src/services/keystore.ts:259

Remove admin address

Parameters

address

string

currentAdmin

string

Returns

Promise<void>


switchActiveMnemonic()

switchActiveMnemonic(id): Promise<void>

Defined in: packages/services/src/services/keystore.ts:419

Switch active mnemonic

Parameters

id

string

Returns

Promise<void>


unlockKeystore()

unlockKeystore(password): Promise<void>

Defined in: packages/services/src/services/keystore.ts:625

Unlock keystore with password

Parameters

password

string

Returns

Promise<void>


updateMnemonicLabel()

updateMnemonicLabel(id, label): Promise<void>

Defined in: packages/services/src/services/keystore.ts:396

Update mnemonic label

Parameters

id

string

label

string

Returns

Promise<void>


updateNodeConfig()

updateNodeConfig(mnemonicId, config): Promise<void>

Defined in: packages/services/src/services/keystore.ts:535

Update node configuration

Parameters

mnemonicId

string

config

Partial<NodeConfig>

Returns

Promise<void>


validateMnemonic()

validateMnemonic(mnemonic): boolean

Defined in: packages/services/src/services/keystore.ts:827

Validate mnemonic format Uses @cfxdevkit/core/wallet for validation

Parameters

mnemonic

string

Returns

boolean