@kissesses/xtls-sdk 0.16.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 (369) hide show
  1. package/LICENCE +661 -0
  2. package/README.md +217 -0
  3. package/build/index.d.ts +17 -0
  4. package/build/index.d.ts.map +1 -0
  5. package/build/index.js +19 -0
  6. package/build/src/common/errors/handler/handler.errors.d.ts +23 -0
  7. package/build/src/common/errors/handler/handler.errors.d.ts.map +1 -0
  8. package/build/src/common/errors/handler/handler.errors.js +22 -0
  9. package/build/src/common/errors/handler/index.d.ts +2 -0
  10. package/build/src/common/errors/handler/index.d.ts.map +1 -0
  11. package/build/src/common/errors/handler/index.js +17 -0
  12. package/build/src/common/errors/index.d.ts +3 -0
  13. package/build/src/common/errors/index.d.ts.map +1 -0
  14. package/build/src/common/errors/index.js +18 -0
  15. package/build/src/common/errors/router/index.d.ts +2 -0
  16. package/build/src/common/errors/router/index.d.ts.map +1 -0
  17. package/build/src/common/errors/router/index.js +17 -0
  18. package/build/src/common/errors/router/router.errors.d.ts +15 -0
  19. package/build/src/common/errors/router/router.errors.d.ts.map +1 -0
  20. package/build/src/common/errors/router/router.errors.js +14 -0
  21. package/build/src/common/errors/stats/index.d.ts +2 -0
  22. package/build/src/common/errors/stats/index.d.ts.map +1 -0
  23. package/build/src/common/errors/stats/index.js +17 -0
  24. package/build/src/common/errors/stats/stats.errors.d.ts +43 -0
  25. package/build/src/common/errors/stats/stats.errors.d.ts.map +1 -0
  26. package/build/src/common/errors/stats/stats.errors.js +42 -0
  27. package/build/src/common/types/index.d.ts +2 -0
  28. package/build/src/common/types/index.d.ts.map +1 -0
  29. package/build/src/common/types/index.js +17 -0
  30. package/build/src/common/types/sdk-response.d.ts +6 -0
  31. package/build/src/common/types/sdk-response.d.ts.map +1 -0
  32. package/build/src/common/types/sdk-response.js +2 -0
  33. package/build/src/common/utils/create-typed-message/create-typed-message.d.ts +5 -0
  34. package/build/src/common/utils/create-typed-message/create-typed-message.d.ts.map +1 -0
  35. package/build/src/common/utils/create-typed-message/create-typed-message.js +10 -0
  36. package/build/src/common/utils/decode-user/constants/account-types.d.ts +39 -0
  37. package/build/src/common/utils/decode-user/constants/account-types.d.ts.map +1 -0
  38. package/build/src/common/utils/decode-user/constants/account-types.js +65 -0
  39. package/build/src/common/utils/decode-user/constants/index.d.ts +2 -0
  40. package/build/src/common/utils/decode-user/constants/index.d.ts.map +1 -0
  41. package/build/src/common/utils/decode-user/constants/index.js +17 -0
  42. package/build/src/common/utils/decode-user/decode-user.d.ts +37 -0
  43. package/build/src/common/utils/decode-user/decode-user.d.ts.map +1 -0
  44. package/build/src/common/utils/decode-user/decode-user.js +55 -0
  45. package/build/src/common/utils/decode-user/types/account-type-keys.type.d.ts +3 -0
  46. package/build/src/common/utils/decode-user/types/account-type-keys.type.d.ts.map +1 -0
  47. package/build/src/common/utils/decode-user/types/account-type-keys.type.js +2 -0
  48. package/build/src/common/utils/decode-user/types/account-type-mapping.type.d.ts +4 -0
  49. package/build/src/common/utils/decode-user/types/account-type-mapping.type.d.ts.map +1 -0
  50. package/build/src/common/utils/decode-user/types/account-type-mapping.type.js +2 -0
  51. package/build/src/common/utils/decode-user/types/decoded-user.type.d.ts +18 -0
  52. package/build/src/common/utils/decode-user/types/decoded-user.type.d.ts.map +1 -0
  53. package/build/src/common/utils/decode-user/types/decoded-user.type.js +2 -0
  54. package/build/src/common/utils/decode-user/types/index.d.ts +4 -0
  55. package/build/src/common/utils/decode-user/types/index.d.ts.map +1 -0
  56. package/build/src/common/utils/decode-user/types/index.js +19 -0
  57. package/build/src/handler/handler.service.d.ts +155 -0
  58. package/build/src/handler/handler.service.d.ts.map +1 -0
  59. package/build/src/handler/handler.service.js +523 -0
  60. package/build/src/handler/interfaces/add-user/add-http-user.interface.d.ts +8 -0
  61. package/build/src/handler/interfaces/add-user/add-http-user.interface.d.ts.map +1 -0
  62. package/build/src/handler/interfaces/add-user/add-http-user.interface.js +2 -0
  63. package/build/src/handler/interfaces/add-user/add-hysteria-user.interface.d.ts +7 -0
  64. package/build/src/handler/interfaces/add-user/add-hysteria-user.interface.d.ts.map +1 -0
  65. package/build/src/handler/interfaces/add-user/add-hysteria-user.interface.js +2 -0
  66. package/build/src/handler/interfaces/add-user/add-shadowsocks-user.interface.d.ts +10 -0
  67. package/build/src/handler/interfaces/add-user/add-shadowsocks-user.interface.d.ts.map +1 -0
  68. package/build/src/handler/interfaces/add-user/add-shadowsocks-user.interface.js +2 -0
  69. package/build/src/handler/interfaces/add-user/add-shadowsocks2022-user.interface.d.ts +7 -0
  70. package/build/src/handler/interfaces/add-user/add-shadowsocks2022-user.interface.d.ts.map +1 -0
  71. package/build/src/handler/interfaces/add-user/add-shadowsocks2022-user.interface.js +2 -0
  72. package/build/src/handler/interfaces/add-user/add-socks-user.interface.d.ts +8 -0
  73. package/build/src/handler/interfaces/add-user/add-socks-user.interface.d.ts.map +1 -0
  74. package/build/src/handler/interfaces/add-user/add-socks-user.interface.js +2 -0
  75. package/build/src/handler/interfaces/add-user/add-trojan-user.interface.d.ts +7 -0
  76. package/build/src/handler/interfaces/add-user/add-trojan-user.interface.d.ts.map +1 -0
  77. package/build/src/handler/interfaces/add-user/add-trojan-user.interface.js +2 -0
  78. package/build/src/handler/interfaces/add-user/add-vless-user.interface.d.ts +8 -0
  79. package/build/src/handler/interfaces/add-user/add-vless-user.interface.d.ts.map +1 -0
  80. package/build/src/handler/interfaces/add-user/add-vless-user.interface.js +2 -0
  81. package/build/src/handler/interfaces/add-user/add-wireguard-user.interface.d.ts +8 -0
  82. package/build/src/handler/interfaces/add-user/add-wireguard-user.interface.d.ts.map +1 -0
  83. package/build/src/handler/interfaces/add-user/add-wireguard-user.interface.js +2 -0
  84. package/build/src/handler/interfaces/add-user/index.d.ts +9 -0
  85. package/build/src/handler/interfaces/add-user/index.d.ts.map +1 -0
  86. package/build/src/handler/interfaces/add-user/index.js +24 -0
  87. package/build/src/handler/interfaces/index.d.ts +2 -0
  88. package/build/src/handler/interfaces/index.d.ts.map +1 -0
  89. package/build/src/handler/interfaces/index.js +17 -0
  90. package/build/src/handler/models/add-user/add-user.response.model.d.ts +5 -0
  91. package/build/src/handler/models/add-user/add-user.response.model.d.ts.map +1 -0
  92. package/build/src/handler/models/add-user/add-user.response.model.js +9 -0
  93. package/build/src/handler/models/add-user/index.d.ts +2 -0
  94. package/build/src/handler/models/add-user/index.d.ts.map +1 -0
  95. package/build/src/handler/models/add-user/index.js +17 -0
  96. package/build/src/handler/models/get-inbound-users/get-inbound-users.response.model.d.ts +7 -0
  97. package/build/src/handler/models/get-inbound-users/get-inbound-users.response.model.d.ts.map +1 -0
  98. package/build/src/handler/models/get-inbound-users/get-inbound-users.response.model.js +10 -0
  99. package/build/src/handler/models/get-inbound-users/index.d.ts +2 -0
  100. package/build/src/handler/models/get-inbound-users/index.d.ts.map +1 -0
  101. package/build/src/handler/models/get-inbound-users/index.js +17 -0
  102. package/build/src/handler/models/index.d.ts +4 -0
  103. package/build/src/handler/models/index.d.ts.map +1 -0
  104. package/build/src/handler/models/index.js +19 -0
  105. package/build/src/handler/models/remove-user/index.d.ts +2 -0
  106. package/build/src/handler/models/remove-user/index.d.ts.map +1 -0
  107. package/build/src/handler/models/remove-user/index.js +17 -0
  108. package/build/src/handler/models/remove-user/remove-user.response.model.d.ts +5 -0
  109. package/build/src/handler/models/remove-user/remove-user.response.model.d.ts.map +1 -0
  110. package/build/src/handler/models/remove-user/remove-user.response.model.js +9 -0
  111. package/build/src/router/interfaces/index.d.ts +2 -0
  112. package/build/src/router/interfaces/index.d.ts.map +1 -0
  113. package/build/src/router/interfaces/index.js +17 -0
  114. package/build/src/router/interfaces/remove-rule-by-rule-tag.interface.d.ts +4 -0
  115. package/build/src/router/interfaces/remove-rule-by-rule-tag.interface.d.ts.map +1 -0
  116. package/build/src/router/interfaces/remove-rule-by-rule-tag.interface.js +2 -0
  117. package/build/src/router/models/index.d.ts +2 -0
  118. package/build/src/router/models/index.d.ts.map +1 -0
  119. package/build/src/router/models/index.js +17 -0
  120. package/build/src/router/models/remove-rule-by-rule-tag/index.d.ts +2 -0
  121. package/build/src/router/models/remove-rule-by-rule-tag/index.d.ts.map +1 -0
  122. package/build/src/router/models/remove-rule-by-rule-tag/index.js +17 -0
  123. package/build/src/router/models/remove-rule-by-rule-tag/remove-rule-by-rule-tag.response.model.d.ts +5 -0
  124. package/build/src/router/models/remove-rule-by-rule-tag/remove-rule-by-rule-tag.response.model.d.ts.map +1 -0
  125. package/build/src/router/models/remove-rule-by-rule-tag/remove-rule-by-rule-tag.response.model.js +9 -0
  126. package/build/src/router/router.service.d.ts +31 -0
  127. package/build/src/router/router.service.d.ts.map +1 -0
  128. package/build/src/router/router.service.js +56 -0
  129. package/build/src/stats/models/get-all-inbounds-stats/get-all-inbounds-stats.response.model.d.ts +21 -0
  130. package/build/src/stats/models/get-all-inbounds-stats/get-all-inbounds-stats.response.model.d.ts.map +1 -0
  131. package/build/src/stats/models/get-all-inbounds-stats/get-all-inbounds-stats.response.model.js +42 -0
  132. package/build/src/stats/models/get-all-inbounds-stats/index.d.ts +2 -0
  133. package/build/src/stats/models/get-all-inbounds-stats/index.d.ts.map +1 -0
  134. package/build/src/stats/models/get-all-inbounds-stats/index.js +17 -0
  135. package/build/src/stats/models/get-all-inbounds-stats/interfaces/inbound.interface.d.ts +6 -0
  136. package/build/src/stats/models/get-all-inbounds-stats/interfaces/inbound.interface.d.ts.map +1 -0
  137. package/build/src/stats/models/get-all-inbounds-stats/interfaces/inbound.interface.js +2 -0
  138. package/build/src/stats/models/get-all-inbounds-stats/interfaces/index.d.ts +2 -0
  139. package/build/src/stats/models/get-all-inbounds-stats/interfaces/index.d.ts.map +1 -0
  140. package/build/src/stats/models/get-all-inbounds-stats/interfaces/index.js +17 -0
  141. package/build/src/stats/models/get-all-outbounds-stats/get-all-outbounds-stats.response.model.d.ts +21 -0
  142. package/build/src/stats/models/get-all-outbounds-stats/get-all-outbounds-stats.response.model.d.ts.map +1 -0
  143. package/build/src/stats/models/get-all-outbounds-stats/get-all-outbounds-stats.response.model.js +42 -0
  144. package/build/src/stats/models/get-all-outbounds-stats/index.d.ts +2 -0
  145. package/build/src/stats/models/get-all-outbounds-stats/index.d.ts.map +1 -0
  146. package/build/src/stats/models/get-all-outbounds-stats/index.js +17 -0
  147. package/build/src/stats/models/get-all-outbounds-stats/interfaces/index.d.ts +2 -0
  148. package/build/src/stats/models/get-all-outbounds-stats/interfaces/index.d.ts.map +1 -0
  149. package/build/src/stats/models/get-all-outbounds-stats/interfaces/index.js +17 -0
  150. package/build/src/stats/models/get-all-outbounds-stats/interfaces/outbound.interface.d.ts +6 -0
  151. package/build/src/stats/models/get-all-outbounds-stats/interfaces/outbound.interface.d.ts.map +1 -0
  152. package/build/src/stats/models/get-all-outbounds-stats/interfaces/outbound.interface.js +2 -0
  153. package/build/src/stats/models/get-all-users-stats/get-all-users-stats.response.model.d.ts +21 -0
  154. package/build/src/stats/models/get-all-users-stats/get-all-users-stats.response.model.d.ts.map +1 -0
  155. package/build/src/stats/models/get-all-users-stats/get-all-users-stats.response.model.js +42 -0
  156. package/build/src/stats/models/get-all-users-stats/index.d.ts +2 -0
  157. package/build/src/stats/models/get-all-users-stats/index.d.ts.map +1 -0
  158. package/build/src/stats/models/get-all-users-stats/index.js +17 -0
  159. package/build/src/stats/models/get-all-users-stats/interfaces/index.d.ts +2 -0
  160. package/build/src/stats/models/get-all-users-stats/interfaces/index.d.ts.map +1 -0
  161. package/build/src/stats/models/get-all-users-stats/interfaces/index.js +17 -0
  162. package/build/src/stats/models/get-all-users-stats/interfaces/user.interface.d.ts +6 -0
  163. package/build/src/stats/models/get-all-users-stats/interfaces/user.interface.d.ts.map +1 -0
  164. package/build/src/stats/models/get-all-users-stats/interfaces/user.interface.js +2 -0
  165. package/build/src/stats/models/get-inbound-stats/get-inbound-stats.response.model.d.ts +27 -0
  166. package/build/src/stats/models/get-inbound-stats/get-inbound-stats.response.model.d.ts.map +1 -0
  167. package/build/src/stats/models/get-inbound-stats/get-inbound-stats.response.model.js +46 -0
  168. package/build/src/stats/models/get-inbound-stats/index.d.ts +2 -0
  169. package/build/src/stats/models/get-inbound-stats/index.d.ts.map +1 -0
  170. package/build/src/stats/models/get-inbound-stats/index.js +17 -0
  171. package/build/src/stats/models/get-inbound-stats/interfaces/inbound.interface.d.ts +6 -0
  172. package/build/src/stats/models/get-inbound-stats/interfaces/inbound.interface.d.ts.map +1 -0
  173. package/build/src/stats/models/get-inbound-stats/interfaces/inbound.interface.js +2 -0
  174. package/build/src/stats/models/get-inbound-stats/interfaces/index.d.ts +2 -0
  175. package/build/src/stats/models/get-inbound-stats/interfaces/index.d.ts.map +1 -0
  176. package/build/src/stats/models/get-inbound-stats/interfaces/index.js +17 -0
  177. package/build/src/stats/models/get-outbound-stats/get-outbound-stats.response.model.d.ts +27 -0
  178. package/build/src/stats/models/get-outbound-stats/get-outbound-stats.response.model.d.ts.map +1 -0
  179. package/build/src/stats/models/get-outbound-stats/get-outbound-stats.response.model.js +46 -0
  180. package/build/src/stats/models/get-outbound-stats/index.d.ts +2 -0
  181. package/build/src/stats/models/get-outbound-stats/index.d.ts.map +1 -0
  182. package/build/src/stats/models/get-outbound-stats/index.js +17 -0
  183. package/build/src/stats/models/get-outbound-stats/interfaces/index.d.ts +2 -0
  184. package/build/src/stats/models/get-outbound-stats/interfaces/index.d.ts.map +1 -0
  185. package/build/src/stats/models/get-outbound-stats/interfaces/index.js +17 -0
  186. package/build/src/stats/models/get-outbound-stats/interfaces/outbound.d.ts +6 -0
  187. package/build/src/stats/models/get-outbound-stats/interfaces/outbound.d.ts.map +1 -0
  188. package/build/src/stats/models/get-outbound-stats/interfaces/outbound.js +2 -0
  189. package/build/src/stats/models/get-sys-stats/get-sys-stats.response.model.d.ts +15 -0
  190. package/build/src/stats/models/get-sys-stats/get-sys-stats.response.model.d.ts.map +1 -0
  191. package/build/src/stats/models/get-sys-stats/get-sys-stats.response.model.js +22 -0
  192. package/build/src/stats/models/get-sys-stats/index.d.ts +2 -0
  193. package/build/src/stats/models/get-sys-stats/index.d.ts.map +1 -0
  194. package/build/src/stats/models/get-sys-stats/index.js +17 -0
  195. package/build/src/stats/models/get-user-online-status/get-user-online-status.response.model.d.ts +5 -0
  196. package/build/src/stats/models/get-user-online-status/get-user-online-status.response.model.d.ts.map +1 -0
  197. package/build/src/stats/models/get-user-online-status/get-user-online-status.response.model.js +9 -0
  198. package/build/src/stats/models/get-user-online-status/index.d.ts +2 -0
  199. package/build/src/stats/models/get-user-online-status/index.d.ts.map +1 -0
  200. package/build/src/stats/models/get-user-online-status/index.js +17 -0
  201. package/build/src/stats/models/get-user-stats/get-user-stats.response.model.d.ts +26 -0
  202. package/build/src/stats/models/get-user-stats/get-user-stats.response.model.d.ts.map +1 -0
  203. package/build/src/stats/models/get-user-stats/get-user-stats.response.model.js +46 -0
  204. package/build/src/stats/models/get-user-stats/index.d.ts +2 -0
  205. package/build/src/stats/models/get-user-stats/index.d.ts.map +1 -0
  206. package/build/src/stats/models/get-user-stats/index.js +17 -0
  207. package/build/src/stats/models/get-user-stats/interfaces/index.d.ts +2 -0
  208. package/build/src/stats/models/get-user-stats/interfaces/index.d.ts.map +1 -0
  209. package/build/src/stats/models/get-user-stats/interfaces/index.js +17 -0
  210. package/build/src/stats/models/get-user-stats/interfaces/user.interface.d.ts +6 -0
  211. package/build/src/stats/models/get-user-stats/interfaces/user.interface.d.ts.map +1 -0
  212. package/build/src/stats/models/get-user-stats/interfaces/user.interface.js +2 -0
  213. package/build/src/stats/models/get-users-stats/get-users-stats.response.model.d.ts +50 -0
  214. package/build/src/stats/models/get-users-stats/get-users-stats.response.model.d.ts.map +1 -0
  215. package/build/src/stats/models/get-users-stats/get-users-stats.response.model.js +52 -0
  216. package/build/src/stats/models/get-users-stats/index.d.ts +2 -0
  217. package/build/src/stats/models/get-users-stats/index.d.ts.map +1 -0
  218. package/build/src/stats/models/get-users-stats/index.js +17 -0
  219. package/build/src/stats/models/index.d.ts +10 -0
  220. package/build/src/stats/models/index.d.ts.map +1 -0
  221. package/build/src/stats/models/index.js +25 -0
  222. package/build/src/stats/stats.service.d.ts +271 -0
  223. package/build/src/stats/stats.service.d.ts.map +1 -0
  224. package/build/src/stats/stats.service.js +527 -0
  225. package/build/src/xray-protos/app/commander/config.d.ts +37 -0
  226. package/build/src/xray-protos/app/commander/config.d.ts.map +1 -0
  227. package/build/src/xray-protos/app/commander/config.js +143 -0
  228. package/build/src/xray-protos/app/dispatcher/config.d.ts +26 -0
  229. package/build/src/xray-protos/app/dispatcher/config.d.ts.map +1 -0
  230. package/build/src/xray-protos/app/dispatcher/config.js +112 -0
  231. package/build/src/xray-protos/app/geodata/config.d.ts +30 -0
  232. package/build/src/xray-protos/app/geodata/config.d.ts.map +1 -0
  233. package/build/src/xray-protos/app/geodata/config.js +172 -0
  234. package/build/src/xray-protos/app/log/command/config.d.ts +51 -0
  235. package/build/src/xray-protos/app/log/command/config.d.ts.map +1 -0
  236. package/build/src/xray-protos/app/log/command/config.js +143 -0
  237. package/build/src/xray-protos/app/log/config.d.ts +38 -0
  238. package/build/src/xray-protos/app/log/config.d.ts.map +1 -0
  239. package/build/src/xray-protos/app/log/config.js +244 -0
  240. package/build/src/xray-protos/app/metrics/config.d.ts +25 -0
  241. package/build/src/xray-protos/app/metrics/config.d.ts.map +1 -0
  242. package/build/src/xray-protos/app/metrics/config.js +86 -0
  243. package/build/src/xray-protos/app/policy/config.d.ts +78 -0
  244. package/build/src/xray-protos/app/policy/config.d.ts.map +1 -0
  245. package/build/src/xray-protos/app/policy/config.js +790 -0
  246. package/build/src/xray-protos/app/proxyman/command/command.d.ts +237 -0
  247. package/build/src/xray-protos/app/proxyman/command/command.d.ts.map +1 -0
  248. package/build/src/xray-protos/app/proxyman/command/command.js +1255 -0
  249. package/build/src/xray-protos/app/proxyman/config.d.ts +91 -0
  250. package/build/src/xray-protos/app/proxyman/config.d.ts.map +1 -0
  251. package/build/src/xray-protos/app/proxyman/config.js +779 -0
  252. package/build/src/xray-protos/app/reverse/config.d.ts +48 -0
  253. package/build/src/xray-protos/app/reverse/config.d.ts.map +1 -0
  254. package/build/src/xray-protos/app/reverse/config.js +365 -0
  255. package/build/src/xray-protos/app/router/command/command.d.ts +250 -0
  256. package/build/src/xray-protos/app/router/command/command.d.ts.map +1 -0
  257. package/build/src/xray-protos/app/router/command/command.js +1461 -0
  258. package/build/src/xray-protos/app/stats/command/command.d.ts +204 -0
  259. package/build/src/xray-protos/app/stats/command/command.d.ts.map +1 -0
  260. package/build/src/xray-protos/app/stats/command/command.js +1318 -0
  261. package/build/src/xray-protos/app/stats/config.d.ts +28 -0
  262. package/build/src/xray-protos/app/stats/config.d.ts.map +1 -0
  263. package/build/src/xray-protos/app/stats/config.js +140 -0
  264. package/build/src/xray-protos/app/version/config.d.ts +24 -0
  265. package/build/src/xray-protos/app/version/config.d.ts.map +1 -0
  266. package/build/src/xray-protos/app/version/config.js +113 -0
  267. package/build/src/xray-protos/common/geodata/geodat.d.ts +111 -0
  268. package/build/src/xray-protos/common/geodata/geodat.d.ts.map +1 -0
  269. package/build/src/xray-protos/common/geodata/geodat.js +1027 -0
  270. package/build/src/xray-protos/common/log/log.d.ts +12 -0
  271. package/build/src/xray-protos/common/log/log.d.ts.map +1 -0
  272. package/build/src/xray-protos/common/log/log.js +61 -0
  273. package/build/src/xray-protos/common/net/address.d.ts +29 -0
  274. package/build/src/xray-protos/common/net/address.d.ts.map +1 -0
  275. package/build/src/xray-protos/common/net/address.js +111 -0
  276. package/build/src/xray-protos/common/net/destination.d.ts +27 -0
  277. package/build/src/xray-protos/common/net/destination.d.ts.map +1 -0
  278. package/build/src/xray-protos/common/net/destination.js +105 -0
  279. package/build/src/xray-protos/common/net/network.d.ts +32 -0
  280. package/build/src/xray-protos/common/net/network.d.ts.map +1 -0
  281. package/build/src/xray-protos/common/net/network.js +122 -0
  282. package/build/src/xray-protos/common/net/port.d.ts +32 -0
  283. package/build/src/xray-protos/common/net/port.d.ts.map +1 -0
  284. package/build/src/xray-protos/common/net/port.js +142 -0
  285. package/build/src/xray-protos/common/protocol/headers.d.ts +34 -0
  286. package/build/src/xray-protos/common/protocol/headers.d.ts.map +1 -0
  287. package/build/src/xray-protos/common/protocol/headers.js +126 -0
  288. package/build/src/xray-protos/common/protocol/server_spec.d.ts +26 -0
  289. package/build/src/xray-protos/common/protocol/server_spec.d.ts.map +1 -0
  290. package/build/src/xray-protos/common/protocol/server_spec.js +105 -0
  291. package/build/src/xray-protos/common/protocol/user.d.ts +30 -0
  292. package/build/src/xray-protos/common/protocol/user.d.ts.map +1 -0
  293. package/build/src/xray-protos/common/protocol/user.js +104 -0
  294. package/build/src/xray-protos/common/serial/typed_message.d.ts +26 -0
  295. package/build/src/xray-protos/common/serial/typed_message.d.ts.map +1 -0
  296. package/build/src/xray-protos/common/serial/typed_message.js +111 -0
  297. package/build/src/xray-protos/core/config.d.ts +74 -0
  298. package/build/src/xray-protos/core/config.d.ts.map +1 -0
  299. package/build/src/xray-protos/core/config.js +366 -0
  300. package/build/src/xray-protos/proxy/blackhole/config.d.ts +31 -0
  301. package/build/src/xray-protos/proxy/blackhole/config.d.ts.map +1 -0
  302. package/build/src/xray-protos/proxy/blackhole/config.js +152 -0
  303. package/build/src/xray-protos/proxy/dns/config.d.ts +43 -0
  304. package/build/src/xray-protos/proxy/dns/config.d.ts.map +1 -0
  305. package/build/src/xray-protos/proxy/dns/config.js +276 -0
  306. package/build/src/xray-protos/proxy/dokodemo/config.d.ts +38 -0
  307. package/build/src/xray-protos/proxy/dokodemo/config.d.ts.map +1 -0
  308. package/build/src/xray-protos/proxy/dokodemo/config.js +285 -0
  309. package/build/src/xray-protos/proxy/freedom/config.d.ts +82 -0
  310. package/build/src/xray-protos/proxy/freedom/config.d.ts.map +1 -0
  311. package/build/src/xray-protos/proxy/freedom/config.js +902 -0
  312. package/build/src/xray-protos/proxy/http/config.d.ts +54 -0
  313. package/build/src/xray-protos/proxy/http/config.d.ts.map +1 -0
  314. package/build/src/xray-protos/proxy/http/config.js +418 -0
  315. package/build/src/xray-protos/proxy/hysteria/account/config.d.ts +22 -0
  316. package/build/src/xray-protos/proxy/hysteria/account/config.d.ts.map +1 -0
  317. package/build/src/xray-protos/proxy/hysteria/account/config.js +68 -0
  318. package/build/src/xray-protos/proxy/hysteria/config.d.ts +29 -0
  319. package/build/src/xray-protos/proxy/hysteria/config.d.ts.map +1 -0
  320. package/build/src/xray-protos/proxy/hysteria/config.js +131 -0
  321. package/build/src/xray-protos/proxy/loopback/config.d.ts +24 -0
  322. package/build/src/xray-protos/proxy/loopback/config.d.ts.map +1 -0
  323. package/build/src/xray-protos/proxy/loopback/config.js +93 -0
  324. package/build/src/xray-protos/proxy/shadowsocks/config.d.ts +49 -0
  325. package/build/src/xray-protos/proxy/shadowsocks/config.d.ts.map +1 -0
  326. package/build/src/xray-protos/proxy/shadowsocks/config.js +307 -0
  327. package/build/src/xray-protos/proxy/shadowsocks_2022/config.d.ts +67 -0
  328. package/build/src/xray-protos/proxy/shadowsocks_2022/config.d.ts.map +1 -0
  329. package/build/src/xray-protos/proxy/shadowsocks_2022/config.js +646 -0
  330. package/build/src/xray-protos/proxy/socks/config.d.ts +61 -0
  331. package/build/src/xray-protos/proxy/socks/config.d.ts.map +1 -0
  332. package/build/src/xray-protos/proxy/socks/config.js +416 -0
  333. package/build/src/xray-protos/proxy/trojan/config.d.ts +45 -0
  334. package/build/src/xray-protos/proxy/trojan/config.d.ts.map +1 -0
  335. package/build/src/xray-protos/proxy/trojan/config.js +342 -0
  336. package/build/src/xray-protos/proxy/tun/config.d.ts +28 -0
  337. package/build/src/xray-protos/proxy/tun/config.d.ts.map +1 -0
  338. package/build/src/xray-protos/proxy/tun/config.js +182 -0
  339. package/build/src/xray-protos/proxy/vless/account.d.ts +39 -0
  340. package/build/src/xray-protos/proxy/vless/account.d.ts.map +1 -0
  341. package/build/src/xray-protos/proxy/vless/account.js +287 -0
  342. package/build/src/xray-protos/proxy/vless/encoding/addons.d.ts +23 -0
  343. package/build/src/xray-protos/proxy/vless/encoding/addons.d.ts.map +1 -0
  344. package/build/src/xray-protos/proxy/vless/encoding/addons.js +111 -0
  345. package/build/src/xray-protos/proxy/vless/inbound/config.d.ts +39 -0
  346. package/build/src/xray-protos/proxy/vless/inbound/config.d.ts.map +1 -0
  347. package/build/src/xray-protos/proxy/vless/inbound/config.js +322 -0
  348. package/build/src/xray-protos/proxy/vless/outbound/config.d.ts +23 -0
  349. package/build/src/xray-protos/proxy/vless/outbound/config.d.ts.map +1 -0
  350. package/build/src/xray-protos/proxy/vless/outbound/config.js +71 -0
  351. package/build/src/xray-protos/proxy/vmess/account.d.ts +31 -0
  352. package/build/src/xray-protos/proxy/vmess/account.d.ts.map +1 -0
  353. package/build/src/xray-protos/proxy/vmess/account.js +112 -0
  354. package/build/src/xray-protos/proxy/vmess/inbound/config.d.ts +34 -0
  355. package/build/src/xray-protos/proxy/vmess/inbound/config.d.ts.map +1 -0
  356. package/build/src/xray-protos/proxy/vmess/inbound/config.js +195 -0
  357. package/build/src/xray-protos/proxy/vmess/outbound/config.d.ts +23 -0
  358. package/build/src/xray-protos/proxy/vmess/outbound/config.d.ts.map +1 -0
  359. package/build/src/xray-protos/proxy/vmess/outbound/config.js +74 -0
  360. package/build/src/xray-protos/proxy/wireguard/config.d.ts +50 -0
  361. package/build/src/xray-protos/proxy/wireguard/config.d.ts.map +1 -0
  362. package/build/src/xray-protos/proxy/wireguard/config.js +434 -0
  363. package/build/src/xray-protos/transport/internet/config.d.ts +164 -0
  364. package/build/src/xray-protos/transport/internet/config.d.ts.map +1 -0
  365. package/build/src/xray-protos/transport/internet/config.js +1705 -0
  366. package/build/src/xray-protos/typeRegistry.d.ts +19 -0
  367. package/build/src/xray-protos/typeRegistry.d.ts.map +1 -0
  368. package/build/src/xray-protos/typeRegistry.js +8 -0
  369. package/package.json +60 -0
package/README.md ADDED
@@ -0,0 +1,217 @@
1
+ # XTLS SDK
2
+
3
+ ![GitHub top language](https://img.shields.io/github/languages/top/remnawave/xtls-sdk)
4
+ ![GitHub Repo stars](https://img.shields.io/github/stars/remnawave/xtls-sdk)
5
+
6
+ ![npm version](https://img.shields.io/npm/v/@remnawave/xtls-sdk)
7
+ ![GitHub Tag](https://img.shields.io/github/v/tag/remnawave/xtls-sdk)
8
+
9
+ ![Build Status](https://img.shields.io/github/actions/workflow/status/remnawave/xtls-sdk/.github/workflows/deploy-lib.yml)
10
+ ![Downloads](https://img.shields.io/npm/dt/@remnawave/xtls-sdk)
11
+ ![License](https://img.shields.io/npm/l/@remnawave/xtls-sdk)
12
+ ![NPM Last Update](https://img.shields.io/npm/last-update/%40remnawave%2Fxtls-sdk)
13
+
14
+ ![Known Vulnerabilities](https://snyk.io/test/github/remnawave/xtls-sdk/badge.svg)
15
+ ![Coverage Status](https://img.shields.io/codecov/c/github/remnawave/xtls-sdk)
16
+
17
+ A TypeScript SDK for interacting with XRAY (XTLS) Core via gRPC API. This package provides a type-safe interface for managing and monitoring your XRAY server, including statistics, user management, and connection information.
18
+
19
+ ## Features
20
+
21
+ - 🔒 Type-safe API interactions
22
+ - 📊 Comprehensive statistics monitoring
23
+ - 👥 User management capabilities
24
+ - 🔄 Connection monitoring
25
+ - ⚡ Async/Promise-based API
26
+ - 📝 Detailed error handling
27
+
28
+ ## Installation
29
+
30
+ ```bash
31
+ npm install @remnawave/xtls-sdk
32
+ # or
33
+ yarn add @remnawave/xtls-sdk
34
+ # or
35
+ pnpm add @remnawave/xtls-sdk
36
+ ```
37
+
38
+ ## Quick Start
39
+
40
+ ```typescript
41
+ import { XtlsApi } from '@remnawave/xtls-sdk';
42
+
43
+ // Initialize the API client
44
+ const api = new XtlsApi({
45
+ connectionUrl: '127.0.0.1:10085',
46
+ });
47
+
48
+ // Example: Get system statistics
49
+ const stats = await api.stats.getSysStats();
50
+ if (stats.isOk) {
51
+ console.log('System Stats:', stats.data);
52
+ }
53
+ ```
54
+
55
+ ## Core Features
56
+
57
+ ### Statistics Management
58
+
59
+ ```typescript
60
+ // System Statistics
61
+ const sysStats = await api.stats.getSysStats();
62
+
63
+ // User Statistics
64
+ const userStats = await api.stats.getUserStats('username');
65
+ const allUsers = await api.stats.getAllUsersStats();
66
+ const isOnline = await api.stats.getUserOnlineStatus('username');
67
+
68
+ // Traffic Statistics
69
+ const inbounds = await api.stats.getAllInboundsStats();
70
+ const outbounds = await api.stats.getAllOutboundsStats();
71
+ ```
72
+
73
+ ### Response Handling
74
+
75
+ All API methods return a standardized response format:
76
+
77
+ ```typescript
78
+ interface ISdkResponse<T> {
79
+ isOk: boolean;
80
+ data?: T;
81
+ message?: string;
82
+ code?: string;
83
+ }
84
+ ```
85
+
86
+ Example usage:
87
+
88
+ ```typescript
89
+ const response = await api.stats.getSysStats();
90
+
91
+ if (response.isOk) {
92
+ // Success case
93
+ console.log('Stats:', response.data);
94
+ } else {
95
+ // Error case
96
+ console.error(`Error ${response.code}: ${response.message}`);
97
+ }
98
+ ```
99
+
100
+ ### Reset Options
101
+
102
+ Many methods support statistics reset functionality:
103
+
104
+ ```typescript
105
+ // Get stats and reset counters
106
+ const stats = await api.stats.getUserStats('username', true);
107
+ ```
108
+
109
+ ## API Reference
110
+
111
+ ### XtlsApi
112
+
113
+ Main client class for interacting with the XRAY server.
114
+
115
+ ```typescript
116
+ const api = new XtlsApi(ip: string, port: string);
117
+ ```
118
+
119
+ ### HandlerService
120
+
121
+ Service for managing inbound handlers and their users.
122
+
123
+ #### User Management Methods
124
+
125
+ | Method | Description | Parameters |
126
+ | ------------------------------------------- | -------------------------------- | -------------------------------------------------------- |
127
+ | `getInboundUsers(tag: string)` | Get all users from an inbound | `tag`: Inbound handler tag |
128
+ | `getInboundUsersCount(tag: string)` | Get count of users in an inbound | `tag`: Inbound handler tag |
129
+ | `removeUser(tag: string, username: string)` | Remove a user from an inbound | `tag`: Inbound handler tag<br>`username`: User to remove |
130
+
131
+ #### Add User Methods
132
+
133
+ | Method | Description | Parameters |
134
+ | ------------------------------------------------------- | ------------------------- | ---------------------------------------------------------------- |
135
+ | `addTrojanUser(data: IAddTrojanUser)` | Add Trojan user | `data`: { tag, username, password, level } |
136
+ | `addVlessUser(data: IAddVlessUser)` | Add VLESS user | `data`: { tag, username, uuid, flow, level } |
137
+ | `addShadowsocksUser(data: IAddShadowsocksUser)` | Add Shadowsocks user | `data`: { tag, username, password, cipherType, ivCheck, level } |
138
+ | `addShadowsocks2022User(data: IAddShadowsocks2022User)` | Add Shadowsocks 2022 user | `data`: { tag, username, key, level } |
139
+ | `addSocksUser(data: IAddSocksUser)` | Add SOCKS user | `data`: { tag, username, socks_username, socks_password, level } |
140
+ | `addHttpUser(data: IAddHttpUser)` | Add HTTP user | `data`: { tag, username, http_username, http_password, level } |
141
+
142
+ Example usage:
143
+
144
+ ```typescript
145
+ // Get all users in an inbound
146
+ const users = await api.handler.getInboundUsers('main-inbound');
147
+ if (users.isOk) {
148
+ console.log('Users:', users.data.users);
149
+ }
150
+
151
+ // Add a new Trojan user
152
+ const newUser = await api.handler.addTrojanUser({
153
+ tag: 'main-inbound',
154
+ username: 'user@example.com',
155
+ password: 'secure-password',
156
+ level: 0,
157
+ });
158
+
159
+ // Remove a user
160
+ const removed = await api.handler.removeUser('main-inbound', 'user@example.com');
161
+
162
+ // Get user count
163
+ const count = await api.handler.getInboundUsersCount('main-inbound');
164
+ if (count.isOk) {
165
+ console.log('Total users:', count.data);
166
+ }
167
+ ```
168
+
169
+ ### StatsService
170
+
171
+ Statistics management service.
172
+
173
+ | Method | Description | Parameters |
174
+ | ----------------------------------------------------- | -------------------------------- | ---------------------------------------------------------------- |
175
+ | `getSysStats()` | Get system statistics | None |
176
+ | `getAllUsersStats(reset?: boolean)` | Get all users' statistics | `reset`: Reset stats after retrieval |
177
+ | `getUserStats(username: string, reset?: boolean)` | Get specific user statistics | `username`: Target user<br>`reset`: Reset stats after retrieval |
178
+ | `getUserOnlineStatus(username: string)` | Check user online status | `username`: Target user |
179
+ | `getAllInboundsStats(reset?: boolean)` | Get all inbound statistics | `reset`: Reset stats after retrieval |
180
+ | `getInboundStats(inbound: string, reset?: boolean)` | Get specific inbound statistics | `inbound`: Inbound tag<br>`reset`: Reset stats after retrieval |
181
+ | `getAllOutboundsStats(reset?: boolean)` | Get all outbound statistics | `reset`: Reset stats after retrieval |
182
+ | `getOutboundStats(outbound: string, reset?: boolean)` | Get specific outbound statistics | `outbound`: Outbound tag<br>`reset`: Reset stats after retrieval |
183
+
184
+ ## Error Handling
185
+
186
+ The SDK provides detailed error information through the response object:
187
+
188
+ ```typescript
189
+ try {
190
+ const response = await api.stats.getUserStats('username');
191
+ if (!response.isOk) {
192
+ console.error(`Operation failed: ${response.message}`);
193
+ console.error(`Error code: ${response.code}`);
194
+ }
195
+ } catch (error) {
196
+ console.error('Unexpected error:', error);
197
+ }
198
+ ```
199
+
200
+ # Contributors
201
+
202
+ We ❤️‍🔥 contributors! If you'd like to contribute, please check out our [Contributing Guidelines](CONTRIBUTING.md) and feel free to submit a pull request or open an issue.
203
+
204
+ Check [open issues](https://github.com/remnawave/xtls-sdk/issues) to help the progress of this project.
205
+
206
+ <p align="center">
207
+ Thanks to the all contributors who have helped improve XTLS SDK:
208
+ </p>
209
+ <p align="center">
210
+ <a href="https://github.com/remnawave/xtls-sdk/graphs/contributors">
211
+ <img src="https://contrib.rocks/image?repo=remnawave/xtls-sdk" />
212
+ </a>
213
+ </p>
214
+
215
+ ## License
216
+
217
+ MIT License - see the [LICENSE](LICENSE) file for details.
@@ -0,0 +1,17 @@
1
+ import { Channel, ChannelOptions, ChannelCredentials } from 'nice-grpc';
2
+ import { HandlerService } from './src/handler/handler.service';
3
+ import { RouterService } from './src/router/router.service';
4
+ import { StatsService } from './src/stats/stats.service';
5
+ export interface XtlsApiOptions {
6
+ connectionUrl: string;
7
+ options?: ChannelOptions;
8
+ credentials?: ChannelCredentials;
9
+ }
10
+ export declare class XtlsApi {
11
+ readonly channel: Channel;
12
+ readonly stats: StatsService;
13
+ readonly handler: HandlerService;
14
+ readonly router: RouterService;
15
+ constructor({ connectionUrl, options, credentials }: XtlsApiOptions);
16
+ }
17
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEvF,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC;AAED,qBAAa,OAAO;IAChB,SAAgB,OAAO,EAAE,OAAO,CAAC;IACjC,SAAgB,KAAK,EAAE,YAAY,CAAC;IACpC,SAAgB,OAAO,EAAE,cAAc,CAAC;IACxC,SAAgB,MAAM,EAAE,aAAa,CAAC;gBAE1B,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,EAAE,cAAc;CAStE"}
package/build/index.js ADDED
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.XtlsApi = void 0;
4
+ const nice_grpc_1 = require("nice-grpc");
5
+ const handler_service_1 = require("./src/handler/handler.service");
6
+ const router_service_1 = require("./src/router/router.service");
7
+ const stats_service_1 = require("./src/stats/stats.service");
8
+ class XtlsApi {
9
+ constructor({ connectionUrl, options, credentials }) {
10
+ this.channel = (0, nice_grpc_1.createChannel)(connectionUrl, credentials, {
11
+ ...options,
12
+ });
13
+ this.stats = new stats_service_1.StatsService(this.channel);
14
+ this.handler = new handler_service_1.HandlerService(this.channel);
15
+ this.router = new router_service_1.RouterService(this.channel);
16
+ return this;
17
+ }
18
+ }
19
+ exports.XtlsApi = XtlsApi;
@@ -0,0 +1,23 @@
1
+ export declare const HANDLER_ERRORS: {
2
+ readonly UNKNOWN_ERROR: {
3
+ readonly code: "A001";
4
+ readonly message: "Unexpected error";
5
+ };
6
+ readonly GET_ALL_USERS_ERROR: (message: string) => {
7
+ code: string;
8
+ message: string;
9
+ };
10
+ readonly ADD_USER_ERROR: (message: string) => {
11
+ code: string;
12
+ message: string;
13
+ };
14
+ readonly REMOVE_USER_ERROR: (message: string) => {
15
+ code: string;
16
+ message: string;
17
+ };
18
+ readonly GET_INBOUND_USERS_COUNT_ERROR: (message: string) => {
19
+ code: string;
20
+ message: string;
21
+ };
22
+ };
23
+ //# sourceMappingURL=handler.errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.errors.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/handler/handler.errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;;;;;4CAEQ,MAAM;;;;uCAIX,MAAM;;;;0CAIH,MAAM;;;;sDAIM,MAAM;;;;CAIzC,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HANDLER_ERRORS = void 0;
4
+ exports.HANDLER_ERRORS = {
5
+ UNKNOWN_ERROR: { code: 'A001', message: 'Unexpected error' },
6
+ GET_ALL_USERS_ERROR: (message) => ({
7
+ code: 'A002',
8
+ message: `Error getting all users: ${message}`,
9
+ }),
10
+ ADD_USER_ERROR: (message) => ({
11
+ code: 'A003',
12
+ message: `Error adding user: ${message}`,
13
+ }),
14
+ REMOVE_USER_ERROR: (message) => ({
15
+ code: 'A004',
16
+ message: `Error removing user: ${message}`,
17
+ }),
18
+ GET_INBOUND_USERS_COUNT_ERROR: (message) => ({
19
+ code: 'A005',
20
+ message: `Error getting inbound users count: ${message}`,
21
+ }),
22
+ };
@@ -0,0 +1,2 @@
1
+ export * from './handler.errors';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/handler/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./handler.errors"), exports);
@@ -0,0 +1,3 @@
1
+ export * from './stats';
2
+ export * from './handler';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/common/errors/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./stats"), exports);
18
+ __exportStar(require("./handler"), exports);
@@ -0,0 +1,2 @@
1
+ export * from './router.errors';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/router/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./router.errors"), exports);
@@ -0,0 +1,15 @@
1
+ export declare const ROUTER_ERRORS: {
2
+ readonly UNKNOWN_ERROR: {
3
+ readonly code: "A001";
4
+ readonly message: "Unexpected error";
5
+ };
6
+ readonly ADD_SOURCE_IP_RULE_ERROR: (message: string) => {
7
+ code: string;
8
+ message: string;
9
+ };
10
+ readonly REMOVE_RULE_BY_RULE_TAG_ERROR: (message: string) => {
11
+ code: string;
12
+ message: string;
13
+ };
14
+ };
15
+ //# sourceMappingURL=router.errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"router.errors.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/router/router.errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;iDAEc,MAAM;;;;sDAID,MAAM;;;;CAIzC,CAAC"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ROUTER_ERRORS = void 0;
4
+ exports.ROUTER_ERRORS = {
5
+ UNKNOWN_ERROR: { code: 'A001', message: 'Unexpected error' },
6
+ ADD_SOURCE_IP_RULE_ERROR: (message) => ({
7
+ code: 'A002',
8
+ message: `Error adding source ip rule: ${message}`,
9
+ }),
10
+ REMOVE_RULE_BY_RULE_TAG_ERROR: (message) => ({
11
+ code: 'A003',
12
+ message: `Error removing rule by rule tag: ${message}`,
13
+ }),
14
+ };
@@ -0,0 +1,2 @@
1
+ export * from './stats.errors';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/stats/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./stats.errors"), exports);
@@ -0,0 +1,43 @@
1
+ export declare const STATS_ERRORS: {
2
+ readonly UNKNOWN_ERROR: {
3
+ readonly code: "A001";
4
+ readonly message: "Unexpected error";
5
+ };
6
+ readonly GET_SYS_STATS_ERROR: (message: string) => {
7
+ code: string;
8
+ message: string;
9
+ };
10
+ readonly GET_ALL_USERS_STATS_ERROR: (message: string) => {
11
+ code: string;
12
+ message: string;
13
+ };
14
+ readonly GET_USER_STATS_ERROR: (message: string) => {
15
+ code: string;
16
+ message: string;
17
+ };
18
+ readonly GET_USER_ONLINE_STATUS_ERROR: (message: string) => {
19
+ code: string;
20
+ message: string;
21
+ };
22
+ readonly GET_ALL_INBOUNDS_STATS_ERROR: (message: string) => {
23
+ code: string;
24
+ message: string;
25
+ };
26
+ readonly GET_INBOUND_STATS_ERROR: (message: string) => {
27
+ code: string;
28
+ message: string;
29
+ };
30
+ readonly GET_ALL_OUTBOUNDS_STATS_ERROR: (message: string) => {
31
+ code: string;
32
+ message: string;
33
+ };
34
+ readonly GET_OUTBOUND_STATS_ERROR: (message: string) => {
35
+ code: string;
36
+ message: string;
37
+ };
38
+ readonly GET_USERS_STATS_ERROR: (message: string) => {
39
+ code: string;
40
+ message: string;
41
+ };
42
+ };
43
+ //# sourceMappingURL=stats.errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.errors.d.ts","sourceRoot":"","sources":["../../../../../src/common/errors/stats/stats.errors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;;;;4CAEU,MAAM;;;;kDAIA,MAAM;;;;6CAIX,MAAM;;;;qDAIE,MAAM;;;;qDAIN,MAAM;;;;gDAIX,MAAM;;;;sDAIA,MAAM;;;;iDAIX,MAAM;;;;8CAIT,MAAM;;;;CAIjC,CAAC"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.STATS_ERRORS = void 0;
4
+ exports.STATS_ERRORS = {
5
+ UNKNOWN_ERROR: { code: 'A001', message: 'Unexpected error' },
6
+ GET_SYS_STATS_ERROR: (message) => ({
7
+ code: 'A002',
8
+ message: `Failed to get system stats: ${message}`,
9
+ }),
10
+ GET_ALL_USERS_STATS_ERROR: (message) => ({
11
+ code: 'A003',
12
+ message: `Failed to get all users stats: ${message}`,
13
+ }),
14
+ GET_USER_STATS_ERROR: (message) => ({
15
+ code: 'A004',
16
+ message: `Failed to get user stats: ${message}`,
17
+ }),
18
+ GET_USER_ONLINE_STATUS_ERROR: (message) => ({
19
+ code: 'A005',
20
+ message: `Failed to get user online status: ${message}`,
21
+ }),
22
+ GET_ALL_INBOUNDS_STATS_ERROR: (message) => ({
23
+ code: 'A006',
24
+ message: `Failed to get all inbounds stats: ${message}`,
25
+ }),
26
+ GET_INBOUND_STATS_ERROR: (message) => ({
27
+ code: 'A007',
28
+ message: `Failed to get inbound stats: ${message}`,
29
+ }),
30
+ GET_ALL_OUTBOUNDS_STATS_ERROR: (message) => ({
31
+ code: 'A008',
32
+ message: `Failed to get all outbounds stats: ${message}`,
33
+ }),
34
+ GET_OUTBOUND_STATS_ERROR: (message) => ({
35
+ code: 'A009',
36
+ message: `Failed to get outbound stats: ${message}`,
37
+ }),
38
+ GET_USERS_STATS_ERROR: (message) => ({
39
+ code: 'A010',
40
+ message: `Failed to get users stats: ${message}`,
41
+ }),
42
+ };
@@ -0,0 +1,2 @@
1
+ export * from './sdk-response';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/common/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./sdk-response"), exports);
@@ -0,0 +1,6 @@
1
+ export interface ISdkResponse<T> {
2
+ isOk: boolean;
3
+ data?: T;
4
+ message?: string;
5
+ }
6
+ //# sourceMappingURL=sdk-response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-response.d.ts","sourceRoot":"","sources":["../../../../src/common/types/sdk-response.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY,CAAC,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,5 @@
1
+ import { TypedMessage } from '../../../xray-protos/common/serial/typed_message';
2
+ import { MessageFns } from '../../../xray-protos/common/serial/typed_message';
3
+ declare function createTypedMessage<T extends MessageFns<unknown, string>>(proto: T, data: Parameters<T['create']>[0]): TypedMessage;
4
+ export default createTypedMessage;
5
+ //# sourceMappingURL=create-typed-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-typed-message.d.ts","sourceRoot":"","sources":["../../../../../src/common/utils/create-typed-message/create-typed-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,kDAAkD,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,kDAAkD,CAAC;AAE9E,iBAAS,kBAAkB,CAAC,CAAC,SAAS,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,EAC7D,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GACjC,YAAY,CAKd;AAED,eAAe,kBAAkB,CAAC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const typed_message_1 = require("../../../xray-protos/common/serial/typed_message");
4
+ function createTypedMessage(proto, data) {
5
+ return typed_message_1.TypedMessage.create({
6
+ type: proto.$type,
7
+ value: proto.encode(proto.create(data)).finish(),
8
+ });
9
+ }
10
+ exports.default = createTypedMessage;
@@ -0,0 +1,39 @@
1
+ import { Account as Shadowsocks2022Account } from '../../../../xray-protos/proxy/shadowsocks_2022/config';
2
+ import { Account as ShadowsocksAccount } from '../../../../xray-protos/proxy/shadowsocks/config';
3
+ import { Account as TrojanAccount } from '../../../../xray-protos/proxy/trojan/config';
4
+ import { Account as VlessAccount } from '../../../../xray-protos/proxy/vless/account';
5
+ import { Account as SocksAccount } from '../../../../xray-protos/proxy/socks/config';
6
+ import { Account as HttpAccount } from '../../../../xray-protos/proxy/http/config';
7
+ export declare const ACCOUNT_TYPES: {
8
+ readonly "xray.proxy.trojan.Account": {
9
+ readonly decoder: import("../../../../xray-protos/proxy/trojan/config").MessageFns<TrojanAccount, "xray.proxy.trojan.Account">;
10
+ readonly protocol: "trojan";
11
+ readonly getCredentials: (acc: TrojanAccount) => Omit<TrojanAccount, "$type">;
12
+ };
13
+ readonly "xray.proxy.vless.Account": {
14
+ readonly decoder: import("../../../../xray-protos/proxy/vless/account").MessageFns<VlessAccount, "xray.proxy.vless.Account">;
15
+ readonly protocol: "vless";
16
+ readonly getCredentials: (acc: VlessAccount) => Omit<VlessAccount, "$type">;
17
+ };
18
+ readonly "xray.proxy.shadowsocks.Account": {
19
+ readonly decoder: import("../../../../xray-protos/proxy/shadowsocks/config").MessageFns<ShadowsocksAccount, "xray.proxy.shadowsocks.Account">;
20
+ readonly protocol: "shadowsocks";
21
+ readonly getCredentials: (acc: ShadowsocksAccount) => Omit<ShadowsocksAccount, "$type">;
22
+ };
23
+ readonly "xray.proxy.shadowsocks_2022.Account": {
24
+ readonly decoder: import("../../../../xray-protos/proxy/shadowsocks_2022/config").MessageFns<Shadowsocks2022Account, "xray.proxy.shadowsocks_2022.Account">;
25
+ readonly protocol: "shadowsocks2022";
26
+ readonly getCredentials: (acc: Shadowsocks2022Account) => Omit<Shadowsocks2022Account, "$type">;
27
+ };
28
+ readonly "xray.proxy.socks.Account": {
29
+ readonly decoder: import("../../../../xray-protos/proxy/socks/config").MessageFns<SocksAccount, "xray.proxy.socks.Account">;
30
+ readonly protocol: "socks";
31
+ readonly getCredentials: (acc: SocksAccount) => Omit<SocksAccount, "$type">;
32
+ };
33
+ readonly "xray.proxy.http.Account": {
34
+ readonly decoder: import("../../../../xray-protos/proxy/http/config").MessageFns<HttpAccount, "xray.proxy.http.Account">;
35
+ readonly protocol: "http";
36
+ readonly getCredentials: (acc: HttpAccount) => Omit<HttpAccount, "$type">;
37
+ };
38
+ };
39
+ //# sourceMappingURL=account-types.d.ts.map