@1sat/wallet 0.0.2 → 0.0.4

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 (141) hide show
  1. package/dist/OneSatWallet.d.ts +222 -0
  2. package/dist/OneSatWallet.d.ts.map +1 -0
  3. package/dist/OneSatWallet.js +754 -0
  4. package/dist/OneSatWallet.js.map +1 -0
  5. package/dist/address-sync/AddressManager.d.ts +86 -0
  6. package/dist/address-sync/AddressManager.d.ts.map +1 -0
  7. package/dist/address-sync/AddressManager.js +108 -0
  8. package/dist/address-sync/AddressManager.js.map +1 -0
  9. package/dist/address-sync/AddressSyncManager.d.ts +204 -0
  10. package/dist/address-sync/AddressSyncManager.d.ts.map +1 -0
  11. package/dist/address-sync/AddressSyncManager.js +525 -0
  12. package/dist/address-sync/AddressSyncManager.js.map +1 -0
  13. package/dist/address-sync/AddressSyncQueueIdb.d.ts +31 -0
  14. package/dist/address-sync/AddressSyncQueueIdb.d.ts.map +1 -0
  15. package/dist/address-sync/AddressSyncQueueIdb.js +356 -0
  16. package/dist/address-sync/AddressSyncQueueIdb.js.map +1 -0
  17. package/dist/address-sync/AddressSyncQueueSqlite.d.ts +55 -0
  18. package/dist/address-sync/AddressSyncQueueSqlite.d.ts.map +1 -0
  19. package/dist/address-sync/AddressSyncQueueSqlite.js +198 -0
  20. package/dist/address-sync/AddressSyncQueueSqlite.js.map +1 -0
  21. package/dist/address-sync/index.d.ts +8 -0
  22. package/dist/address-sync/index.d.ts.map +1 -0
  23. package/dist/address-sync/index.js +5 -0
  24. package/dist/address-sync/index.js.map +1 -0
  25. package/dist/backup/FileBackupProvider.d.ts +97 -0
  26. package/dist/backup/FileBackupProvider.d.ts.map +1 -0
  27. package/dist/backup/FileBackupProvider.js +185 -0
  28. package/dist/backup/FileBackupProvider.js.map +1 -0
  29. package/dist/backup/FileRestoreReader.d.ts +59 -0
  30. package/dist/backup/FileRestoreReader.d.ts.map +1 -0
  31. package/dist/backup/FileRestoreReader.js +89 -0
  32. package/dist/backup/FileRestoreReader.js.map +1 -0
  33. package/dist/backup/index.d.ts +6 -0
  34. package/dist/backup/index.d.ts.map +1 -0
  35. package/dist/backup/index.js +5 -0
  36. package/dist/backup/index.js.map +1 -0
  37. package/dist/backup/types.d.ts +32 -0
  38. package/dist/backup/types.d.ts.map +1 -0
  39. package/dist/backup/types.js +2 -0
  40. package/dist/backup/types.js.map +1 -0
  41. package/dist/browser.d.ts +6 -0
  42. package/dist/browser.d.ts.map +1 -0
  43. package/dist/browser.js +6 -0
  44. package/dist/browser.js.map +1 -0
  45. package/dist/cwi/chrome.d.ts +12 -0
  46. package/dist/cwi/chrome.d.ts.map +1 -0
  47. package/dist/cwi/chrome.js +44 -0
  48. package/dist/cwi/chrome.js.map +1 -0
  49. package/dist/cwi/event.d.ts +12 -0
  50. package/dist/cwi/event.d.ts.map +1 -0
  51. package/dist/cwi/event.js +39 -0
  52. package/dist/cwi/event.js.map +1 -0
  53. package/dist/cwi/factory.d.ts +15 -0
  54. package/dist/cwi/factory.d.ts.map +1 -0
  55. package/dist/cwi/factory.js +45 -0
  56. package/dist/cwi/factory.js.map +1 -0
  57. package/dist/cwi/index.d.ts +12 -0
  58. package/dist/cwi/index.d.ts.map +1 -0
  59. package/dist/cwi/index.js +12 -0
  60. package/dist/cwi/index.js.map +1 -0
  61. package/dist/cwi/types.d.ts +40 -0
  62. package/dist/cwi/types.d.ts.map +1 -0
  63. package/dist/cwi/types.js +40 -0
  64. package/dist/cwi/types.js.map +1 -0
  65. package/dist/factory/createWebWallet.d.ts +73 -0
  66. package/dist/factory/createWebWallet.d.ts.map +1 -0
  67. package/dist/factory/createWebWallet.js +251 -0
  68. package/dist/factory/createWebWallet.js.map +1 -0
  69. package/dist/factory/fullSync.d.ts +58 -0
  70. package/dist/factory/fullSync.d.ts.map +1 -0
  71. package/dist/factory/fullSync.js +92 -0
  72. package/dist/factory/fullSync.js.map +1 -0
  73. package/dist/factory/index.d.ts +5 -0
  74. package/dist/factory/index.d.ts.map +1 -0
  75. package/dist/factory/index.js +3 -0
  76. package/dist/factory/index.js.map +1 -0
  77. package/dist/index.d.ts +18 -20
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +24 -21
  80. package/dist/index.js.map +1 -1
  81. package/dist/indexers/Bsv21Indexer.d.ts +36 -0
  82. package/dist/indexers/Bsv21Indexer.d.ts.map +1 -0
  83. package/dist/indexers/Bsv21Indexer.js +232 -0
  84. package/dist/indexers/Bsv21Indexer.js.map +1 -0
  85. package/dist/indexers/CosignIndexer.d.ts +14 -0
  86. package/dist/indexers/CosignIndexer.d.ts.map +1 -0
  87. package/dist/indexers/CosignIndexer.js +27 -0
  88. package/dist/indexers/CosignIndexer.js.map +1 -0
  89. package/dist/indexers/FundIndexer.d.ts +20 -0
  90. package/dist/indexers/FundIndexer.d.ts.map +1 -0
  91. package/dist/indexers/FundIndexer.js +65 -0
  92. package/dist/indexers/FundIndexer.js.map +1 -0
  93. package/dist/indexers/InscriptionIndexer.d.ts +33 -0
  94. package/dist/indexers/InscriptionIndexer.d.ts.map +1 -0
  95. package/dist/indexers/InscriptionIndexer.js +116 -0
  96. package/dist/indexers/InscriptionIndexer.js.map +1 -0
  97. package/dist/indexers/LockIndexer.d.ts +11 -0
  98. package/dist/indexers/LockIndexer.d.ts.map +1 -0
  99. package/dist/indexers/LockIndexer.js +44 -0
  100. package/dist/indexers/LockIndexer.js.map +1 -0
  101. package/dist/indexers/MapIndexer.d.ts +14 -0
  102. package/dist/indexers/MapIndexer.d.ts.map +1 -0
  103. package/dist/indexers/MapIndexer.js +65 -0
  104. package/dist/indexers/MapIndexer.js.map +1 -0
  105. package/dist/indexers/OpNSIndexer.d.ts +10 -0
  106. package/dist/indexers/OpNSIndexer.d.ts.map +1 -0
  107. package/dist/indexers/OpNSIndexer.js +39 -0
  108. package/dist/indexers/OpNSIndexer.js.map +1 -0
  109. package/dist/indexers/OrdLockIndexer.d.ts +18 -0
  110. package/dist/indexers/OrdLockIndexer.d.ts.map +1 -0
  111. package/dist/indexers/OrdLockIndexer.js +65 -0
  112. package/dist/indexers/OrdLockIndexer.js.map +1 -0
  113. package/dist/indexers/OriginIndexer.d.ts +38 -0
  114. package/dist/indexers/OriginIndexer.d.ts.map +1 -0
  115. package/dist/indexers/OriginIndexer.js +241 -0
  116. package/dist/indexers/OriginIndexer.js.map +1 -0
  117. package/dist/indexers/Outpoint.d.ts +11 -0
  118. package/dist/indexers/Outpoint.d.ts.map +1 -0
  119. package/dist/indexers/Outpoint.js +62 -0
  120. package/dist/indexers/Outpoint.js.map +1 -0
  121. package/dist/indexers/SigmaIndexer.d.ts +29 -0
  122. package/dist/indexers/SigmaIndexer.d.ts.map +1 -0
  123. package/dist/indexers/SigmaIndexer.js +134 -0
  124. package/dist/indexers/SigmaIndexer.js.map +1 -0
  125. package/dist/indexers/index.d.ts +14 -0
  126. package/dist/indexers/index.d.ts.map +1 -0
  127. package/dist/indexers/index.js +14 -0
  128. package/dist/indexers/index.js.map +1 -0
  129. package/dist/indexers/parseAddress.d.ts +10 -0
  130. package/dist/indexers/parseAddress.d.ts.map +1 -0
  131. package/dist/indexers/parseAddress.js +25 -0
  132. package/dist/indexers/parseAddress.js.map +1 -0
  133. package/dist/node.d.ts +6 -0
  134. package/dist/node.d.ts.map +1 -0
  135. package/dist/node.js +6 -0
  136. package/dist/node.js.map +1 -0
  137. package/dist/signers/ReadOnlySigner.d.ts +16 -0
  138. package/dist/signers/ReadOnlySigner.d.ts.map +1 -0
  139. package/dist/signers/ReadOnlySigner.js +48 -0
  140. package/dist/signers/ReadOnlySigner.js.map +1 -0
  141. package/package.json +21 -8
@@ -0,0 +1,222 @@
1
+ import { OneSatServices } from '@1sat/client';
2
+ import type { Indexer, ParseContext, SyncOutput, Txo } from '@1sat/types';
3
+ import { type PrivateKey, Transaction } from '@bsv/sdk';
4
+ import { Wallet, type WalletStorageManager, type sdk as mobileSdk } from '@bsv/wallet-toolbox-mobile';
5
+ import { Outpoint } from './indexers/Outpoint';
6
+ type Chain = mobileSdk.Chain;
7
+ type EventCallback<T> = (event: T) => void;
8
+ /**
9
+ * Result of ingestTransaction including parse context for debugging
10
+ */
11
+ export interface IngestResult {
12
+ parseContext: ParseContext;
13
+ internalizedCount: number;
14
+ }
15
+ /**
16
+ * Events emitted by OneSatWallet during sync operations
17
+ */
18
+ export interface OneSatWalletEvents {
19
+ 'sync:start': {
20
+ address: string;
21
+ fromScore: number;
22
+ };
23
+ 'sync:output': {
24
+ address: string;
25
+ output: SyncOutput;
26
+ };
27
+ 'sync:skipped': {
28
+ address: string;
29
+ outpoint: string;
30
+ reason: string;
31
+ };
32
+ 'sync:parsed': {
33
+ address: string;
34
+ txid: string;
35
+ parseContext: ParseContext;
36
+ internalizedCount: number;
37
+ };
38
+ 'sync:error': {
39
+ address: string;
40
+ error: Error;
41
+ };
42
+ 'sync:complete': {
43
+ address: string;
44
+ };
45
+ 'syncAll:start': {
46
+ addresses: string[];
47
+ fromScore: number;
48
+ };
49
+ 'syncAll:output': {
50
+ output: SyncOutput;
51
+ };
52
+ 'syncAll:skipped': {
53
+ outpoint: string;
54
+ reason: string;
55
+ };
56
+ 'syncAll:parsed': {
57
+ txid: string;
58
+ parseContext: ParseContext;
59
+ internalizedCount: number;
60
+ };
61
+ 'syncAll:error': {
62
+ error: Error;
63
+ };
64
+ 'syncAll:complete': {
65
+ addresses: string[];
66
+ };
67
+ }
68
+ export interface OneSatWalletArgs {
69
+ /**
70
+ * Either a public key hex string (read-only mode) or a PrivateKey (full signing).
71
+ */
72
+ rootKey: string | PrivateKey;
73
+ /**
74
+ * The storage manager for the wallet.
75
+ */
76
+ storage: WalletStorageManager;
77
+ /**
78
+ * Network: 'main' or 'test'
79
+ */
80
+ chain: Chain;
81
+ /**
82
+ * Addresses owned by this wallet, used for filtering indexed outputs.
83
+ */
84
+ owners?: Set<string>;
85
+ /**
86
+ * Indexers to use for parsing transactions.
87
+ * If not provided, default indexers will be used.
88
+ */
89
+ indexers?: Indexer[];
90
+ /**
91
+ * Custom 1Sat API URL (default: based on chain - mainnet or testnet)
92
+ */
93
+ onesatUrl?: string;
94
+ /**
95
+ * Automatically start syncing all owner addresses on construction.
96
+ */
97
+ autoSync?: boolean;
98
+ }
99
+ /**
100
+ * OneSatWallet extends the BRC-100 Wallet with 1Sat-specific indexing and services.
101
+ *
102
+ * Can be instantiated with either:
103
+ * - A public key (read-only mode for queries)
104
+ * - A private key (full signing capability)
105
+ */
106
+ export declare class OneSatWallet extends Wallet {
107
+ private readonly isReadOnly;
108
+ private readonly indexers;
109
+ readonly services: OneSatServices;
110
+ private owners;
111
+ private listeners;
112
+ private activeSyncs;
113
+ private activeMultiSync;
114
+ constructor(args: OneSatWalletArgs);
115
+ /**
116
+ * Returns true if this wallet was created with only a public key.
117
+ * Read-only wallets can query but not sign transactions.
118
+ */
119
+ get readOnly(): boolean;
120
+ /**
121
+ * Subscribe to wallet events
122
+ */
123
+ on<K extends keyof OneSatWalletEvents>(event: K, callback: EventCallback<OneSatWalletEvents[K]>): void;
124
+ /**
125
+ * Unsubscribe from wallet events
126
+ */
127
+ off<K extends keyof OneSatWalletEvents>(event: K, callback: EventCallback<OneSatWalletEvents[K]>): void;
128
+ /**
129
+ * Emit a wallet event
130
+ */
131
+ private emit;
132
+ /**
133
+ * Add an address to the set of owned addresses.
134
+ * Outputs to these addresses will be indexed.
135
+ */
136
+ addOwner(address: string): void;
137
+ /**
138
+ * Parse a transaction through indexers without internalizing.
139
+ *
140
+ * This is useful for debugging/testing to see what the indexers produce
141
+ * without actually storing the transaction in the wallet.
142
+ */
143
+ parseTransaction(txOrTxid: Transaction | string, isBroadcasted?: boolean): Promise<ParseContext>;
144
+ /**
145
+ * Parse a single output without full transaction context.
146
+ * Runs all indexers' parse() methods but NOT summarize().
147
+ */
148
+ parseOutput(output: Transaction['outputs'][0], outpoint: Outpoint): Promise<Txo>;
149
+ /**
150
+ * Load and parse a single output by outpoint.
151
+ * Loads the transaction, extracts the output, and runs indexers on it.
152
+ */
153
+ loadTxo(outpoint: string): Promise<Txo>;
154
+ /**
155
+ * Run all indexers on a single Txo and populate its data/owner/basket
156
+ */
157
+ runIndexersOnTxo(txo: Txo): Promise<void>;
158
+ /**
159
+ * Parse all inputs - run indexers on source outputs to populate ctx.spends
160
+ */
161
+ private parseInputs;
162
+ /**
163
+ * Load a transaction by txid.
164
+ * Checks storage first, falls back to beef service.
165
+ */
166
+ loadTransaction(txid: string): Promise<Transaction>;
167
+ /**
168
+ * Load and attach source transactions for all inputs (1 level deep).
169
+ * Modifies the transaction in place.
170
+ */
171
+ hydrateSourceTransactions(tx: Transaction): Promise<void>;
172
+ /**
173
+ * Build minimal parse context from transaction
174
+ */
175
+ buildParseContext(tx: Transaction): ParseContext;
176
+ /**
177
+ * Ingest a transaction by running it through indexers and writing directly to storage.
178
+ */
179
+ ingestTransaction(tx: Transaction, description: string, labels?: string[], isBroadcasted?: boolean): Promise<IngestResult>;
180
+ /**
181
+ * Broadcast a transaction and ingest it into the wallet if successful.
182
+ */
183
+ broadcast(tx: Transaction, description: string, labels?: string[]): Promise<IngestResult>;
184
+ /**
185
+ * Sync a single address from the 1Sat indexer using Server-Sent Events.
186
+ * Runs in the background - use stopSync() or close() to stop.
187
+ */
188
+ syncAddress(address: string, fromScore?: number): void;
189
+ /**
190
+ * Process a spend transaction during sync.
191
+ * Only marks our output as spent - doesn't ingest the spend tx.
192
+ */
193
+ private processSpendTx;
194
+ /**
195
+ * Stop syncing a specific address.
196
+ */
197
+ stopSync(address: string): void;
198
+ /**
199
+ * Close the wallet and cleanup all active sync connections.
200
+ */
201
+ close(): void;
202
+ /**
203
+ * Start syncing all owner addresses using a single multi-owner SSE connection.
204
+ * This is more efficient than syncing each address individually.
205
+ */
206
+ syncAll(fromScore?: number): void;
207
+ /**
208
+ * Process a spend transaction during multi-owner sync.
209
+ */
210
+ private processSpendTxMulti;
211
+ /**
212
+ * Stop the multi-owner sync.
213
+ */
214
+ stopSyncAll(): void;
215
+ /**
216
+ * Start syncing each owner address individually.
217
+ * For most cases, use syncAll() instead which uses a single connection.
218
+ */
219
+ syncEach(): void;
220
+ }
221
+ export {};
222
+ //# sourceMappingURL=OneSatWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OneSatWallet.d.ts","sourceRoot":"","sources":["../src/OneSatWallet.ts"],"names":[],"mappings":"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"}