amule-ec-client 0.5.2 → 0.6.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 (86) hide show
  1. package/README.md +4 -0
  2. package/dist/AddLinkRequest-DwUbSMXD.mjs +17 -0
  3. package/dist/AddLinkRequest-DwUbSMXD.mjs.map +1 -0
  4. package/dist/ClientQueueRequest-D9FaX5K9.mjs +17 -0
  5. package/dist/ClientQueueRequest-D9FaX5K9.mjs.map +1 -0
  6. package/dist/ClientQueueResponse-FVQBR_8b.mjs +65 -0
  7. package/dist/ClientQueueResponse-FVQBR_8b.mjs.map +1 -0
  8. package/dist/Codes-CjiW7Pdl.mjs +411 -0
  9. package/dist/Codes-CjiW7Pdl.mjs.map +1 -0
  10. package/dist/CreateCategoryRequest-Br6yfDhZ.mjs +24 -0
  11. package/dist/CreateCategoryRequest-Br6yfDhZ.mjs.map +1 -0
  12. package/dist/DeleteCategoryRequest-C2-p6sx0.mjs +17 -0
  13. package/dist/DeleteCategoryRequest-C2-p6sx0.mjs.map +1 -0
  14. package/dist/DownloadCommandRequest-CaULjfNi.mjs +31 -0
  15. package/dist/DownloadCommandRequest-CaULjfNi.mjs.map +1 -0
  16. package/dist/DownloadFileRequest-CcNqsBo7.mjs +20 -0
  17. package/dist/DownloadFileRequest-CcNqsBo7.mjs.map +1 -0
  18. package/dist/DownloadQueueRequest-bd7lFiMj.mjs +17 -0
  19. package/dist/DownloadQueueRequest-bd7lFiMj.mjs.map +1 -0
  20. package/dist/DownloadQueueResponse-DyP1rLTV.mjs +261 -0
  21. package/dist/DownloadQueueResponse-DyP1rLTV.mjs.map +1 -0
  22. package/dist/GetPreferencesRequest-C94Su9IH.mjs +18 -0
  23. package/dist/GetPreferencesRequest-C94Su9IH.mjs.map +1 -0
  24. package/dist/PreferencesDetailsResponse-BjMxbvVY.mjs +96 -0
  25. package/dist/PreferencesDetailsResponse-BjMxbvVY.mjs.map +1 -0
  26. package/dist/PreferencesResponse-Dth-n2sA.mjs +39 -0
  27. package/dist/PreferencesResponse-Dth-n2sA.mjs.map +1 -0
  28. package/dist/ReloadSharedFilesRequest-CPwAEJYG.mjs +15 -0
  29. package/dist/ReloadSharedFilesRequest-CPwAEJYG.mjs.map +1 -0
  30. package/dist/Request-C0UUuQIX.mjs +160 -0
  31. package/dist/Request-C0UUuQIX.mjs.map +1 -0
  32. package/dist/SearchProgressResponse-Bputc9Ww.mjs +17 -0
  33. package/dist/SearchProgressResponse-Bputc9Ww.mjs.map +1 -0
  34. package/dist/SearchRequest-CNqz-K1Z.mjs +57 -0
  35. package/dist/SearchRequest-CNqz-K1Z.mjs.map +1 -0
  36. package/dist/SearchResultsRequest-DKG508KF.mjs +15 -0
  37. package/dist/SearchResultsRequest-DKG508KF.mjs.map +1 -0
  38. package/dist/SearchResultsResponse-ChNrKJ6_.mjs +31 -0
  39. package/dist/SearchResultsResponse-ChNrKJ6_.mjs.map +1 -0
  40. package/dist/SearchStatusRequest-Bv6iaC9Y.mjs +15 -0
  41. package/dist/SearchStatusRequest-Bv6iaC9Y.mjs.map +1 -0
  42. package/dist/SearchStopRequest-rET-2Nsz.mjs +15 -0
  43. package/dist/SearchStopRequest-rET-2Nsz.mjs.map +1 -0
  44. package/dist/ServerConnectRequest-CcO2-Eqd.mjs +20 -0
  45. package/dist/ServerConnectRequest-CcO2-Eqd.mjs.map +1 -0
  46. package/dist/ServerDisconnectRequest-DEORM3SF.mjs +15 -0
  47. package/dist/ServerDisconnectRequest-DEORM3SF.mjs.map +1 -0
  48. package/dist/ServerListRequest-FwFQBp12.mjs +15 -0
  49. package/dist/ServerListRequest-FwFQBp12.mjs.map +1 -0
  50. package/dist/ServerListResponse-ZAKSSCPZ.mjs +52 -0
  51. package/dist/ServerListResponse-ZAKSSCPZ.mjs.map +1 -0
  52. package/dist/ServerUpdateFromUrlRequest-D4xBqJDJ.mjs +14 -0
  53. package/dist/ServerUpdateFromUrlRequest-D4xBqJDJ.mjs.map +1 -0
  54. package/dist/SetFileCategoryRequest-BwEPJVeR.mjs +17 -0
  55. package/dist/SetFileCategoryRequest-BwEPJVeR.mjs.map +1 -0
  56. package/dist/SetPreferencesRequest-D2fVIH3P.mjs +66 -0
  57. package/dist/SetPreferencesRequest-D2fVIH3P.mjs.map +1 -0
  58. package/dist/SharedFilePriorityRequest-j6ImgagV.mjs +15 -0
  59. package/dist/SharedFilePriorityRequest-j6ImgagV.mjs.map +1 -0
  60. package/dist/SharedFilesRequest-D2M3K0eB.mjs +17 -0
  61. package/dist/SharedFilesRequest-D2M3K0eB.mjs.map +1 -0
  62. package/dist/SharedFilesResponse-BiXT_oCx.mjs +41 -0
  63. package/dist/SharedFilesResponse-BiXT_oCx.mjs.map +1 -0
  64. package/dist/StatsRequest-B8v9LLHG.mjs +17 -0
  65. package/dist/StatsRequest-B8v9LLHG.mjs.map +1 -0
  66. package/dist/StatsResponse-BVUxNPbz.mjs +78 -0
  67. package/dist/StatsResponse-BVUxNPbz.mjs.map +1 -0
  68. package/dist/Tag-CZF6BRMY.mjs +262 -0
  69. package/dist/Tag-CZF6BRMY.mjs.map +1 -0
  70. package/dist/UpdateCategoryRequest-CgzH7SxP.mjs +24 -0
  71. package/dist/UpdateCategoryRequest-CgzH7SxP.mjs.map +1 -0
  72. package/dist/UpdateRequest-Bunl73Ga.mjs +17 -0
  73. package/dist/UpdateRequest-Bunl73Ga.mjs.map +1 -0
  74. package/dist/UpdateResponse-1LhyH9Zf.mjs +47 -0
  75. package/dist/UpdateResponse-1LhyH9Zf.mjs.map +1 -0
  76. package/dist/download-details-OM0FJUhZ.mjs +12 -0
  77. package/dist/download-details-OM0FJUhZ.mjs.map +1 -0
  78. package/dist/index.d.mts +1130 -0
  79. package/dist/index.mjs +1077 -0
  80. package/dist/index.mjs.map +1 -0
  81. package/dist/utils-DBnUQnZ-.mjs +26 -0
  82. package/dist/utils-DBnUQnZ-.mjs.map +1 -0
  83. package/package.json +5 -5
  84. package/dist/index.d.ts +0 -1020
  85. package/dist/index.js +0 -3157
  86. package/dist/index.js.map +0 -1
package/dist/index.d.ts DELETED
@@ -1,1020 +0,0 @@
1
- interface AmuleFile {
2
- fileHashHexString?: string;
3
- fileName?: string;
4
- filePath?: string;
5
- sizeFull?: number;
6
- fileEd2kLink?: string;
7
- upPrio?: number;
8
- getRequests?: number;
9
- getAllRequests?: number;
10
- getAccepts?: number;
11
- getAllAccepts?: number;
12
- getXferred?: number;
13
- getAllXferred?: number;
14
- getCompleteSourcesLow?: number;
15
- getCompleteSourcesHigh?: number;
16
- getCompleteSources?: number;
17
- getOnQueue?: number;
18
- getComment?: string;
19
- getRating?: number;
20
- }
21
- interface AmuleTransferringFile extends AmuleFile {
22
- partMetID?: number;
23
- sizeXfer?: number;
24
- sizeDone?: number;
25
- fileStatus?: FileStatus;
26
- stopped?: boolean;
27
- sourceCount?: number;
28
- sourceNotCurrCount?: number;
29
- sourceXferCount?: number;
30
- sourceCountA4AF?: number;
31
- speed?: number;
32
- downPrio?: number;
33
- fileCat?: number;
34
- lastSeenComplete?: number;
35
- lastDateChanged?: number;
36
- downloadActiveTime?: number;
37
- availablePartCount?: number;
38
- a4AFAuto?: boolean;
39
- hashingProgress?: boolean;
40
- getLostDueToCorruption?: number;
41
- getGainDueToCompression?: number;
42
- totalPacketsSavedDueToICH?: number;
43
- a4afSources?: number[];
44
- }
45
- interface AmuleCategory {
46
- id?: number;
47
- name?: string;
48
- path?: string;
49
- comment?: string;
50
- color?: number;
51
- priority?: number;
52
- }
53
- interface AmuleServer {
54
- name?: string;
55
- description?: string;
56
- address?: string;
57
- ip?: string;
58
- port?: number;
59
- ping?: number;
60
- users?: number;
61
- maxUsers?: number;
62
- files?: number;
63
- priority?: number;
64
- version?: string;
65
- isStatic?: boolean;
66
- failedCount?: number;
67
- }
68
- interface AmuleUpDownClient {
69
- clientName?: string;
70
- userHashHexString?: string;
71
- userID?: number;
72
- score?: number;
73
- software?: string;
74
- softVerStr?: string;
75
- userIP?: string;
76
- userPort?: number;
77
- sourceFrom?: number;
78
- serverIP?: string;
79
- serverPort?: number;
80
- serverName?: string;
81
- upSpeed?: number;
82
- downSpeed?: number;
83
- uploadSession?: number;
84
- transferredDown?: number;
85
- uploadedTotal?: number;
86
- downloadedTotal?: number;
87
- uploadState?: number;
88
- downloadState?: number;
89
- identState?: number;
90
- extProtocol?: number;
91
- waitingPosition?: number;
92
- remoteQueueRank?: number;
93
- oldRemoteQueueRank?: number;
94
- obfuscationStatus?: number;
95
- kadPort?: number;
96
- friendSlot?: number;
97
- uploadFileId?: bigint | number;
98
- uploadFilename?: string;
99
- requestFileId?: bigint | number;
100
- remoteFilename?: string;
101
- disableViewShared?: boolean;
102
- version?: number;
103
- modVersion?: string;
104
- osInfo?: string;
105
- availableParts?: number;
106
- partStatus?: string;
107
- nextRequestedPart?: number;
108
- lastDownloadingPart?: number;
109
- uploadPartStatus?: string;
110
- }
111
- interface AmuleFriend {
112
- name?: string;
113
- userHashHexString?: string;
114
- ip?: string;
115
- port?: number;
116
- friendSlot?: boolean;
117
- shared?: boolean;
118
- client?: AmuleUpDownClient;
119
- }
120
- declare enum FileStatus {
121
- READY = 0,
122
- EMPTY = 1,
123
- WAITINGFORHASH = 2,
124
- HASHING = 3,
125
- ERROR = 4,
126
- INSUFFICIENT = 5,
127
- UNKNOWN = 6,
128
- PAUSED = 7,
129
- COMPLETING = 8,
130
- COMPLETE = 9,
131
- ALLOCATING = 10
132
- }
133
- declare enum DownloadCommand {
134
- SWAP_A4AF_THIS = 22,
135
- SWAP_A4AF_THIS_AUTO = 23,
136
- SWAP_A4AF_OTHERS = 24,
137
- PAUSE = 25,
138
- RESUME = 26,
139
- STOP = 27,
140
- DELETE = 29
141
- }
142
- declare enum SearchType {
143
- GLOBAL = 1,
144
- KAD = 2,
145
- LOCAL = 0,
146
- WEB = 3
147
- }
148
-
149
- interface SearchFilters {
150
- minSize?: number;
151
- maxSize?: number;
152
- fileType?: string;
153
- extension?: string;
154
- availability?: number;
155
- }
156
- interface ConnectionState {
157
- ed2kConnected: boolean;
158
- ed2kConnecting: boolean;
159
- kadConnected: boolean;
160
- kadFirewalled: boolean;
161
- kadRunning: boolean;
162
- serverIpv4?: {
163
- address: string;
164
- port: number;
165
- };
166
- serverPing?: number;
167
- serverPrio?: number;
168
- serverFailed?: number;
169
- serverStatic?: boolean;
170
- serverVersion?: string;
171
- serverName?: string;
172
- serverDescription?: string;
173
- serverUsers?: number;
174
- serverUsersMax?: number;
175
- serverFiles?: number;
176
- ed2kId?: number;
177
- kadId?: number;
178
- clientId?: number;
179
- }
180
- declare enum SearchFileDownloadStatus {
181
- NEW = 0,
182
- DOWNLOADED = 1,
183
- QUEUED = 2,
184
- CANCELED = 3,
185
- QUEUEDCANCELED = 4
186
- }
187
-
188
- declare enum ProtocolVersion {
189
- EC_CURRENT_PROTOCOL_VERSION = 516
190
- }
191
- declare enum ECOpCode {
192
- EC_OP_NOOP = 1,
193
- EC_OP_AUTH_REQ = 2,
194
- EC_OP_AUTH_FAIL = 3,
195
- EC_OP_AUTH_OK = 4,
196
- EC_OP_FAILED = 5,
197
- EC_OP_STRINGS = 6,
198
- EC_OP_MISC_DATA = 7,
199
- EC_OP_SHUTDOWN = 8,
200
- EC_OP_ADD_LINK = 9,
201
- EC_OP_STAT_REQ = 10,
202
- EC_OP_GET_CONNSTATE = 11,
203
- EC_OP_STATS = 12,
204
- EC_OP_GET_DLOAD_QUEUE = 13,
205
- EC_OP_GET_ULOAD_QUEUE = 14,
206
- EC_OP_GET_SHARED_FILES = 16,
207
- EC_OP_SHARED_SET_PRIO = 17,
208
- EC_OP_PARTFILE_SWAP_A4AF_THIS = 22,
209
- EC_OP_PARTFILE_SWAP_A4AF_THIS_AUTO = 23,
210
- EC_OP_PARTFILE_SWAP_A4AF_OTHERS = 24,
211
- EC_OP_PARTFILE_PAUSE = 25,
212
- EC_OP_PARTFILE_RESUME = 26,
213
- EC_OP_PARTFILE_STOP = 27,
214
- EC_OP_PARTFILE_PRIO_SET = 28,
215
- EC_OP_PARTFILE_DELETE = 29,
216
- EC_OP_PARTFILE_SET_CAT = 30,
217
- EC_OP_DLOAD_QUEUE = 31,
218
- EC_OP_ULOAD_QUEUE = 32,
219
- EC_OP_SHARED_FILES = 34,
220
- EC_OP_SHAREDFILES_RELOAD = 35,
221
- EC_OP_RENAME_FILE = 37,
222
- EC_OP_SEARCH_START = 38,
223
- EC_OP_SEARCH_STOP = 39,
224
- EC_OP_SEARCH_RESULTS = 40,
225
- EC_OP_SEARCH_PROGRESS = 41,
226
- EC_OP_DOWNLOAD_SEARCH_RESULT = 42,
227
- EC_OP_IPFILTER_RELOAD = 43,
228
- EC_OP_GET_SERVER_LIST = 44,
229
- EC_OP_SERVER_LIST = 45,
230
- EC_OP_SERVER_DISCONNECT = 46,
231
- EC_OP_SERVER_CONNECT = 47,
232
- EC_OP_SERVER_REMOVE = 48,
233
- EC_OP_SERVER_ADD = 49,
234
- EC_OP_SERVER_UPDATE_FROM_URL = 50,
235
- EC_OP_ADDLOGLINE = 51,
236
- EC_OP_ADDDEBUGLOGLINE = 52,
237
- EC_OP_GET_LOG = 53,
238
- EC_OP_GET_DEBUGLOG = 54,
239
- EC_OP_GET_SERVERINFO = 55,
240
- EC_OP_LOG = 56,
241
- EC_OP_DEBUGLOG = 57,
242
- EC_OP_SERVERINFO = 58,
243
- EC_OP_RESET_LOG = 59,
244
- EC_OP_RESET_DEBUGLOG = 60,
245
- EC_OP_CLEAR_SERVERINFO = 61,
246
- EC_OP_GET_LAST_LOG_ENTRY = 62,
247
- EC_OP_GET_PREFERENCES = 63,
248
- EC_OP_SET_PREFERENCES = 64,
249
- EC_OP_CREATE_CATEGORY = 65,
250
- EC_OP_UPDATE_CATEGORY = 66,
251
- EC_OP_DELETE_CATEGORY = 67,
252
- EC_OP_GET_STATSGRAPHS = 68,
253
- EC_OP_STATSGRAPHS = 69,
254
- EC_OP_GET_STATSTREE = 70,
255
- EC_OP_STATSTREE = 71,
256
- EC_OP_KAD_START = 72,
257
- EC_OP_KAD_STOP = 73,
258
- EC_OP_CONNECT = 74,
259
- EC_OP_DISCONNECT = 75,
260
- EC_OP_KAD_UPDATE_FROM_URL = 77,
261
- EC_OP_KAD_BOOTSTRAP_FROM_IP = 78,
262
- EC_OP_AUTH_SALT = 79,
263
- EC_OP_AUTH_PASSWD = 80,
264
- EC_OP_IPFILTER_UPDATE = 81,
265
- EC_OP_GET_UPDATE = 82,
266
- EC_OP_CLEAR_COMPLETED = 83,
267
- EC_OP_CLIENT_SWAP_TO_ANOTHER_FILE = 84,
268
- EC_OP_SHARED_FILE_SET_COMMENT = 85,
269
- EC_OP_SERVER_SET_STATIC_PRIO = 86,
270
- EC_OP_FRIEND = 87
271
- }
272
- declare enum ECTagName {
273
- EC_TAG_STRING = 0,
274
- EC_TAG_PASSWD_HASH = 1,
275
- EC_TAG_PROTOCOL_VERSION = 2,
276
- EC_TAG_VERSION_ID = 3,
277
- EC_TAG_DETAIL_LEVEL = 4,
278
- EC_TAG_CONNSTATE = 5,
279
- EC_TAG_ED2K_ID = 6,
280
- EC_TAG_LOG_TO_STATUS = 7,
281
- EC_TAG_BOOTSTRAP_IP = 8,
282
- EC_TAG_BOOTSTRAP_PORT = 9,
283
- EC_TAG_CLIENT_ID = 10,
284
- EC_TAG_PASSWD_SALT = 11,
285
- EC_TAG_CAN_ZLIB = 12,
286
- EC_TAG_CAN_UTF8_NUMBERS = 13,
287
- EC_TAG_CAN_NOTIFY = 14,
288
- EC_TAG_ECID = 15,
289
- EC_TAG_KAD_ID = 16,
290
- EC_TAG_CLIENT_NAME = 256,
291
- EC_TAG_CLIENT_VERSION = 257,
292
- EC_TAG_CLIENT_MOD = 258,
293
- EC_TAG_STATS_UL_SPEED = 512,
294
- EC_TAG_STATS_DL_SPEED = 513,
295
- EC_TAG_STATS_UL_SPEED_LIMIT = 514,
296
- EC_TAG_STATS_DL_SPEED_LIMIT = 515,
297
- EC_TAG_STATS_UP_OVERHEAD = 516,
298
- EC_TAG_STATS_DOWN_OVERHEAD = 517,
299
- EC_TAG_STATS_TOTAL_SRC_COUNT = 518,
300
- EC_TAG_STATS_BANNED_COUNT = 519,
301
- EC_TAG_STATS_UL_QUEUE_LEN = 520,
302
- EC_TAG_STATS_ED2K_USERS = 521,
303
- EC_TAG_STATS_KAD_USERS = 522,
304
- EC_TAG_STATS_ED2K_FILES = 523,
305
- EC_TAG_STATS_KAD_FILES = 524,
306
- EC_TAG_STATS_LOGGER_MESSAGE = 525,
307
- EC_TAG_STATS_KAD_FIREWALLED_UDP = 526,
308
- EC_TAG_STATS_KAD_INDEXED_SOURCES = 527,
309
- EC_TAG_STATS_KAD_INDEXED_KEYWORDS = 528,
310
- EC_TAG_STATS_KAD_INDEXED_NOTES = 529,
311
- EC_TAG_STATS_KAD_INDEXED_LOAD = 530,
312
- EC_TAG_STATS_KAD_IP_ADRESS = 531,
313
- EC_TAG_STATS_BUDDY_STATUS = 532,
314
- EC_TAG_STATS_BUDDY_IP = 533,
315
- EC_TAG_STATS_BUDDY_PORT = 534,
316
- EC_TAG_STATS_KAD_IN_LAN_MODE = 535,
317
- EC_TAG_STATS_TOTAL_SENT_BYTES = 536,
318
- EC_TAG_STATS_TOTAL_RECEIVED_BYTES = 537,
319
- EC_TAG_STATS_SHARED_FILE_COUNT = 538,
320
- EC_TAG_STATS_KAD_NODES = 539,
321
- EC_TAG_PARTFILE = 768,
322
- EC_TAG_PARTFILE_NAME = 769,
323
- EC_TAG_PARTFILE_PARTMETID = 770,
324
- EC_TAG_PARTFILE_SIZE_FULL = 771,
325
- EC_TAG_PARTFILE_SIZE_XFER = 772,
326
- EC_TAG_PARTFILE_SIZE_XFER_UP = 773,
327
- EC_TAG_PARTFILE_SIZE_DONE = 774,
328
- EC_TAG_PARTFILE_SPEED = 775,
329
- EC_TAG_PARTFILE_STATUS = 776,
330
- EC_TAG_PARTFILE_PRIO = 777,
331
- EC_TAG_PARTFILE_SOURCE_COUNT = 778,
332
- EC_TAG_PARTFILE_SOURCE_COUNT_A4AF = 779,
333
- EC_TAG_PARTFILE_SOURCE_COUNT_NOT_CURRENT = 780,
334
- EC_TAG_PARTFILE_SOURCE_COUNT_XFER = 781,
335
- EC_TAG_PARTFILE_ED2K_LINK = 782,
336
- EC_TAG_PARTFILE_CAT = 783,
337
- EC_TAG_PARTFILE_LAST_RECV = 784,
338
- EC_TAG_PARTFILE_LAST_SEEN_COMP = 785,
339
- EC_TAG_PARTFILE_PART_STATUS = 786,
340
- EC_TAG_PARTFILE_GAP_STATUS = 787,
341
- EC_TAG_PARTFILE_REQ_STATUS = 788,
342
- EC_TAG_PARTFILE_SOURCE_NAMES = 789,
343
- EC_TAG_PARTFILE_COMMENTS = 790,
344
- EC_TAG_PARTFILE_STOPPED = 791,
345
- EC_TAG_PARTFILE_DOWNLOAD_ACTIVE = 792,
346
- EC_TAG_PARTFILE_LOST_CORRUPTION = 793,
347
- EC_TAG_PARTFILE_GAINED_COMPRESSION = 794,
348
- EC_TAG_PARTFILE_SAVED_ICH = 795,
349
- EC_TAG_PARTFILE_SOURCE_NAMES_COUNTS = 796,
350
- EC_TAG_PARTFILE_AVAILABLE_PARTS = 797,
351
- EC_TAG_PARTFILE_HASH = 798,
352
- EC_TAG_PARTFILE_SHARED = 799,
353
- EC_TAG_PARTFILE_HASHED_PART_COUNT = 800,
354
- EC_TAG_PARTFILE_A4AFAUTO = 801,
355
- EC_TAG_PARTFILE_A4AF_SOURCES = 802,
356
- EC_TAG_KNOWNFILE = 1024,
357
- EC_TAG_KNOWNFILE_XFERRED = 1025,
358
- EC_TAG_KNOWNFILE_XFERRED_ALL = 1026,
359
- EC_TAG_KNOWNFILE_REQ_COUNT = 1027,
360
- EC_TAG_KNOWNFILE_REQ_COUNT_ALL = 1028,
361
- EC_TAG_KNOWNFILE_ACCEPT_COUNT = 1029,
362
- EC_TAG_KNOWNFILE_ACCEPT_COUNT_ALL = 1030,
363
- EC_TAG_KNOWNFILE_AICH_MASTERHASH = 1031,
364
- EC_TAG_KNOWNFILE_FILENAME = 1032,
365
- EC_TAG_KNOWNFILE_COMPLETE_SOURCES_LOW = 1033,
366
- EC_TAG_KNOWNFILE_COMPLETE_SOURCES_HIGH = 1034,
367
- EC_TAG_KNOWNFILE_PRIO = 1035,
368
- EC_TAG_KNOWNFILE_ON_QUEUE = 1036,
369
- EC_TAG_KNOWNFILE_COMPLETE_SOURCES = 1037,
370
- EC_TAG_KNOWNFILE_COMMENT = 1038,
371
- EC_TAG_KNOWNFILE_RATING = 1039,
372
- EC_TAG_SERVER = 1280,
373
- EC_TAG_SERVER_NAME = 1281,
374
- EC_TAG_SERVER_DESC = 1282,
375
- EC_TAG_SERVER_ADDRESS = 1283,
376
- EC_TAG_SERVER_PING = 1284,
377
- EC_TAG_SERVER_USERS = 1285,
378
- EC_TAG_SERVER_USERS_MAX = 1286,
379
- EC_TAG_SERVER_FILES = 1287,
380
- EC_TAG_SERVER_PRIO = 1288,
381
- EC_TAG_SERVER_FAILED = 1289,
382
- EC_TAG_SERVER_STATIC = 1290,
383
- EC_TAG_SERVER_VERSION = 1291,
384
- EC_TAG_SERVER_IP = 1292,
385
- EC_TAG_SERVER_PORT = 1293,
386
- EC_TAG_CLIENT = 1536,
387
- EC_TAG_CLIENT_SOFTWARE = 1537,
388
- EC_TAG_CLIENT_SCORE = 1538,
389
- EC_TAG_CLIENT_HASH = 1539,
390
- EC_TAG_CLIENT_FRIEND_SLOT = 1540,
391
- EC_TAG_CLIENT_WAIT_TIME = 1541,
392
- EC_TAG_CLIENT_XFER_TIME = 1542,
393
- EC_TAG_CLIENT_QUEUE_TIME = 1543,
394
- EC_TAG_CLIENT_LAST_TIME = 1544,
395
- EC_TAG_CLIENT_UPLOAD_SESSION = 1545,
396
- EC_TAG_CLIENT_UPLOAD_TOTAL = 1546,
397
- EC_TAG_CLIENT_DOWNLOAD_TOTAL = 1547,
398
- EC_TAG_CLIENT_DOWNLOAD_STATE = 1548,
399
- EC_TAG_CLIENT_UP_SPEED = 1549,
400
- EC_TAG_CLIENT_DOWN_SPEED = 1550,
401
- EC_TAG_CLIENT_FROM = 1551,
402
- EC_TAG_CLIENT_USER_IP = 1552,
403
- EC_TAG_CLIENT_USER_PORT = 1553,
404
- EC_TAG_CLIENT_SERVER_IP = 1554,
405
- EC_TAG_CLIENT_SERVER_PORT = 1555,
406
- EC_TAG_CLIENT_SERVER_NAME = 1556,
407
- EC_TAG_CLIENT_SOFT_VER_STR = 1557,
408
- EC_TAG_CLIENT_WAITING_POSITION = 1558,
409
- EC_TAG_CLIENT_IDENT_STATE = 1559,
410
- EC_TAG_CLIENT_OBFUSCATION_STATUS = 1560,
411
- EC_TAG_CLIENT_CURRENTLYUNUSED1 = 1561,
412
- EC_TAG_CLIENT_REMOTE_QUEUE_RANK = 1562,
413
- EC_TAG_CLIENT_DISABLE_VIEW_SHARED = 1563,
414
- EC_TAG_CLIENT_UPLOAD_STATE = 1564,
415
- EC_TAG_CLIENT_EXT_PROTOCOL = 1565,
416
- EC_TAG_CLIENT_USER_ID = 1566,
417
- EC_TAG_CLIENT_UPLOAD_FILE = 1567,
418
- EC_TAG_CLIENT_REQUEST_FILE = 1568,
419
- EC_TAG_CLIENT_A4AF_FILES = 1569,
420
- EC_TAG_CLIENT_OLD_REMOTE_QUEUE_RANK = 1570,
421
- EC_TAG_CLIENT_KAD_PORT = 1571,
422
- EC_TAG_CLIENT_PART_STATUS = 1572,
423
- EC_TAG_CLIENT_NEXT_REQUESTED_PART = 1573,
424
- EC_TAG_CLIENT_LAST_DOWNLOADING_PART = 1574,
425
- EC_TAG_CLIENT_REMOTE_FILENAME = 1575,
426
- EC_TAG_CLIENT_MOD_VERSION = 1576,
427
- EC_TAG_CLIENT_OS_INFO = 1577,
428
- EC_TAG_CLIENT_AVAILABLE_PARTS = 1578,
429
- EC_TAG_CLIENT_UPLOAD_PART_STATUS = 1579,
430
- EC_TAG_SEARCHFILE = 1792,
431
- EC_TAG_SEARCH_TYPE = 1793,
432
- EC_TAG_SEARCH_NAME = 1794,
433
- EC_TAG_SEARCH_MIN_SIZE = 1795,
434
- EC_TAG_SEARCH_MAX_SIZE = 1796,
435
- EC_TAG_SEARCH_FILE_TYPE = 1797,
436
- EC_TAG_SEARCH_EXTENSION = 1798,
437
- EC_TAG_SEARCH_AVAILABILITY = 1799,
438
- EC_TAG_SEARCH_STATUS = 1800,
439
- EC_TAG_SEARCH_PARENT = 1801,
440
- EC_TAG_FRIEND = 2048,
441
- EC_TAG_FRIEND_NAME = 2049,
442
- EC_TAG_FRIEND_HASH = 2050,
443
- EC_TAG_FRIEND_IP = 2051,
444
- EC_TAG_FRIEND_PORT = 2052,
445
- EC_TAG_FRIEND_CLIENT = 2053,
446
- EC_TAG_FRIEND_ADD = 2054,
447
- EC_TAG_FRIEND_REMOVE = 2055,
448
- EC_TAG_FRIEND_FRIENDSLOT = 2056,
449
- EC_TAG_FRIEND_SHARED = 2057,
450
- EC_TAG_SELECT_PREFS = 4096,
451
- EC_TAG_PREFS_CATEGORIES = 4352,
452
- EC_TAG_CATEGORY = 4353,
453
- EC_TAG_CATEGORY_TITLE = 4354,
454
- EC_TAG_CATEGORY_PATH = 4355,
455
- EC_TAG_CATEGORY_COMMENT = 4356,
456
- EC_TAG_CATEGORY_COLOR = 4357,
457
- EC_TAG_CATEGORY_PRIO = 4358,
458
- EC_TAG_PREFS_GENERAL = 4608,
459
- EC_TAG_USER_NICK = 4609,
460
- EC_TAG_USER_HASH = 4610,
461
- EC_TAG_USER_HOST = 4611,
462
- EC_TAG_GENERAL_CHECK_NEW_VERSION = 4612,
463
- EC_TAG_PREFS_CONNECTIONS = 4864,
464
- EC_TAG_CONN_DL_CAP = 4865,
465
- EC_TAG_CONN_UL_CAP = 4866,
466
- EC_TAG_CONN_MAX_DL = 4867,
467
- EC_TAG_CONN_MAX_UL = 4868,
468
- EC_TAG_CONN_SLOT_ALLOCATION = 4869,
469
- EC_TAG_CONN_TCP_PORT = 4870,
470
- EC_TAG_CONN_UDP_PORT = 4871,
471
- EC_TAG_CONN_UDP_DISABLE = 4872,
472
- EC_TAG_CONN_MAX_FILE_SOURCES = 4873,
473
- EC_TAG_CONN_MAX_CONN = 4874,
474
- EC_TAG_CONN_AUTOCONNECT = 4875,
475
- EC_TAG_CONN_RECONNECT = 4876,
476
- EC_TAG_NETWORK_ED2K = 4877,
477
- EC_TAG_NETWORK_KADEMLIA = 4878,
478
- EC_TAG_PREFS_MESSAGEFILTER = 5120,
479
- EC_TAG_MSGFILTER_ENABLED = 5121,
480
- EC_TAG_MSGFILTER_ALL = 5122,
481
- EC_TAG_MSGFILTER_FRIENDS = 5123,
482
- EC_TAG_MSGFILTER_SECURE = 5124,
483
- EC_TAG_MSGFILTER_BY_KEYWORD = 5125,
484
- EC_TAG_MSGFILTER_KEYWORDS = 5126,
485
- EC_TAG_PREFS_REMOTECTRL = 5376,
486
- EC_TAG_WEBSERVER_AUTORUN = 5377,
487
- EC_TAG_WEBSERVER_PORT = 5378,
488
- EC_TAG_WEBSERVER_GUEST = 5379,
489
- EC_TAG_WEBSERVER_USEGZIP = 5380,
490
- EC_TAG_WEBSERVER_REFRESH = 5381,
491
- EC_TAG_WEBSERVER_TEMPLATE = 5382,
492
- EC_TAG_PREFS_ONLINESIG = 5632,
493
- EC_TAG_ONLINESIG_ENABLED = 5633,
494
- EC_TAG_PREFS_SERVERS = 5888,
495
- EC_TAG_SERVERS_REMOVE_DEAD = 5889,
496
- EC_TAG_SERVERS_DEAD_SERVER_RETRIES = 5890,
497
- EC_TAG_SERVERS_AUTO_UPDATE = 5891,
498
- EC_TAG_SERVERS_URL_LIST = 5892,
499
- EC_TAG_SERVERS_ADD_FROM_SERVER = 5893,
500
- EC_TAG_SERVERS_ADD_FROM_CLIENT = 5894,
501
- EC_TAG_SERVERS_USE_SCORE_SYSTEM = 5895,
502
- EC_TAG_SERVERS_SMART_ID_CHECK = 5896,
503
- EC_TAG_SERVERS_SAFE_SERVER_CONNECT = 5897,
504
- EC_TAG_SERVERS_AUTOCONN_STATIC_ONLY = 5898,
505
- EC_TAG_SERVERS_MANUAL_HIGH_PRIO = 5899,
506
- EC_TAG_SERVERS_UPDATE_URL = 5900,
507
- EC_TAG_PREFS_FILES = 6144,
508
- EC_TAG_FILES_ICH_ENABLED = 6145,
509
- EC_TAG_FILES_AICH_TRUST = 6146,
510
- EC_TAG_FILES_NEW_PAUSED = 6147,
511
- EC_TAG_FILES_NEW_AUTO_DL_PRIO = 6148,
512
- EC_TAG_FILES_PREVIEW_PRIO = 6149,
513
- EC_TAG_FILES_NEW_AUTO_UL_PRIO = 6150,
514
- EC_TAG_FILES_UL_FULL_CHUNKS = 6151,
515
- EC_TAG_FILES_START_NEXT_PAUSED = 6152,
516
- EC_TAG_FILES_RESUME_SAME_CAT = 6153,
517
- EC_TAG_FILES_SAVE_SOURCES = 6154,
518
- EC_TAG_FILES_EXTRACT_METADATA = 6155,
519
- EC_TAG_FILES_ALLOC_FULL_SIZE = 6156,
520
- EC_TAG_FILES_CHECK_FREE_SPACE = 6157,
521
- EC_TAG_FILES_MIN_FREE_SPACE = 6158,
522
- EC_TAG_FILES_CREATE_NORMAL = 6159,
523
- EC_TAG_PREFS_DIRECTORIES = 6656,
524
- EC_TAG_DIRECTORIES_INCOMING = 6657,
525
- EC_TAG_DIRECTORIES_TEMP = 6658,
526
- EC_TAG_DIRECTORIES_SHARED = 6659,
527
- EC_TAG_DIRECTORIES_SHARE_HIDDEN = 6660,
528
- EC_TAG_PREFS_STATISTICS = 6912,
529
- EC_TAG_STATSGRAPH_WIDTH = 6913,
530
- EC_TAG_STATSGRAPH_SCALE = 6914,
531
- EC_TAG_STATSGRAPH_LAST = 6915,
532
- EC_TAG_STATSGRAPH_DATA = 6916,
533
- EC_TAG_STATTREE_CAPPING = 6917,
534
- EC_TAG_STATTREE_NODE = 6918,
535
- EC_TAG_STAT_NODE_VALUE = 6919,
536
- EC_TAG_STAT_VALUE_TYPE = 6920,
537
- EC_TAG_STATTREE_NODEID = 6921,
538
- EC_TAG_PREFS_SECURITY = 7168,
539
- EC_TAG_SECURITY_CAN_SEE_SHARES = 7169,
540
- EC_TAG_IPFILTER_CLIENTS = 7170,
541
- EC_TAG_IPFILTER_SERVERS = 7171,
542
- EC_TAG_IPFILTER_AUTO_UPDATE = 7172,
543
- EC_TAG_IPFILTER_UPDATE_URL = 7173,
544
- EC_TAG_IPFILTER_LEVEL = 7174,
545
- EC_TAG_IPFILTER_FILTER_LAN = 7175,
546
- EC_TAG_SECURITY_USE_SECIDENT = 7176,
547
- EC_TAG_SECURITY_OBFUSCATION_SUPPORTED = 7177,
548
- EC_TAG_SECURITY_OBFUSCATION_REQUESTED = 7178,
549
- EC_TAG_SECURITY_OBFUSCATION_REQUIRED = 7179,
550
- EC_TAG_PREFS_CORETWEAKS = 7424,
551
- EC_TAG_CORETW_MAX_CONN_PER_FIVE = 7425,
552
- EC_TAG_CORETW_VERBOSE = 7426,
553
- EC_TAG_CORETW_FILEBUFFER = 7427,
554
- EC_TAG_CORETW_UL_QUEUE = 7428,
555
- EC_TAG_CORETW_SRV_KEEPALIVE_TIMEOUT = 7429,
556
- EC_TAG_PREFS_KADEMLIA = 7680,
557
- EC_TAG_KADEMLIA_UPDATE_URL = 7681,
558
- EC_TAG_UNKNOWN = 65535
559
- }
560
- declare enum ECDetailLevel {
561
- EC_DETAIL_CMD = 0,
562
- EC_DETAIL_WEB = 1,
563
- EC_DETAIL_FULL = 2,
564
- EC_DETAIL_UPDATE = 3,
565
- EC_DETAIL_INC_UPDATE = 4
566
- }
567
- declare enum ECSearchType {
568
- EC_SEARCH_LOCAL = 0,
569
- EC_SEARCH_GLOBAL = 1,
570
- EC_SEARCH_KAD = 2,
571
- EC_SEARCH_WEB = 3
572
- }
573
- declare enum EcPrefs {
574
- EC_PREFS_CATEGORIES = 1,
575
- EC_PREFS_GENERAL = 2,
576
- EC_PREFS_CONNECTIONS = 4,
577
- EC_PREFS_MESSAGEFILTER = 8,
578
- EC_PREFS_REMOTECONTROLS = 16,
579
- EC_PREFS_ONLINESIG = 32,
580
- EC_PREFS_SERVERS = 64,
581
- EC_PREFS_FILES = 128,
582
- EC_PREFS_DIRECTORIES = 512,
583
- EC_PREFS_STATISTICS = 1024,
584
- EC_PREFS_SECURITY = 2048,
585
- EC_PREFS_CORETWEAKS = 4096,
586
- EC_PREFS_KADEMLIA = 8192
587
- }
588
- declare enum ECTagType {
589
- EC_TAGTYPE_UNKNOWN = 0,
590
- EC_TAGTYPE_CUSTOM = 1,
591
- EC_TAGTYPE_UINT8 = 2,
592
- EC_TAGTYPE_UINT16 = 3,
593
- EC_TAGTYPE_UINT32 = 4,
594
- EC_TAGTYPE_UINT64 = 5,
595
- EC_TAGTYPE_STRING = 6,
596
- EC_TAGTYPE_DOUBLE = 7,
597
- EC_TAGTYPE_IPV4 = 8,
598
- EC_TAGTYPE_HASH16 = 9,
599
- EC_TAGTYPE_UINT128 = 10
600
- }
601
-
602
- /**
603
- * Main aMule EC Client
604
- */
605
-
606
- interface AmuleClientOptions {
607
- host: string;
608
- port: number;
609
- password: string;
610
- timeout?: number;
611
- }
612
- interface StatsResponse {
613
- id: number;
614
- ed2kId: number;
615
- kadId?: string;
616
- connectedServer?: {
617
- name?: string;
618
- description?: string;
619
- ip: string;
620
- port: number;
621
- };
622
- connectionState?: any;
623
- uploadOverhead: number;
624
- downloadOverhead: number;
625
- bannedCount: number;
626
- loggerMessage: string[];
627
- totalSentBytes: number;
628
- totalReceivedBytes: number;
629
- sharedFileCount: number;
630
- uploadSpeed: number;
631
- downloadSpeed: number;
632
- uploadSpeedLimit: number;
633
- downloadSpeedLimit: number;
634
- uploadQueueLength: number;
635
- totalSourceCount: number;
636
- ed2kUsers: number;
637
- kadUsers: number;
638
- ed2kFiles: number;
639
- kadFiles: number;
640
- kadNodes: number;
641
- }
642
- interface SearchResultsResponse {
643
- files: {
644
- fileName: string;
645
- hash: Buffer;
646
- sizeFull: number;
647
- downloadStatus: number;
648
- completeSourceCount: number;
649
- sourceCount: number;
650
- }[];
651
- }
652
- interface UpdateResponse {
653
- sharedFiles: AmuleFile[];
654
- downloadQueue: AmuleTransferringFile[];
655
- clients: AmuleUpDownClient[];
656
- servers: AmuleServer[];
657
- friends: AmuleFriend[];
658
- }
659
- declare class AmuleClient {
660
- private connection;
661
- constructor(options: AmuleClientOptions);
662
- /**
663
- * Reconnect to the server
664
- */
665
- reconnect(): Promise<void>;
666
- /**
667
- * Get server statistics
668
- */
669
- getStats(): Promise<StatsResponse>;
670
- /**
671
- * Get incremental updates for files, clients, servers, and friends
672
- */
673
- getUpdate(detailLevel?: ECDetailLevel): Promise<UpdateResponse>;
674
- /**
675
- * Start an asynchronous search
676
- */
677
- searchAsync(query: string, searchType?: SearchType, filters?: SearchFilters): Promise<string>;
678
- /**
679
- * Get search status (0-1)
680
- */
681
- searchStatus(): Promise<number>;
682
- /**
683
- * Get search results
684
- */
685
- searchResults(): Promise<SearchResultsResponse>;
686
- /**
687
- * Perform a synchronous search (waits for results)
688
- */
689
- searchSync(query: string, searchType?: SearchType, filters?: SearchFilters, timeout?: number): Promise<SearchResultsResponse>;
690
- /**
691
- * Stop current search
692
- */
693
- searchStop(): Promise<void>;
694
- /**
695
- * Download a file from search results
696
- */
697
- downloadSearchResult(hash: Buffer): Promise<void>;
698
- /**
699
- * Download from an ed2k link
700
- */
701
- downloadEd2kLink(link: string): Promise<void>;
702
- /**
703
- * Get download queue
704
- */
705
- getDownloadQueue(): Promise<AmuleTransferringFile[]>;
706
- /**
707
- * Get shared files
708
- */
709
- getSharedFiles(): Promise<AmuleFile[]>;
710
- /**
711
- * Reload shared files list
712
- */
713
- reloadSharedFiles(): Promise<void>;
714
- /**
715
- * Get client upload/download queue (clients we are uploading to/downloading from)
716
- */
717
- getClientQueue(): Promise<AmuleUpDownClient[]>;
718
- /**
719
- * Get the list of servers
720
- */
721
- getServerList(): Promise<AmuleServer[]>;
722
- /**
723
- * Connect to a specific server
724
- */
725
- connectToServer(ip?: string, port?: number): Promise<void>;
726
- /**
727
- * Disconnect from the current server
728
- */
729
- disconnectFromServer(): Promise<void>;
730
- /**
731
- * Create a category
732
- */
733
- createCategory(category: AmuleCategory): Promise<void>;
734
- /**
735
- * Update a category
736
- */
737
- updateCategory(id: number, category: AmuleCategory): Promise<void>;
738
- /**
739
- * Delete a category
740
- */
741
- deleteCategory(id: number): Promise<void>;
742
- /**
743
- * Get all categories
744
- */
745
- getCategories(): Promise<AmuleCategory[]>;
746
- /**
747
- * Set file category
748
- */
749
- setFileCategory(hash: Buffer, categoryId: number): Promise<void>;
750
- /**
751
- * Send a download command (PAUSE, RESUME, STOP, DELETE, etc.)
752
- */
753
- sendDownloadCommand(hash: Buffer, command: DownloadCommand): Promise<void>;
754
- /**
755
- * Pause a download
756
- */
757
- pauseDownload(hash: Buffer): Promise<void>;
758
- /**
759
- * Resume a download
760
- */
761
- resumeDownload(hash: Buffer): Promise<void>;
762
- /**
763
- * Stop a download
764
- */
765
- stopDownload(hash: Buffer): Promise<void>;
766
- /**
767
- * Delete a download
768
- */
769
- deleteDownload(hash: Buffer): Promise<void>;
770
- }
771
-
772
- declare class AmuleException extends Error {
773
- cause?: Error | undefined;
774
- constructor(message: string, cause?: Error | undefined);
775
- }
776
- declare class InvalidECException extends AmuleException {
777
- constructor(message: string, cause?: Error);
778
- }
779
- declare class CommunicationException extends AmuleException {
780
- constructor(message: string, cause?: Error);
781
- }
782
- declare class ServerException extends AmuleException {
783
- constructor(message: string, cause?: Error);
784
- }
785
-
786
- /**
787
- * Packet flags for EC protocol
788
- */
789
- declare class Flags {
790
- private static readonly FLAG_ACCEPTS;
791
- private static readonly FLAG_ZLIB;
792
- private static readonly FLAG_UTF8_NUMBERS;
793
- private static readonly FLAG_ALWAYS_SET;
794
- private readonly flags;
795
- constructor(flags?: number);
796
- /**
797
- * Create flags from buffer
798
- */
799
- static fromBuffer(buffer: Buffer, offset?: number): Flags;
800
- /**
801
- * Write flags to buffer
802
- */
803
- writeToBuffer(buffer: Buffer, offset?: number): void;
804
- /**
805
- * Check if UTF-8 number encoding is supported/accepted
806
- */
807
- isUtf8NumbersAccepted(): boolean;
808
- /**
809
- * Check if ZLIB compression is supported/accepted
810
- */
811
- isZlibAccepted(): boolean;
812
- /**
813
- * Check if UTF-8 number encoding is used
814
- */
815
- isUtf8Numbers(): boolean;
816
- /**
817
- * Check if ZLIB compression is used
818
- */
819
- isZlib(): boolean;
820
- /**
821
- * Create flags accepting UTF-8 numbers and ZLIB
822
- */
823
- static accept(): Flags;
824
- /**
825
- * Create flags using UTF-8 numbers
826
- */
827
- static useUtf8Numbers(): Flags;
828
- /**
829
- * Create flags without UTF-8 numbers (required for search)
830
- */
831
- static noUtf8(): Flags;
832
- /**
833
- * Create flags using ZLIB compression
834
- */
835
- static useZlib(): Flags;
836
- /**
837
- * Get numeric value of flags
838
- */
839
- getValue(): number;
840
- }
841
-
842
- interface NumericTag {
843
- getShort(): number;
844
- getInt(): number;
845
- getLong(): bigint;
846
- getValue(): number | bigint;
847
- }
848
- declare abstract class Tag<T> {
849
- readonly name: ECTagName;
850
- readonly type: ECTagType;
851
- readonly nameValue: number;
852
- protected value: T;
853
- nestedTags?: Tag<any>[];
854
- constructor(name: ECTagName, type: ECTagType, nestedTags?: Tag<any>[], nameValue?: number);
855
- abstract parseValue(value: Buffer): void;
856
- abstract encodeValue(): Buffer;
857
- getValue(): T;
858
- protected setValue(value: T): void;
859
- }
860
- declare class CustomTag extends Tag<Buffer> {
861
- constructor(name: ECTagName, value?: Buffer, subtags?: Tag<any>[], nameValue?: number);
862
- parseValue(value: Buffer): void;
863
- encodeValue(): Buffer;
864
- }
865
- declare class UByteTag extends Tag<number> implements NumericTag {
866
- constructor(name: ECTagName, value?: number, subtags?: Tag<any>[], nameValue?: number);
867
- static withValue(name: ECTagName, value: number, subtags?: Tag<any>[]): UByteTag;
868
- parseValue(value: Buffer): void;
869
- encodeValue(): Buffer;
870
- getShort(): number;
871
- getInt(): number;
872
- getLong(): bigint;
873
- }
874
- declare class UShortTag extends Tag<number> implements NumericTag {
875
- constructor(name: ECTagName, value?: number, subtags?: Tag<any>[], nameValue?: number);
876
- static withValue(name: ECTagName, value: number, subtags?: Tag<any>[]): UShortTag;
877
- parseValue(value: Buffer): void;
878
- encodeValue(): Buffer;
879
- getShort(): number;
880
- getInt(): number;
881
- getLong(): bigint;
882
- }
883
- declare class UIntTag extends Tag<number> implements NumericTag {
884
- constructor(name: ECTagName, value?: number, subtags?: Tag<any>[], nameValue?: number);
885
- static withValue(name: ECTagName, value: number, subtags?: Tag<any>[]): UIntTag;
886
- parseValue(value: Buffer): void;
887
- encodeValue(): Buffer;
888
- getShort(): number;
889
- getInt(): number;
890
- getLong(): bigint;
891
- }
892
- declare class ULongTag extends Tag<bigint> implements NumericTag {
893
- constructor(name: ECTagName, value?: bigint, subtags?: Tag<any>[], nameValue?: number);
894
- static withValue(name: ECTagName, value: bigint, subtags?: Tag<any>[]): ULongTag;
895
- parseValue(value: Buffer): void;
896
- encodeValue(): Buffer;
897
- getShort(): number;
898
- getInt(): number;
899
- getLong(): bigint;
900
- }
901
- declare class UInt128Tag extends Tag<bigint> {
902
- constructor(name: ECTagName, value?: bigint, subtags?: Tag<any>[], nameValue?: number);
903
- static withValue(name: ECTagName, value: bigint, subtags?: Tag<any>[]): UInt128Tag;
904
- parseValue(value: Buffer): void;
905
- encodeValue(): Buffer;
906
- }
907
- declare class StringTag extends Tag<string> {
908
- constructor(name: ECTagName, value?: string, subtags?: Tag<any>[], nameValue?: number);
909
- static withValue(name: ECTagName, value: string, subtags?: Tag<any>[]): StringTag;
910
- parseValue(value: Buffer): void;
911
- encodeValue(): Buffer;
912
- }
913
- declare class DoubleTag extends Tag<number> {
914
- constructor(name: ECTagName, value?: number, subtags?: Tag<any>[], nameValue?: number);
915
- static withValue(name: ECTagName, value: number, subtags?: Tag<any>[]): DoubleTag;
916
- parseValue(value: Buffer): void;
917
- encodeValue(): Buffer;
918
- }
919
- interface Ipv4Value {
920
- address: string;
921
- port: number;
922
- }
923
- declare class Ipv4Tag extends Tag<Ipv4Value> {
924
- constructor(name: ECTagName, value?: Ipv4Value, subtags?: Tag<any>[], nameValue?: number);
925
- static withValue(name: ECTagName, value: Ipv4Value, subtags?: Tag<any>[]): Ipv4Tag;
926
- parseValue(value: Buffer): void;
927
- encodeValue(): Buffer;
928
- }
929
- declare class Hash16Tag extends Tag<Buffer> {
930
- constructor(name: ECTagName, value?: Buffer, subtags?: Tag<any>[], nameValue?: number);
931
- static withValue(name: ECTagName, value: Buffer, subtags?: Tag<any>[]): Hash16Tag;
932
- parseValue(value: Buffer): void;
933
- encodeValue(): Buffer;
934
- }
935
-
936
- /**
937
- * EC Packet structure
938
- */
939
-
940
- declare class Packet {
941
- readonly opCode: ECOpCode;
942
- readonly flags: Flags;
943
- readonly tags: Tag<any>[];
944
- private static readonly EC_CURRENT_PROTOCOL_VERSION;
945
- constructor(opCode: ECOpCode, flags?: Flags, tags?: Tag<any>[]);
946
- /**
947
- * Add a tag to the packet
948
- */
949
- addTag(tag: Tag<any>): this;
950
- /**
951
- * Add multiple tags to the packet
952
- */
953
- addTags(tags: Tag<any>[]): this;
954
- /**
955
- * Get protocol version
956
- */
957
- static getProtocolVersion(): number;
958
- /**
959
- * Find a tag by name
960
- */
961
- findTag(tagName: number): Tag<any> | undefined;
962
- /**
963
- * Get all tags with a specific name
964
- */
965
- findAllTags(tagName: number): Tag<any>[];
966
- /**
967
- * Check if packet has a specific tag
968
- */
969
- hasTag(tagName: number): boolean;
970
- }
971
-
972
- /**
973
- * Packet Writer - Serializes EC packets to binary data
974
- */
975
-
976
- declare class PacketWriter {
977
- private static readonly HEADER_SIZE;
978
- /**
979
- * Write a packet to a buffer
980
- */
981
- static write(packet: Packet): Buffer;
982
- /**
983
- * Encode packet data (before compression)
984
- */
985
- private static encodePacketData;
986
- /**
987
- * Compress data with ZLIB
988
- */
989
- private static compress;
990
- }
991
-
992
- /**
993
- * Packet Parser - Deserializes EC packets from binary data
994
- */
995
-
996
- declare class PacketParser {
997
- private static readonly HEADER_SIZE;
998
- /**
999
- * Parse a packet from a buffer
1000
- */
1001
- static parse(buffer: Buffer): Packet;
1002
- /**
1003
- * Parse packet data (after decompression)
1004
- */
1005
- private static parsePacketData;
1006
- /**
1007
- * Decompress ZLIB data
1008
- */
1009
- private static decompress;
1010
- /**
1011
- * Calculate expected packet size from header
1012
- */
1013
- static getExpectedPacketSize(headerBuffer: Buffer): number;
1014
- /**
1015
- * Check if buffer contains a complete packet
1016
- */
1017
- static hasCompletePacket(buffer: Buffer): boolean;
1018
- }
1019
-
1020
- export { type AmuleCategory, AmuleClient, type AmuleClientOptions, AmuleException, type AmuleFile, type AmuleFriend, type AmuleServer, type AmuleTransferringFile, type AmuleUpDownClient, CommunicationException, type ConnectionState, CustomTag, DoubleTag, DownloadCommand, ECDetailLevel, ECOpCode, ECSearchType, ECTagName, EcPrefs, FileStatus, Flags, Hash16Tag, InvalidECException, Ipv4Tag, Packet, PacketParser, PacketWriter, ProtocolVersion, SearchFileDownloadStatus, type SearchFilters, type SearchResultsResponse, SearchType, ServerException, type StatsResponse, StringTag, Tag, UByteTag, UInt128Tag, UIntTag, ULongTag, UShortTag, type UpdateResponse };