@kaleidorg/wallet-engine 1.0.0-beta.36 → 1.0.0-beta.38

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 (41) hide show
  1. package/dist/adapters/RgbAdapter.d.ts +70 -28
  2. package/dist/adapters/RgbAdapter.d.ts.map +1 -1
  3. package/dist/adapters/RgbAdapter.js +463 -371
  4. package/dist/adapters/RgbAdapter.js.map +1 -1
  5. package/dist/adapters/flashnet.d.ts +14 -0
  6. package/dist/adapters/flashnet.d.ts.map +1 -0
  7. package/dist/adapters/flashnet.js +14 -0
  8. package/dist/adapters/flashnet.js.map +1 -0
  9. package/dist/adapters/rgb.d.ts +11 -0
  10. package/dist/adapters/rgb.d.ts.map +1 -0
  11. package/dist/adapters/rgb.js +11 -0
  12. package/dist/adapters/rgb.js.map +1 -0
  13. package/dist/lib/flashnet-client-manager.d.ts +25 -8
  14. package/dist/lib/flashnet-client-manager.d.ts.map +1 -1
  15. package/dist/lib/flashnet-client-manager.js +97 -13
  16. package/dist/lib/flashnet-client-manager.js.map +1 -1
  17. package/dist/lib/kaleido-client-manager.d.ts +38 -3
  18. package/dist/lib/kaleido-client-manager.d.ts.map +1 -1
  19. package/dist/lib/kaleido-client-manager.js +79 -10
  20. package/dist/lib/kaleido-client-manager.js.map +1 -1
  21. package/dist/lib/orchestra-client.d.ts +149 -0
  22. package/dist/lib/orchestra-client.d.ts.map +1 -0
  23. package/dist/lib/orchestra-client.js +178 -0
  24. package/dist/lib/orchestra-client.js.map +1 -0
  25. package/dist/lib/rgb-converters.d.ts +62 -0
  26. package/dist/lib/rgb-converters.d.ts.map +1 -0
  27. package/dist/lib/rgb-converters.js +179 -0
  28. package/dist/lib/rgb-converters.js.map +1 -0
  29. package/dist/lib/rgb-fee-policy.d.ts +41 -0
  30. package/dist/lib/rgb-fee-policy.d.ts.map +1 -0
  31. package/dist/lib/rgb-fee-policy.js +52 -0
  32. package/dist/lib/rgb-fee-policy.js.map +1 -0
  33. package/dist/lib/rgb-helpers.d.ts +54 -0
  34. package/dist/lib/rgb-helpers.d.ts.map +1 -0
  35. package/dist/lib/rgb-helpers.js +89 -0
  36. package/dist/lib/rgb-helpers.js.map +1 -0
  37. package/dist/types/flashnet.d.ts +20 -0
  38. package/dist/types/flashnet.d.ts.map +1 -1
  39. package/dist/types/flashnet.js +34 -6
  40. package/dist/types/flashnet.js.map +1 -1
  41. package/package.json +9 -1
@@ -1,71 +1,113 @@
1
1
  /**
2
2
  * RGB Protocol Adapter
3
- * Uses kaleido-sdk to implement the protocol adapter interface.
4
- * Ported from rate-extension/src/protocols/adapters/RgbAdapter.ts
3
+ * Uses Kaleido SDK to implement the protocol adapter interface
4
+ */
5
+ import { IProtocolAdapter, type ProtocolConfig } from "./IProtocolAdapter.js";
6
+ import { ProtocolType, Layer, NodeInfo, UnifiedAsset, UnifiedTransaction, InvoiceRequest, Invoice, DecodedInvoice, KeysendRequest, PaymentRequest, PaymentResult, PaymentStatus, Address, ConnectionInfo, TransactionFilter, QuoteRequest, Quote, SwapResult } from "../types/base.js";
7
+ /**
8
+ * RGB Protocol Adapter Implementation using Kaleido SDK
5
9
  */
6
- import { IProtocolAdapter, BaseProtocolConfig } from './IProtocolAdapter.js';
7
- import { ProtocolType, Layer, UnifiedAsset, UnifiedTransaction, InvoiceRequest, Invoice, DecodedInvoice, PaymentRequest, PaymentResult, PaymentStatus, Address, ConnectionInfo, TransactionFilter, QuoteRequest, Quote, SwapResult } from '../types/base.js';
8
10
  export declare class RgbAdapter implements IProtocolAdapter {
9
11
  readonly protocolName: ProtocolType;
10
- readonly capabilities: readonly import("..").ProtocolCapability[];
11
12
  readonly supportedLayers: Layer[];
12
13
  readonly version = "1.0.0";
14
+ readonly capabilities: readonly import("..").ProtocolCapability[];
13
15
  private connected;
14
16
  private config;
15
17
  private swapAccessTokens;
16
- connect(config: BaseProtocolConfig): Promise<void>;
18
+ connect(config: ProtocolConfig): Promise<void>;
17
19
  disconnect(): Promise<void>;
18
20
  isConnected(): boolean;
19
21
  getConnectionInfo(): Promise<ConnectionInfo>;
20
22
  listAssets(): Promise<UnifiedAsset[]>;
21
23
  getAsset(assetId: string): Promise<UnifiedAsset>;
22
- getAssetBalance(assetId: string): Promise<UnifiedAsset['balance']>;
24
+ getAssetBalance(assetId: string): Promise<UnifiedAsset["balance"]>;
23
25
  refreshBalances(): Promise<void>;
24
26
  listTransactions(filter?: TransactionFilter): Promise<UnifiedTransaction[]>;
25
27
  getTransaction(txId: string, assetId?: string): Promise<UnifiedTransaction>;
26
28
  createInvoice(request: InvoiceRequest): Promise<Invoice>;
27
29
  decodeInvoice(invoice: string): Promise<DecodedInvoice>;
28
30
  sendPayment(request: PaymentRequest): Promise<PaymentResult>;
31
+ payKeysend(request: KeysendRequest): Promise<PaymentResult>;
29
32
  getPaymentStatus(paymentHash: string): Promise<PaymentStatus>;
30
33
  getReceiveAddress(assetId?: string): Promise<Address>;
31
- getNodeInfo(): Promise<any>;
34
+ getNodeInfo(): Promise<NodeInfo>;
32
35
  getBtcBalance(): Promise<{
33
36
  confirmed: number;
34
37
  unconfirmed: number;
35
38
  total: number;
36
39
  }>;
37
- listChannels(): Promise<any[]>;
38
- listPayments(): Promise<any>;
40
+ listChannels(): Promise<unknown[]>;
41
+ listPayments(): Promise<unknown>;
39
42
  listTransfers(options?: {
40
43
  asset_id?: string;
41
- }): Promise<any>;
42
- createRgbInvoice(params: any): Promise<any>;
43
- decodeRgbInvoice(params: any): Promise<any>;
44
+ }): Promise<unknown>;
45
+ createRgbInvoice(params: Record<string, unknown>): Promise<unknown>;
46
+ createRgbUtxos(params?: {
47
+ num?: number;
48
+ size?: number;
49
+ feeRate?: number;
50
+ upTo?: boolean;
51
+ }): Promise<{
52
+ success: boolean;
53
+ }>;
54
+ listRgbUnspents(): Promise<{
55
+ unspents: Array<{
56
+ utxo: {
57
+ outpoint: string;
58
+ btc_amount: number;
59
+ colorable: boolean;
60
+ };
61
+ rgb_allocations: Array<{
62
+ asset_id?: string | null;
63
+ assignment: unknown;
64
+ settled: boolean;
65
+ }>;
66
+ }>;
67
+ }>;
68
+ /**
69
+ * Resolve a sat/vB fee rate to use for an RGB on-chain operation.
70
+ *
71
+ * Thin wrapper around {@link resolveRgbFeeRatePolicy} that provides the
72
+ * `estimateFn` and `network` from the live adapter state. The pure
73
+ * policy lives outside the class so it can be unit-tested without
74
+ * spinning up a kaleido client.
75
+ *
76
+ * Closes [GL #26] for the RGB adapter — previously every RGB on-chain
77
+ * spend used a hardcoded `1` (createUtxos) or `5` (sendAsset, sendBtc)
78
+ * which is a regtest-era default. On a busy mainnet mempool that's
79
+ * effectively "never confirms".
80
+ */
81
+ private resolveFeeRate;
82
+ estimateRgbFee(blocks: number): Promise<{
83
+ fee_rate: number;
84
+ }>;
85
+ getRgbDetailedBalance(): Promise<{
86
+ vanilla: {
87
+ settled: number;
88
+ future: number;
89
+ spendable: number;
90
+ };
91
+ colored: {
92
+ settled: number;
93
+ future: number;
94
+ spendable: number;
95
+ };
96
+ }>;
97
+ decodeRgbInvoice(params: Record<string, unknown>): Promise<unknown>;
44
98
  getInvoiceStatus(params: {
45
99
  invoice: string;
46
- }): Promise<any>;
47
- sendAsset(params: any): Promise<any>;
100
+ }): Promise<unknown>;
101
+ sendAsset(params: Record<string, unknown>): Promise<unknown>;
48
102
  sendBtcOnchain(params: {
49
103
  address: string;
50
104
  amount: number;
51
105
  feeRate?: number;
52
- }): Promise<any>;
106
+ }): Promise<unknown>;
53
107
  supportsSwaps(): boolean;
54
108
  getSwapQuote(request: QuoteRequest): Promise<Quote>;
55
109
  executeSwap(quote: Quote): Promise<SwapResult>;
56
110
  getSwapStatus(swapId: string): Promise<SwapResult>;
57
- executeProtocolOperation(operation: string, params: any): Promise<any>;
58
- private createBtcAsset;
59
- private convertNodeAssetToUnified;
60
- private convertBtcBalance;
61
- private convertSdkBalance;
62
- private convertNodeBalance;
63
- private convertTransferToTransaction;
64
- private mapTransferType;
65
- private mapTransferStatus;
66
- private mapPaymentStatus;
67
- private mapSwapStatus;
68
- private formatAmount;
69
111
  private handleSdkError;
70
112
  }
71
113
  //# sourceMappingURL=RgbAdapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RgbAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/RgbAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RgbAdapter.d.ts","sourceRoot":"","sources":["../../src/adapters/RgbAdapter.ts"],"names":[],"mappings":"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"}