Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,29 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
- APIs Added [#154]
- `generate_mnemonic()`, returns string mnemonic
- `interface DescriptorSecretKey`
- `new(Network, string_mnenoinc, password)`, contructs DescriptorSecretKey
- `derive(DerivationPath)`, derives and returns child DescriptorSecretKey
- `extend(DerivationPath)`, extends and returns DescriptorSecretKey
- `as_public()`, returns DescriptorSecretKey as DescriptorPublicKey
- `as_string()`, returns DescriptorSecretKey as String
- `interface DescriptorPublicKey`
- `derive(DerivationPath)` derives and returns child DescriptorPublicKey
- `extend(DerivationPath)` extends and returns DescriptorPublicKey
- `as_string()` returns DescriptorPublicKey as String
- Interfaces Added [#154]
- `DescriptorSecretKey`
- `DescriptorPublicKey`
- `DerivationPath`
- Dictionary Removed [#154]
- `ExtendedKeyInfo {mnenonic, xprv, fingerprint}`
- APIs Removed [#154]
- `generate_extended_key`, returned ExtendedKeyInfo
- `restore_extended_key`, returned ExtendedKeyInfo

[#154]: https://github.com/bitcoindevkit/bdk-ffi/pull/154

## [v0.8.0]
- Update BDK to version 0.20.0 [#169]
Expand Down
39 changes: 29 additions & 10 deletions src/bdk.udl
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
namespace bdk {
[Throws=BdkError]
ExtendedKeyInfo generate_extended_key(Network network, WordCount word_count, string? password);

[Throws=BdkError]
ExtendedKeyInfo restore_extended_key(Network network, string mnemonic, string? password);
string generate_mnemonic(WordCount word_count);
};

[Error]
Expand Down Expand Up @@ -101,12 +98,6 @@ interface Transaction {
Confirmed(TransactionDetails details, BlockTime confirmation);
};

dictionary ExtendedKeyInfo {
string mnemonic;
string xprv;
string fingerprint;
};

enum WordCount {
"Words12",
"Words15",
Expand Down Expand Up @@ -254,3 +245,31 @@ interface BumpFeeTxBuilder {
[Throws=BdkError]
PartiallySignedBitcoinTransaction finish([ByRef] Wallet wallet);
};

interface DerivationPath {
[Throws=BdkError]
constructor(string path);
};

interface DescriptorSecretKey {
[Throws=BdkError]
constructor(Network network, string mnemonic, string? password);

[Throws=BdkError]
DescriptorSecretKey derive(DerivationPath path);

DescriptorSecretKey extend(DerivationPath path);

DescriptorPublicKey as_public();

string as_string();
};

interface DescriptorPublicKey {
[Throws=BdkError]
DescriptorPublicKey derive(DerivationPath path);

DescriptorPublicKey extend(DerivationPath path);

string as_string();
};
Loading