beignet 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/README.md +284 -1
  2. package/dist/cli/beignet-node.js +1019 -47
  3. package/dist/cli/beignet-node.js.map +1 -1
  4. package/dist/cli/cli.js +1201 -16
  5. package/dist/cli/cli.js.map +1 -1
  6. package/dist/cli/config.js +21 -1
  7. package/dist/cli/config.js.map +1 -1
  8. package/dist/cli/daemon.js +342 -16
  9. package/dist/cli/daemon.js.map +1 -1
  10. package/dist/cli/errors.js +2 -0
  11. package/dist/cli/errors.js.map +1 -1
  12. package/dist/cli/openapi.js +1207 -14
  13. package/dist/cli/openapi.js.map +1 -1
  14. package/dist/cli/restore.js +89 -0
  15. package/dist/cli/restore.js.map +1 -0
  16. package/dist/cli/wallet-storage.js +34 -0
  17. package/dist/cli/wallet-storage.js.map +1 -0
  18. package/dist/electrum/index.js +105 -10
  19. package/dist/electrum/index.js.map +1 -1
  20. package/dist/lightning/advisor/fee-tuner.js +42 -0
  21. package/dist/lightning/advisor/fee-tuner.js.map +1 -0
  22. package/dist/lightning/advisor/index.js +9 -1
  23. package/dist/lightning/advisor/index.js.map +1 -1
  24. package/dist/lightning/advisor/rebalance-planner.js +55 -0
  25. package/dist/lightning/advisor/rebalance-planner.js.map +1 -0
  26. package/dist/lightning/backup/index.js +18 -0
  27. package/dist/lightning/backup/index.js.map +1 -0
  28. package/dist/lightning/backup/scb.js +42 -0
  29. package/dist/lightning/backup/scb.js.map +1 -0
  30. package/dist/lightning/chain/chain-monitor.js +27 -0
  31. package/dist/lightning/chain/chain-monitor.js.map +1 -1
  32. package/dist/lightning/chain/output-resolver.js +55 -6
  33. package/dist/lightning/chain/output-resolver.js.map +1 -1
  34. package/dist/lightning/chain/types.js +1 -0
  35. package/dist/lightning/chain/types.js.map +1 -1
  36. package/dist/lightning/channel/channel-manager.js +64 -0
  37. package/dist/lightning/channel/channel-manager.js.map +1 -1
  38. package/dist/lightning/channel/channel-state.js.map +1 -1
  39. package/dist/lightning/channel/channel.js +124 -4
  40. package/dist/lightning/channel/channel.js.map +1 -1
  41. package/dist/lightning/channel/dual-funding.js +6 -5
  42. package/dist/lightning/channel/dual-funding.js.map +1 -1
  43. package/dist/lightning/channel/types.js +3 -1
  44. package/dist/lightning/channel/types.js.map +1 -1
  45. package/dist/lightning/channel/validation.js +3 -3
  46. package/dist/lightning/channel/validation.js.map +1 -1
  47. package/dist/lightning/crypto/index.js +1 -0
  48. package/dist/lightning/crypto/index.js.map +1 -1
  49. package/dist/lightning/crypto/message-signing.js +116 -0
  50. package/dist/lightning/crypto/message-signing.js.map +1 -0
  51. package/dist/lightning/crypto/xchacha20poly1305.js +77 -0
  52. package/dist/lightning/crypto/xchacha20poly1305.js.map +1 -0
  53. package/dist/lightning/features/flags.js +1 -0
  54. package/dist/lightning/features/flags.js.map +1 -1
  55. package/dist/lightning/gossip/messages.js +37 -1
  56. package/dist/lightning/gossip/messages.js.map +1 -1
  57. package/dist/lightning/index.js +2 -1
  58. package/dist/lightning/index.js.map +1 -1
  59. package/dist/lightning/keys/wallet-keys.js +1 -0
  60. package/dist/lightning/keys/wallet-keys.js.map +1 -1
  61. package/dist/lightning/message/index.js +1 -0
  62. package/dist/lightning/message/index.js.map +1 -1
  63. package/dist/lightning/message/peer-storage.js +43 -0
  64. package/dist/lightning/message/peer-storage.js.map +1 -0
  65. package/dist/lightning/message/types.js +2 -0
  66. package/dist/lightning/message/types.js.map +1 -1
  67. package/dist/lightning/node/lightning-node.js +1583 -235
  68. package/dist/lightning/node/lightning-node.js.map +1 -1
  69. package/dist/lightning/node/types.js +18 -1
  70. package/dist/lightning/node/types.js.map +1 -1
  71. package/dist/lightning/offer/offer-manager.js +2 -5
  72. package/dist/lightning/offer/offer-manager.js.map +1 -1
  73. package/dist/lightning/offer/tlv.js +3 -1
  74. package/dist/lightning/offer/tlv.js.map +1 -1
  75. package/dist/lightning/storage/encryption.js +67 -0
  76. package/dist/lightning/storage/encryption.js.map +1 -0
  77. package/dist/lightning/storage/index.js +1 -0
  78. package/dist/lightning/storage/index.js.map +1 -1
  79. package/dist/lightning/storage/serialization.js +6 -2
  80. package/dist/lightning/storage/serialization.js.map +1 -1
  81. package/dist/lightning/storage/sqlite-storage.js +387 -33
  82. package/dist/lightning/storage/sqlite-storage.js.map +1 -1
  83. package/dist/lightning/watchtower/blob.js +135 -0
  84. package/dist/lightning/watchtower/blob.js.map +1 -0
  85. package/dist/lightning/watchtower/index.js +55 -0
  86. package/dist/lightning/watchtower/index.js.map +1 -0
  87. package/dist/lightning/watchtower/justice.js +182 -0
  88. package/dist/lightning/watchtower/justice.js.map +1 -0
  89. package/dist/lightning/watchtower/tower-connection.js +208 -0
  90. package/dist/lightning/watchtower/tower-connection.js.map +1 -0
  91. package/dist/lightning/watchtower/types.js +3 -0
  92. package/dist/lightning/watchtower/types.js.map +1 -0
  93. package/dist/lightning/watchtower/watchtower-client.js +402 -0
  94. package/dist/lightning/watchtower/watchtower-client.js.map +1 -0
  95. package/dist/lightning/watchtower/wtwire.js +201 -0
  96. package/dist/lightning/watchtower/wtwire.js.map +1 -0
  97. package/dist/shapes/electrum.js +32 -1
  98. package/dist/shapes/electrum.js.map +1 -1
  99. package/dist/shapes/wallet.js +11 -1
  100. package/dist/shapes/wallet.js.map +1 -1
  101. package/dist/transaction/index.js +163 -15
  102. package/dist/transaction/index.js.map +1 -1
  103. package/dist/types/cli/beignet-node.d.ts +144 -3
  104. package/dist/types/cli/daemon.d.ts +2 -0
  105. package/dist/types/cli/errors.d.ts +2 -0
  106. package/dist/types/cli/restore.d.ts +10 -0
  107. package/dist/types/cli/types.d.ts +228 -1
  108. package/dist/types/cli/wallet-storage.d.ts +3 -0
  109. package/dist/types/electrum/index.d.ts +12 -0
  110. package/dist/types/electrum.js +1 -0
  111. package/dist/types/electrum.js.map +1 -1
  112. package/dist/types/lightning/advisor/fee-tuner.d.ts +20 -0
  113. package/dist/types/lightning/advisor/index.d.ts +4 -0
  114. package/dist/types/lightning/advisor/rebalance-planner.d.ts +12 -0
  115. package/dist/types/lightning/backup/index.d.ts +1 -0
  116. package/dist/types/lightning/backup/scb.d.ts +24 -0
  117. package/dist/types/lightning/chain/chain-monitor.d.ts +1 -0
  118. package/dist/types/lightning/chain/types.d.ts +1 -0
  119. package/dist/types/lightning/channel/channel-manager.d.ts +7 -0
  120. package/dist/types/lightning/channel/channel-state.d.ts +2 -0
  121. package/dist/types/lightning/channel/channel.d.ts +6 -0
  122. package/dist/types/lightning/channel/dual-funding.d.ts +2 -1
  123. package/dist/types/lightning/channel/types.d.ts +2 -0
  124. package/dist/types/lightning/channel/validation.d.ts +1 -1
  125. package/dist/types/lightning/crypto/index.d.ts +1 -0
  126. package/dist/types/lightning/crypto/message-signing.d.ts +9 -0
  127. package/dist/types/lightning/crypto/xchacha20poly1305.d.ts +3 -0
  128. package/dist/types/lightning/features/flags.d.ts +1 -0
  129. package/dist/types/lightning/gossip/messages.d.ts +4 -0
  130. package/dist/types/lightning/index.d.ts +1 -0
  131. package/dist/types/lightning/keys/wallet-keys.d.ts +2 -1
  132. package/dist/types/lightning/message/index.d.ts +1 -0
  133. package/dist/types/lightning/message/peer-storage.d.ts +9 -0
  134. package/dist/types/lightning/message/types.d.ts +2 -0
  135. package/dist/types/lightning/node/lightning-node.d.ts +116 -4
  136. package/dist/types/lightning/node/types.d.ts +62 -1
  137. package/dist/types/lightning/storage/encryption.d.ts +11 -0
  138. package/dist/types/lightning/storage/index.d.ts +1 -0
  139. package/dist/types/lightning/storage/serialization.d.ts +2 -0
  140. package/dist/types/lightning/storage/sqlite-storage.d.ts +43 -3
  141. package/dist/types/lightning/storage/types.d.ts +62 -0
  142. package/dist/types/lightning/watchtower/blob.d.ts +32 -0
  143. package/dist/types/lightning/watchtower/index.d.ts +9 -0
  144. package/dist/types/lightning/watchtower/justice.d.ts +29 -0
  145. package/dist/types/lightning/watchtower/tower-connection.d.ts +34 -0
  146. package/dist/types/lightning/watchtower/types.d.ts +44 -0
  147. package/dist/types/lightning/watchtower/watchtower-client.d.ts +67 -0
  148. package/dist/types/lightning/watchtower/wtwire.d.ts +90 -0
  149. package/dist/types/shapes/electrum.d.ts +3 -1
  150. package/dist/types/transaction/index.d.ts +6 -0
  151. package/dist/types/transaction.js.map +1 -1
  152. package/dist/types/types/electrum.d.ts +3 -2
  153. package/dist/types/types/transaction.d.ts +1 -1
  154. package/dist/types/types/wallet.d.ts +78 -4
  155. package/dist/types/utils/descriptors.d.ts +2 -0
  156. package/dist/types/utils/fees.d.ts +3 -0
  157. package/dist/types/utils/helpers.d.ts +3 -1
  158. package/dist/types/utils/index.d.ts +5 -0
  159. package/dist/types/utils/multisig.d.ts +29 -0
  160. package/dist/types/utils/transaction.d.ts +7 -0
  161. package/dist/types/utils/wallet-storage-encryption.d.ts +3 -0
  162. package/dist/types/utils/wallet.d.ts +1 -1
  163. package/dist/types/utils/watch-only.d.ts +12 -0
  164. package/dist/types/wallet/constants.d.ts +1 -0
  165. package/dist/types/wallet/index.d.ts +61 -4
  166. package/dist/types/wallet.js +3 -0
  167. package/dist/types/wallet.js.map +1 -1
  168. package/dist/utils/derivation-path.js +8 -7
  169. package/dist/utils/derivation-path.js.map +1 -1
  170. package/dist/utils/descriptors.js +56 -0
  171. package/dist/utils/descriptors.js.map +1 -0
  172. package/dist/utils/electrum.js +10 -2
  173. package/dist/utils/electrum.js.map +1 -1
  174. package/dist/utils/fees.js +19 -0
  175. package/dist/utils/fees.js.map +1 -0
  176. package/dist/utils/helpers.js +22 -5
  177. package/dist/utils/helpers.js.map +1 -1
  178. package/dist/utils/index.js +5 -0
  179. package/dist/utils/index.js.map +1 -1
  180. package/dist/utils/multisig.js +90 -0
  181. package/dist/utils/multisig.js.map +1 -0
  182. package/dist/utils/transaction.js +30 -3
  183. package/dist/utils/transaction.js.map +1 -1
  184. package/dist/utils/wallet-storage-encryption.js +45 -0
  185. package/dist/utils/wallet-storage-encryption.js.map +1 -0
  186. package/dist/utils/wallet.js +3 -1
  187. package/dist/utils/wallet.js.map +1 -1
  188. package/dist/utils/watch-only.js +102 -0
  189. package/dist/utils/watch-only.js.map +1 -0
  190. package/dist/wallet/constants.js +2 -1
  191. package/dist/wallet/constants.js.map +1 -1
  192. package/dist/wallet/index.js +787 -30
  193. package/dist/wallet/index.js.map +1 -1
  194. package/docs/ROADMAP.md +292 -0
  195. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,8 @@ import { Wallet } from '../wallet';
5
5
  import { IOnchainFees } from '../types/wallet';
6
6
  import { LightningNode } from '../lightning/node/lightning-node';
7
7
  import { SqliteStorage } from '../lightning/storage/sqlite-storage';
8
- import { NodeInfo, PeerInfo, ChannelInfo, PaymentInfo, InvoiceInfo, DecodedInvoice, TxInfo, OnchainTxInfo, UtxoInfo, BalanceInfo, OfferInfo, TrustedPeerInfo, SpliceResult, BootstrapPeerInfo, HealthInfo, PaymentFilter, RouteEstimate, NodeStats, PaymentProof, PaymentProofVerification, LiquiditySnapshot, FeeSnapshot, PaymentEstimate, BeignetNodeEvents, QueuedPayment, ChannelSuggestion, ActionLogEntry, ReadinessReport, RetryPaymentOptions, RetryPaymentResult, PaymentValidation } from './types';
8
+ import { IRoute } from '../lightning/gossip/types';
9
+ import { NodeInfo, PeerInfo, ChannelInfo, PaymentInfo, InvoiceInfo, DecodedInvoice, TxInfo, OnchainTxInfo, UtxoInfo, DescriptorsInfo, PsbtBuildInfo, PsbtImportInfo, BoostResult, BoostableTransactions, ConsolidateResult, BalanceInfo, OfferInfo, TrustedPeerInfo, SpliceResult, BootstrapPeerInfo, HealthInfo, PaymentFilter, ForwardsFilter, ForwardingEventInfo, ForwardingSummaryInfo, RouteEstimate, NodeStats, PaymentProof, PaymentProofVerification, LiquiditySnapshot, FeeSnapshot, PaymentEstimate, BeignetNodeEvents, QueuedPayment, ChannelSuggestion, ActionLogEntry, ReadinessReport, RetryPaymentOptions, RetryPaymentResult, PaymentValidation, ChannelPolicyInfo, HoldInvoiceInfo, GraphInfo, GraphChannelInfo, GraphNodeInfo, GraphDescribeResult, RouteHop, RouteQueryResult, AdvisorRecommendations, RebalanceResult, RebalanceExecutionSummary } from './types';
9
10
  export type LogLevel = 'debug' | 'info' | 'warn' | 'error' | 'silent';
10
11
  export interface LogEntry {
11
12
  level: LogLevel;
@@ -15,15 +16,17 @@ export interface LogEntry {
15
16
  }
16
17
  export interface BeignetNodeOptions {
17
18
  mnemonic?: string;
18
- network?: 'mainnet' | 'testnet' | 'regtest';
19
+ network?: 'mainnet' | 'testnet' | 'regtest' | 'signet';
19
20
  alias?: string;
20
21
  dataDir?: string;
21
22
  allowMultipleInstances?: boolean;
22
23
  electrumHost?: string;
23
24
  electrumPort?: number;
24
25
  electrumTls?: boolean;
26
+ feeEstimationSource?: 'electrum' | 'http' | 'auto';
25
27
  listenPort?: number;
26
28
  preferAnchors?: boolean;
29
+ largeChannels?: boolean;
27
30
  autoBootstrap?: boolean;
28
31
  autoReconnect?: boolean;
29
32
  autoUpdateChannelFees?: boolean;
@@ -49,8 +52,32 @@ export interface BeignetNodeOptions {
49
52
  connectTimeoutMs?: number;
50
53
  torProxy?: string;
51
54
  announceAddresses?: string[];
55
+ watchtowers?: string[];
56
+ storageEncryption?: boolean;
57
+ peerStorageEnabled?: boolean;
58
+ autoRebalance?: {
59
+ enabled?: boolean;
60
+ budgetSatsPerDay?: number;
61
+ minImbalancePct?: number;
62
+ intervalMs?: number;
63
+ };
64
+ autoTuneFees?: {
65
+ enabled?: boolean;
66
+ intervalMs?: number;
67
+ floorPpm?: number;
68
+ ceilPpm?: number;
69
+ };
52
70
  }
53
71
  export declare function defaultDataDirForMnemonic(mnemonic: string, baseDir?: string): string;
72
+ export declare function formatScid(scid: Buffer): string;
73
+ export declare function parseScid(scid: string): Buffer;
74
+ export declare function routeHopsToJson(route: IRoute): RouteHop[];
75
+ export declare function jsonToRouteHops(hops: RouteHop[]): Array<{
76
+ pubkey: Buffer;
77
+ shortChannelId: Buffer;
78
+ amountToForwardMsat: bigint;
79
+ outgoingCltvValue: number;
80
+ }>;
54
81
  export declare class BeignetNode extends EventEmitter {
55
82
  on<K extends keyof BeignetNodeEvents>(event: K, listener: BeignetNodeEvents[K]): this;
56
83
  on(event: string | symbol, listener: (...args: unknown[]) => void): this;
@@ -85,10 +112,15 @@ export declare class BeignetNode extends EventEmitter {
85
112
  private _connectTimeoutMs;
86
113
  private _dailySpendLimitSats?;
87
114
  private _dailySpentSats;
115
+ private _dailySpentLightningSats;
116
+ private _dailySpentOnchainSats;
88
117
  private _dailySpendResetTime;
89
118
  private _pendingSpendSats;
90
119
  private _maxPaymentSats?;
91
120
  private _draining;
121
+ private peerStorageEnabled;
122
+ private _lastGraphSyncAt?;
123
+ private _peerRetrievedScb;
92
124
  private constructor();
93
125
  private log;
94
126
  static create(opts?: BeignetNodeOptions): Promise<BeignetNode>;
@@ -103,6 +135,15 @@ export declare class BeignetNode extends EventEmitter {
103
135
  } | null>;
104
136
  getInfo(): NodeInfo;
105
137
  getMnemonic(): string;
138
+ signMessage(message: string): {
139
+ signature: string;
140
+ pubkey: string;
141
+ };
142
+ verifyMessage(message: string, signature: string): {
143
+ valid: boolean;
144
+ pubkey: string | null;
145
+ knownNode: boolean;
146
+ };
106
147
  getBalance(): BalanceInfo;
107
148
  private getPendingCloseBalanceSats;
108
149
  private getErroredBalanceSats;
@@ -111,13 +152,45 @@ export declare class BeignetNode extends EventEmitter {
111
152
  private getLightningBalanceSats;
112
153
  getNewAddress(): Promise<string>;
113
154
  sendOnchain(address: string, amountSats: number, satsPerVbyte?: number): Promise<TxInfo>;
155
+ buildPsbt(outputs: Array<{
156
+ address: string;
157
+ amountSats: number;
158
+ }>, satsPerVbyte?: number): Promise<PsbtBuildInfo>;
159
+ importSignedPsbt(psbtBase64: string): PsbtImportInfo;
160
+ combinePsbts(psbts: string[]): {
161
+ psbtBase64: string;
162
+ };
163
+ private _broadcastRawTx;
164
+ private _validateFeeRate;
165
+ private _validateTxid;
166
+ sendMaxOnchain(address: string, satsPerVbyte?: number): Promise<TxInfo>;
167
+ bumpFeeOnchain(txid: string, satsPerVbyte: number): Promise<BoostResult>;
168
+ boostOnchain(txid: string, satsPerVbyte?: number): Promise<BoostResult>;
169
+ private _boostRbf;
170
+ private _boostCpfp;
171
+ private _recordBoost;
172
+ listBoostableTransactions(): BoostableTransactions;
173
+ consolidateUtxos(satsPerVbyte?: number): Promise<ConsolidateResult>;
114
174
  refreshWallet(): Promise<void>;
175
+ private toOnchainTxInfo;
115
176
  listOnchainTransactions(): OnchainTxInfo[];
116
177
  listUtxos(): UtxoInfo[];
178
+ freezeUtxo(txid: string, index: number): Promise<{
179
+ frozen: string;
180
+ }>;
181
+ unfreezeUtxo(txid: string, index: number): Promise<{
182
+ unfrozen: string;
183
+ }>;
184
+ setAddressLabel(address: string, label: string): Promise<{
185
+ address: string;
186
+ label: string;
187
+ }>;
188
+ listAddressLabels(): Record<string, string>;
189
+ exportDescriptors(): DescriptorsInfo;
117
190
  getFeeEstimates(): Promise<IOnchainFees>;
118
191
  validateAddress(address: string): boolean;
119
192
  getWallet(): Wallet;
120
- connectPeer(pubkey: string, host: string, port: number): Promise<PeerInfo>;
193
+ connectPeer(pubkey: string, host?: string, port?: number): Promise<PeerInfo>;
121
194
  disconnectPeer(pubkey: string): void;
122
195
  listPeers(): PeerInfo[];
123
196
  syncGossip(pubkey?: string): string[];
@@ -151,16 +224,35 @@ export declare class BeignetNode extends EventEmitter {
151
224
  getChannelDiagnostics(channelId: string): Record<string, unknown> | null;
152
225
  private toChannelInfo;
153
226
  createInvoice(amountSats?: number, description?: string, expirySecs?: number, descriptionHash?: Buffer): InvoiceInfo;
227
+ createHoldInvoice(opts: {
228
+ paymentHash: string;
229
+ amountMsat?: bigint;
230
+ amountSats?: number;
231
+ description?: string;
232
+ expiry?: number;
233
+ }): InvoiceInfo;
234
+ settleHoldInvoice(preimage: string): {
235
+ paymentHash: string;
236
+ };
237
+ cancelHoldInvoice(paymentHash: string): {
238
+ paymentHash: string;
239
+ htlcsFailed: number;
240
+ };
241
+ listHoldInvoices(): HoldInvoiceInfo[];
154
242
  decodeInvoice(bolt11: string): DecodedInvoice;
155
243
  private _resetDailySpendIfNeeded;
156
244
  private _checkSpendLimit;
157
245
  private _checkMaxPayment;
158
246
  private _recordSpend;
247
+ private _builtOnchainTotalSats;
159
248
  getDailySpendInfo(): {
160
249
  limitSats: number | null;
161
250
  spentSats: number;
162
251
  remainingSats: number;
163
252
  resetsAt: number;
253
+ totalSats: number;
254
+ lightningSats: number;
255
+ onchainSats: number;
164
256
  };
165
257
  setDraining(enabled: boolean): void;
166
258
  isDraining(): boolean;
@@ -179,12 +271,28 @@ export declare class BeignetNode extends EventEmitter {
179
271
  sendKeysendSafe(pubkey: string, amountSats: number, timeoutMs?: number, maxFeeSats?: number, metadata?: Record<string, string>): Promise<PaymentInfo>;
180
272
  listPayments(filter?: PaymentFilter): PaymentInfo[];
181
273
  getPayment(paymentHash: string): PaymentInfo | null;
274
+ listForwards(filter?: ForwardsFilter): ForwardingEventInfo[];
275
+ getForwardingSummary(since?: number): ForwardingSummaryInfo;
276
+ listWatchtowers(): ReturnType<LightningNode['getWatchtowers']>;
277
+ addWatchtower(uri: string): void;
278
+ removeWatchtower(uri: string): void;
182
279
  getPaymentProof(paymentHash: string): PaymentProof | null;
183
280
  verifyPaymentProof(paymentHash: string): PaymentProofVerification;
184
281
  updateChannelFee(channelId: string, feeratePerKw: number): {
185
282
  ok: boolean;
186
283
  error?: string;
187
284
  };
285
+ updateChannelPolicy(channelId: string | 'all', policy: {
286
+ feeBaseMsat?: number;
287
+ feeProportionalMillionths?: number;
288
+ cltvExpiryDelta?: number;
289
+ htlcMinimumMsat?: number | string;
290
+ htlcMaximumMsat?: number | string;
291
+ }): {
292
+ updated: number;
293
+ policies: ChannelPolicyInfo[];
294
+ };
295
+ getChannelPolicy(channelId: string): ChannelPolicyInfo | null;
188
296
  cancelPayment(paymentHash: string): {
189
297
  ok: boolean;
190
298
  };
@@ -221,6 +329,9 @@ export declare class BeignetNode extends EventEmitter {
221
329
  isReady(): boolean;
222
330
  getMainnetReadiness(): ReadinessReport;
223
331
  getLiquiditySnapshot(): LiquiditySnapshot;
332
+ getAdvisorRecommendations(): AdvisorRecommendations;
333
+ rebalanceChannel(fromChannelId: string, toChannelId: string, amountSats: number, maxFeeSats: number): Promise<RebalanceResult>;
334
+ executeRebalances(budgetSatsPerDay?: number): Promise<RebalanceExecutionSummary>;
224
335
  getFeeSnapshot(): FeeSnapshot | null;
225
336
  getChannelSuggestions(count?: number): ChannelSuggestion[];
226
337
  estimateRouteFee(bolt11: string, amountSats?: number): RouteEstimate | null;
@@ -230,6 +341,16 @@ export declare class BeignetNode extends EventEmitter {
230
341
  feeSats?: number;
231
342
  hops?: number;
232
343
  };
344
+ getGraphInfo(): GraphInfo;
345
+ getGraphNode(pubkey: string): GraphNodeInfo | null;
346
+ getGraphChannel(scid: string): GraphChannelInfo | null;
347
+ describeGraph(limit?: number, offset?: number): GraphDescribeResult;
348
+ private toGraphChannelInfo;
349
+ private toGraphChannelPolicy;
350
+ queryRoute(destination: string, amountSats: number, maxFeeSats?: number): RouteQueryResult;
351
+ sendToRoute(paymentHash: string, route: {
352
+ hops: RouteHop[];
353
+ }, paymentSecret?: string): PaymentInfo;
233
354
  getReadyChannels(): ChannelInfo[];
234
355
  canSend(amountSats: number): {
235
356
  canSend: boolean;
@@ -260,6 +381,26 @@ export declare class BeignetNode extends EventEmitter {
260
381
  backup(destPath: string): Promise<void>;
261
382
  private performScheduledBackup;
262
383
  triggerBackup(): void;
384
+ exportStaticChannelBackup(): {
385
+ encoded: string;
386
+ channelCount: number;
387
+ path: string;
388
+ };
389
+ restoreFromScb(encoded: string): Promise<{
390
+ recovering: string[];
391
+ skipped: Array<{
392
+ channelId: string;
393
+ reason: string;
394
+ }>;
395
+ channelCount: number;
396
+ }>;
397
+ private refreshStaticChannelBackup;
398
+ private handleRetrievedPeerStorage;
399
+ getPeerRetrievedBackup(): {
400
+ encoded: string;
401
+ createdAt: number;
402
+ fromPeer: string;
403
+ } | null;
263
404
  getNodeUri(externalHost?: string): string | null;
264
405
  getNode(): LightningNode;
265
406
  getStorage(): SqliteStorage;
@@ -10,8 +10,10 @@ export interface DaemonOptions extends BeignetNodeOptions {
10
10
  rateLimit?: RateLimitOptions;
11
11
  tlsCert?: string;
12
12
  tlsKey?: string;
13
+ htlcEvents?: boolean;
13
14
  }
14
15
  export declare function parseBody(req: http.IncomingMessage): Promise<Record<string, unknown>>;
16
+ export declare function getRelayedEvents(htlcEvents?: boolean): string[];
15
17
  export declare function startDaemon(opts: DaemonOptions): Promise<{
16
18
  server: http.Server;
17
19
  node: BeignetNode;
@@ -3,6 +3,8 @@ export declare enum BeignetErrorCode {
3
3
  ADDRESS_FAILED = "ADDRESS_FAILED",
4
4
  SEND_FAILED = "SEND_FAILED",
5
5
  REFRESH_FAILED = "REFRESH_FAILED",
6
+ NOT_BOOSTABLE = "NOT_BOOSTABLE",
7
+ NOTHING_TO_CONSOLIDATE = "NOTHING_TO_CONSOLIDATE",
6
8
  INSTANCE_ALREADY_RUNNING = "INSTANCE_ALREADY_RUNNING",
7
9
  PAYMENT_FAILED = "PAYMENT_FAILED",
8
10
  PAYMENT_TIMEOUT = "PAYMENT_TIMEOUT",
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ export declare const SQLITE_HEADER: Buffer;
3
+ export declare function isSqliteFile(filePath: string): boolean;
4
+ export declare function preRestoreBackupPath(dbPath: string, now?: number): string;
5
+ export interface IDbRestoreResult {
6
+ dbPath: string;
7
+ preRestorePath: string | null;
8
+ }
9
+ export declare function restoreDbFile(backupFile: string, dbPath: string, now?: number): IDbRestoreResult;
10
+ export declare function performDbRestore(backupFile: string, dbPath: string, lockPath: string, now?: number): IDbRestoreResult;