@discretion/core 0.1.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 (885) hide show
  1. package/CHANGELOG.md +117 -0
  2. package/LICENSE +21 -0
  3. package/README.md +319 -0
  4. package/dist/src/checksums/aba.d.ts +25 -0
  5. package/dist/src/checksums/aba.d.ts.map +1 -0
  6. package/dist/src/checksums/aba.js +47 -0
  7. package/dist/src/checksums/aba.js.map +1 -0
  8. package/dist/src/checksums/digits.d.ts +55 -0
  9. package/dist/src/checksums/digits.d.ts.map +1 -0
  10. package/dist/src/checksums/digits.js +114 -0
  11. package/dist/src/checksums/digits.js.map +1 -0
  12. package/dist/src/checksums/icao9303.d.ts +29 -0
  13. package/dist/src/checksums/icao9303.d.ts.map +1 -0
  14. package/dist/src/checksums/icao9303.js +56 -0
  15. package/dist/src/checksums/icao9303.js.map +1 -0
  16. package/dist/src/checksums/index.d.ts +21 -0
  17. package/dist/src/checksums/index.d.ts.map +1 -0
  18. package/dist/src/checksums/index.js +21 -0
  19. package/dist/src/checksums/index.js.map +1 -0
  20. package/dist/src/checksums/iso7064.d.ts +67 -0
  21. package/dist/src/checksums/iso7064.d.ts.map +1 -0
  22. package/dist/src/checksums/iso7064.js +159 -0
  23. package/dist/src/checksums/iso7064.js.map +1 -0
  24. package/dist/src/checksums/luhn.d.ts +32 -0
  25. package/dist/src/checksums/luhn.d.ts.map +1 -0
  26. package/dist/src/checksums/luhn.js +66 -0
  27. package/dist/src/checksums/luhn.js.map +1 -0
  28. package/dist/src/checksums/mod97.d.ts +55 -0
  29. package/dist/src/checksums/mod97.d.ts.map +1 -0
  30. package/dist/src/checksums/mod97.js +94 -0
  31. package/dist/src/checksums/mod97.js.map +1 -0
  32. package/dist/src/checksums/verhoeff.d.ts +28 -0
  33. package/dist/src/checksums/verhoeff.d.ts.map +1 -0
  34. package/dist/src/checksums/verhoeff.js +80 -0
  35. package/dist/src/checksums/verhoeff.js.map +1 -0
  36. package/dist/src/checksums/weighted.d.ts +64 -0
  37. package/dist/src/checksums/weighted.d.ts.map +1 -0
  38. package/dist/src/checksums/weighted.js +97 -0
  39. package/dist/src/checksums/weighted.js.map +1 -0
  40. package/dist/src/context/documentProfile.d.ts +34 -0
  41. package/dist/src/context/documentProfile.d.ts.map +1 -0
  42. package/dist/src/context/documentProfile.js +253 -0
  43. package/dist/src/context/documentProfile.js.map +1 -0
  44. package/dist/src/context/negativeRules.d.ts +60 -0
  45. package/dist/src/context/negativeRules.d.ts.map +1 -0
  46. package/dist/src/context/negativeRules.js +696 -0
  47. package/dist/src/context/negativeRules.js.map +1 -0
  48. package/dist/src/context/score.d.ts +52 -0
  49. package/dist/src/context/score.d.ts.map +1 -0
  50. package/dist/src/context/score.js +346 -0
  51. package/dist/src/context/score.js.map +1 -0
  52. package/dist/src/context/structure.d.ts +46 -0
  53. package/dist/src/context/structure.d.ts.map +1 -0
  54. package/dist/src/context/structure.js +528 -0
  55. package/dist/src/context/structure.js.map +1 -0
  56. package/dist/src/context/triggers.d.ts +73 -0
  57. package/dist/src/context/triggers.d.ts.map +1 -0
  58. package/dist/src/context/triggers.js +172 -0
  59. package/dist/src/context/triggers.js.map +1 -0
  60. package/dist/src/context/types.d.ts +137 -0
  61. package/dist/src/context/types.d.ts.map +1 -0
  62. package/dist/src/context/types.js +25 -0
  63. package/dist/src/context/types.js.map +1 -0
  64. package/dist/src/crypto/keccak256.d.ts +15 -0
  65. package/dist/src/crypto/keccak256.d.ts.map +1 -0
  66. package/dist/src/crypto/keccak256.js +89 -0
  67. package/dist/src/crypto/keccak256.js.map +1 -0
  68. package/dist/src/crypto/sha256.d.ts +16 -0
  69. package/dist/src/crypto/sha256.d.ts.map +1 -0
  70. package/dist/src/crypto/sha256.js +81 -0
  71. package/dist/src/crypto/sha256.js.map +1 -0
  72. package/dist/src/detect/detectors/bankcodes/auBsb.d.ts +11 -0
  73. package/dist/src/detect/detectors/bankcodes/auBsb.d.ts.map +1 -0
  74. package/dist/src/detect/detectors/bankcodes/auBsb.js +34 -0
  75. package/dist/src/detect/detectors/bankcodes/auBsb.js.map +1 -0
  76. package/dist/src/detect/detectors/bankcodes/brAgencia.d.ts +15 -0
  77. package/dist/src/detect/detectors/bankcodes/brAgencia.d.ts.map +1 -0
  78. package/dist/src/detect/detectors/bankcodes/brAgencia.js +43 -0
  79. package/dist/src/detect/detectors/bankcodes/brAgencia.js.map +1 -0
  80. package/dist/src/detect/detectors/bankcodes/caTransit.d.ts +13 -0
  81. package/dist/src/detect/detectors/bankcodes/caTransit.d.ts.map +1 -0
  82. package/dist/src/detect/detectors/bankcodes/caTransit.js +86 -0
  83. package/dist/src/detect/detectors/bankcodes/caTransit.js.map +1 -0
  84. package/dist/src/detect/detectors/bankcodes/inIfsc.d.ts +13 -0
  85. package/dist/src/detect/detectors/bankcodes/inIfsc.d.ts.map +1 -0
  86. package/dist/src/detect/detectors/bankcodes/inIfsc.js +37 -0
  87. package/dist/src/detect/detectors/bankcodes/inIfsc.js.map +1 -0
  88. package/dist/src/detect/detectors/bankcodes/index.d.ts +10 -0
  89. package/dist/src/detect/detectors/bankcodes/index.d.ts.map +1 -0
  90. package/dist/src/detect/detectors/bankcodes/index.js +10 -0
  91. package/dist/src/detect/detectors/bankcodes/index.js.map +1 -0
  92. package/dist/src/detect/detectors/bankcodes/ukSortCode.d.ts +13 -0
  93. package/dist/src/detect/detectors/bankcodes/ukSortCode.d.ts.map +1 -0
  94. package/dist/src/detect/detectors/bankcodes/ukSortCode.js +36 -0
  95. package/dist/src/detect/detectors/bankcodes/ukSortCode.js.map +1 -0
  96. package/dist/src/detect/detectors/bankcodes/usRouting.d.ts +12 -0
  97. package/dist/src/detect/detectors/bankcodes/usRouting.d.ts.map +1 -0
  98. package/dist/src/detect/detectors/bankcodes/usRouting.js +45 -0
  99. package/dist/src/detect/detectors/bankcodes/usRouting.js.map +1 -0
  100. package/dist/src/detect/detectors/contact/email.d.ts +16 -0
  101. package/dist/src/detect/detectors/contact/email.d.ts.map +1 -0
  102. package/dist/src/detect/detectors/contact/email.js +111 -0
  103. package/dist/src/detect/detectors/contact/email.js.map +1 -0
  104. package/dist/src/detect/detectors/contact/index.d.ts +11 -0
  105. package/dist/src/detect/detectors/contact/index.d.ts.map +1 -0
  106. package/dist/src/detect/detectors/contact/index.js +11 -0
  107. package/dist/src/detect/detectors/contact/index.js.map +1 -0
  108. package/dist/src/detect/detectors/contact/ipv4.d.ts +12 -0
  109. package/dist/src/detect/detectors/contact/ipv4.d.ts.map +1 -0
  110. package/dist/src/detect/detectors/contact/ipv4.js +109 -0
  111. package/dist/src/detect/detectors/contact/ipv4.js.map +1 -0
  112. package/dist/src/detect/detectors/contact/ipv6.d.ts +16 -0
  113. package/dist/src/detect/detectors/contact/ipv6.d.ts.map +1 -0
  114. package/dist/src/detect/detectors/contact/ipv6.js +187 -0
  115. package/dist/src/detect/detectors/contact/ipv6.js.map +1 -0
  116. package/dist/src/detect/detectors/contact/mac.d.ts +14 -0
  117. package/dist/src/detect/detectors/contact/mac.d.ts.map +1 -0
  118. package/dist/src/detect/detectors/contact/mac.js +64 -0
  119. package/dist/src/detect/detectors/contact/mac.js.map +1 -0
  120. package/dist/src/detect/detectors/contact/phone.d.ts +21 -0
  121. package/dist/src/detect/detectors/contact/phone.d.ts.map +1 -0
  122. package/dist/src/detect/detectors/contact/phone.js +76 -0
  123. package/dist/src/detect/detectors/contact/phone.js.map +1 -0
  124. package/dist/src/detect/detectors/contact/urlCredentials.d.ts +23 -0
  125. package/dist/src/detect/detectors/contact/urlCredentials.d.ts.map +1 -0
  126. package/dist/src/detect/detectors/contact/urlCredentials.js +123 -0
  127. package/dist/src/detect/detectors/contact/urlCredentials.js.map +1 -0
  128. package/dist/src/detect/detectors/crypto/ada.d.ts +13 -0
  129. package/dist/src/detect/detectors/crypto/ada.d.ts.map +1 -0
  130. package/dist/src/detect/detectors/crypto/ada.js +51 -0
  131. package/dist/src/detect/detectors/crypto/ada.js.map +1 -0
  132. package/dist/src/detect/detectors/crypto/btc.d.ts +15 -0
  133. package/dist/src/detect/detectors/crypto/btc.d.ts.map +1 -0
  134. package/dist/src/detect/detectors/crypto/btc.js +78 -0
  135. package/dist/src/detect/detectors/crypto/btc.js.map +1 -0
  136. package/dist/src/detect/detectors/crypto/dot.d.ts +13 -0
  137. package/dist/src/detect/detectors/crypto/dot.d.ts.map +1 -0
  138. package/dist/src/detect/detectors/crypto/dot.js +41 -0
  139. package/dist/src/detect/detectors/crypto/dot.js.map +1 -0
  140. package/dist/src/detect/detectors/crypto/eth.d.ts +15 -0
  141. package/dist/src/detect/detectors/crypto/eth.d.ts.map +1 -0
  142. package/dist/src/detect/detectors/crypto/eth.js +63 -0
  143. package/dist/src/detect/detectors/crypto/eth.js.map +1 -0
  144. package/dist/src/detect/detectors/crypto/index.d.ts +12 -0
  145. package/dist/src/detect/detectors/crypto/index.d.ts.map +1 -0
  146. package/dist/src/detect/detectors/crypto/index.js +12 -0
  147. package/dist/src/detect/detectors/crypto/index.js.map +1 -0
  148. package/dist/src/detect/detectors/crypto/ltc.d.ts +12 -0
  149. package/dist/src/detect/detectors/crypto/ltc.d.ts.map +1 -0
  150. package/dist/src/detect/detectors/crypto/ltc.js +71 -0
  151. package/dist/src/detect/detectors/crypto/ltc.js.map +1 -0
  152. package/dist/src/detect/detectors/crypto/sol.d.ts +13 -0
  153. package/dist/src/detect/detectors/crypto/sol.d.ts.map +1 -0
  154. package/dist/src/detect/detectors/crypto/sol.js +39 -0
  155. package/dist/src/detect/detectors/crypto/sol.js.map +1 -0
  156. package/dist/src/detect/detectors/crypto/trx.d.ts +8 -0
  157. package/dist/src/detect/detectors/crypto/trx.d.ts.map +1 -0
  158. package/dist/src/detect/detectors/crypto/trx.js +34 -0
  159. package/dist/src/detect/detectors/crypto/trx.js.map +1 -0
  160. package/dist/src/detect/detectors/crypto/xmr.d.ts +10 -0
  161. package/dist/src/detect/detectors/crypto/xmr.d.ts.map +1 -0
  162. package/dist/src/detect/detectors/crypto/xmr.js +51 -0
  163. package/dist/src/detect/detectors/crypto/xmr.js.map +1 -0
  164. package/dist/src/detect/detectors/documents/driversLicense.d.ts +24 -0
  165. package/dist/src/detect/detectors/documents/driversLicense.d.ts.map +1 -0
  166. package/dist/src/detect/detectors/documents/driversLicense.js +79 -0
  167. package/dist/src/detect/detectors/documents/driversLicense.js.map +1 -0
  168. package/dist/src/detect/detectors/documents/healthData.d.ts +23 -0
  169. package/dist/src/detect/detectors/documents/healthData.d.ts.map +1 -0
  170. package/dist/src/detect/detectors/documents/healthData.js +78 -0
  171. package/dist/src/detect/detectors/documents/healthData.js.map +1 -0
  172. package/dist/src/detect/detectors/documents/index.d.ts +9 -0
  173. package/dist/src/detect/detectors/documents/index.d.ts.map +1 -0
  174. package/dist/src/detect/detectors/documents/index.js +9 -0
  175. package/dist/src/detect/detectors/documents/index.js.map +1 -0
  176. package/dist/src/detect/detectors/documents/passportMrz.d.ts +20 -0
  177. package/dist/src/detect/detectors/documents/passportMrz.d.ts.map +1 -0
  178. package/dist/src/detect/detectors/documents/passportMrz.js +194 -0
  179. package/dist/src/detect/detectors/documents/passportMrz.js.map +1 -0
  180. package/dist/src/detect/detectors/documents/usNpi.d.ts +16 -0
  181. package/dist/src/detect/detectors/documents/usNpi.d.ts.map +1 -0
  182. package/dist/src/detect/detectors/documents/usNpi.js +48 -0
  183. package/dist/src/detect/detectors/documents/usNpi.js.map +1 -0
  184. package/dist/src/detect/detectors/documents/vin.d.ts +15 -0
  185. package/dist/src/detect/detectors/documents/vin.d.ts.map +1 -0
  186. package/dist/src/detect/detectors/documents/vin.js +64 -0
  187. package/dist/src/detect/detectors/documents/vin.js.map +1 -0
  188. package/dist/src/detect/detectors/financial/creditCard.d.ts +23 -0
  189. package/dist/src/detect/detectors/financial/creditCard.d.ts.map +1 -0
  190. package/dist/src/detect/detectors/financial/creditCard.js +157 -0
  191. package/dist/src/detect/detectors/financial/creditCard.js.map +1 -0
  192. package/dist/src/detect/detectors/financial/iban.d.ts +18 -0
  193. package/dist/src/detect/detectors/financial/iban.d.ts.map +1 -0
  194. package/dist/src/detect/detectors/financial/iban.js +80 -0
  195. package/dist/src/detect/detectors/financial/iban.js.map +1 -0
  196. package/dist/src/detect/detectors/financial/ibanRegistry.d.ts +35 -0
  197. package/dist/src/detect/detectors/financial/ibanRegistry.d.ts.map +1 -0
  198. package/dist/src/detect/detectors/financial/ibanRegistry.js +92 -0
  199. package/dist/src/detect/detectors/financial/ibanRegistry.js.map +1 -0
  200. package/dist/src/detect/detectors/financial/index.d.ts +7 -0
  201. package/dist/src/detect/detectors/financial/index.d.ts.map +1 -0
  202. package/dist/src/detect/detectors/financial/index.js +7 -0
  203. package/dist/src/detect/detectors/financial/index.js.map +1 -0
  204. package/dist/src/detect/detectors/financial/swiftBic.d.ts +17 -0
  205. package/dist/src/detect/detectors/financial/swiftBic.d.ts.map +1 -0
  206. package/dist/src/detect/detectors/financial/swiftBic.js +55 -0
  207. package/dist/src/detect/detectors/financial/swiftBic.js.map +1 -0
  208. package/dist/src/detect/detectors/index.d.ts +15 -0
  209. package/dist/src/detect/detectors/index.d.ts.map +1 -0
  210. package/dist/src/detect/detectors/index.js +15 -0
  211. package/dist/src/detect/detectors/index.js.map +1 -0
  212. package/dist/src/detect/detectors/location/coordinates.d.ts +14 -0
  213. package/dist/src/detect/detectors/location/coordinates.d.ts.map +1 -0
  214. package/dist/src/detect/detectors/location/coordinates.js +79 -0
  215. package/dist/src/detect/detectors/location/coordinates.js.map +1 -0
  216. package/dist/src/detect/detectors/location/index.d.ts +7 -0
  217. package/dist/src/detect/detectors/location/index.d.ts.map +1 -0
  218. package/dist/src/detect/detectors/location/index.js +7 -0
  219. package/dist/src/detect/detectors/location/index.js.map +1 -0
  220. package/dist/src/detect/detectors/location/postalCode.d.ts +13 -0
  221. package/dist/src/detect/detectors/location/postalCode.d.ts.map +1 -0
  222. package/dist/src/detect/detectors/location/postalCode.js +53 -0
  223. package/dist/src/detect/detectors/location/postalCode.js.map +1 -0
  224. package/dist/src/detect/detectors/location/postalRegistry.d.ts +19 -0
  225. package/dist/src/detect/detectors/location/postalRegistry.d.ts.map +1 -0
  226. package/dist/src/detect/detectors/location/postalRegistry.js +73 -0
  227. package/dist/src/detect/detectors/location/postalRegistry.js.map +1 -0
  228. package/dist/src/detect/detectors/location/streetAddress.d.ts +21 -0
  229. package/dist/src/detect/detectors/location/streetAddress.d.ts.map +1 -0
  230. package/dist/src/detect/detectors/location/streetAddress.js +70 -0
  231. package/dist/src/detect/detectors/location/streetAddress.js.map +1 -0
  232. package/dist/src/detect/detectors/natid/africa.d.ts +17 -0
  233. package/dist/src/detect/detectors/natid/africa.d.ts.map +1 -0
  234. package/dist/src/detect/detectors/natid/africa.js +106 -0
  235. package/dist/src/detect/detectors/natid/africa.js.map +1 -0
  236. package/dist/src/detect/detectors/natid/ar.d.ts +14 -0
  237. package/dist/src/detect/detectors/natid/ar.d.ts.map +1 -0
  238. package/dist/src/detect/detectors/natid/ar.js +62 -0
  239. package/dist/src/detect/detectors/natid/ar.js.map +1 -0
  240. package/dist/src/detect/detectors/natid/au.d.ts +13 -0
  241. package/dist/src/detect/detectors/natid/au.d.ts.map +1 -0
  242. package/dist/src/detect/detectors/natid/au.js +100 -0
  243. package/dist/src/detect/detectors/natid/au.js.map +1 -0
  244. package/dist/src/detect/detectors/natid/be.d.ts +8 -0
  245. package/dist/src/detect/detectors/natid/be.d.ts.map +1 -0
  246. package/dist/src/detect/detectors/natid/be.js +44 -0
  247. package/dist/src/detect/detectors/natid/be.js.map +1 -0
  248. package/dist/src/detect/detectors/natid/bg.d.ts +7 -0
  249. package/dist/src/detect/detectors/natid/bg.d.ts.map +1 -0
  250. package/dist/src/detect/detectors/natid/bg.js +44 -0
  251. package/dist/src/detect/detectors/natid/bg.js.map +1 -0
  252. package/dist/src/detect/detectors/natid/br.d.ts +8 -0
  253. package/dist/src/detect/detectors/natid/br.d.ts.map +1 -0
  254. package/dist/src/detect/detectors/natid/br.js +85 -0
  255. package/dist/src/detect/detectors/natid/br.js.map +1 -0
  256. package/dist/src/detect/detectors/natid/ca.d.ts +8 -0
  257. package/dist/src/detect/detectors/natid/ca.d.ts.map +1 -0
  258. package/dist/src/detect/detectors/natid/ca.js +41 -0
  259. package/dist/src/detect/detectors/natid/ca.js.map +1 -0
  260. package/dist/src/detect/detectors/natid/cl.d.ts +9 -0
  261. package/dist/src/detect/detectors/natid/cl.d.ts.map +1 -0
  262. package/dist/src/detect/detectors/natid/cl.js +47 -0
  263. package/dist/src/detect/detectors/natid/cl.js.map +1 -0
  264. package/dist/src/detect/detectors/natid/cn.d.ts +9 -0
  265. package/dist/src/detect/detectors/natid/cn.d.ts.map +1 -0
  266. package/dist/src/detect/detectors/natid/cn.js +49 -0
  267. package/dist/src/detect/detectors/natid/cn.js.map +1 -0
  268. package/dist/src/detect/detectors/natid/co.d.ts +10 -0
  269. package/dist/src/detect/detectors/natid/co.d.ts.map +1 -0
  270. package/dist/src/detect/detectors/natid/co.js +43 -0
  271. package/dist/src/detect/detectors/natid/co.js.map +1 -0
  272. package/dist/src/detect/detectors/natid/cz.d.ts +11 -0
  273. package/dist/src/detect/detectors/natid/cz.d.ts.map +1 -0
  274. package/dist/src/detect/detectors/natid/cz.js +44 -0
  275. package/dist/src/detect/detectors/natid/cz.js.map +1 -0
  276. package/dist/src/detect/detectors/natid/de.d.ts +16 -0
  277. package/dist/src/detect/detectors/natid/de.d.ts.map +1 -0
  278. package/dist/src/detect/detectors/natid/de.js +77 -0
  279. package/dist/src/detect/detectors/natid/de.js.map +1 -0
  280. package/dist/src/detect/detectors/natid/dk.d.ts +9 -0
  281. package/dist/src/detect/detectors/natid/dk.d.ts.map +1 -0
  282. package/dist/src/detect/detectors/natid/dk.js +31 -0
  283. package/dist/src/detect/detectors/natid/dk.js.map +1 -0
  284. package/dist/src/detect/detectors/natid/es.d.ts +12 -0
  285. package/dist/src/detect/detectors/natid/es.d.ts.map +1 -0
  286. package/dist/src/detect/detectors/natid/es.js +96 -0
  287. package/dist/src/detect/detectors/natid/es.js.map +1 -0
  288. package/dist/src/detect/detectors/natid/fi.d.ts +10 -0
  289. package/dist/src/detect/detectors/natid/fi.d.ts.map +1 -0
  290. package/dist/src/detect/detectors/natid/fi.js +40 -0
  291. package/dist/src/detect/detectors/natid/fi.js.map +1 -0
  292. package/dist/src/detect/detectors/natid/fr.d.ts +12 -0
  293. package/dist/src/detect/detectors/natid/fr.d.ts.map +1 -0
  294. package/dist/src/detect/detectors/natid/fr.js +61 -0
  295. package/dist/src/detect/detectors/natid/fr.js.map +1 -0
  296. package/dist/src/detect/detectors/natid/gb.d.ts +10 -0
  297. package/dist/src/detect/detectors/natid/gb.d.ts.map +1 -0
  298. package/dist/src/detect/detectors/natid/gb.js +72 -0
  299. package/dist/src/detect/detectors/natid/gb.js.map +1 -0
  300. package/dist/src/detect/detectors/natid/gr.d.ts +7 -0
  301. package/dist/src/detect/detectors/natid/gr.d.ts.map +1 -0
  302. package/dist/src/detect/detectors/natid/gr.js +36 -0
  303. package/dist/src/detect/detectors/natid/gr.js.map +1 -0
  304. package/dist/src/detect/detectors/natid/gulf.d.ts +16 -0
  305. package/dist/src/detect/detectors/natid/gulf.d.ts.map +1 -0
  306. package/dist/src/detect/detectors/natid/gulf.js +121 -0
  307. package/dist/src/detect/detectors/natid/gulf.js.map +1 -0
  308. package/dist/src/detect/detectors/natid/hk.d.ts +9 -0
  309. package/dist/src/detect/detectors/natid/hk.d.ts.map +1 -0
  310. package/dist/src/detect/detectors/natid/hk.js +41 -0
  311. package/dist/src/detect/detectors/natid/hk.js.map +1 -0
  312. package/dist/src/detect/detectors/natid/hr.d.ts +6 -0
  313. package/dist/src/detect/detectors/natid/hr.d.ts.map +1 -0
  314. package/dist/src/detect/detectors/natid/hr.js +32 -0
  315. package/dist/src/detect/detectors/natid/hr.js.map +1 -0
  316. package/dist/src/detect/detectors/natid/hu.d.ts +7 -0
  317. package/dist/src/detect/detectors/natid/hu.d.ts.map +1 -0
  318. package/dist/src/detect/detectors/natid/hu.js +37 -0
  319. package/dist/src/detect/detectors/natid/hu.js.map +1 -0
  320. package/dist/src/detect/detectors/natid/ie.d.ts +9 -0
  321. package/dist/src/detect/detectors/natid/ie.d.ts.map +1 -0
  322. package/dist/src/detect/detectors/natid/ie.js +36 -0
  323. package/dist/src/detect/detectors/natid/ie.js.map +1 -0
  324. package/dist/src/detect/detectors/natid/il.d.ts +10 -0
  325. package/dist/src/detect/detectors/natid/il.d.ts.map +1 -0
  326. package/dist/src/detect/detectors/natid/il.js +38 -0
  327. package/dist/src/detect/detectors/natid/il.js.map +1 -0
  328. package/dist/src/detect/detectors/natid/in.d.ts +17 -0
  329. package/dist/src/detect/detectors/natid/in.d.ts.map +1 -0
  330. package/dist/src/detect/detectors/natid/in.js +67 -0
  331. package/dist/src/detect/detectors/natid/in.js.map +1 -0
  332. package/dist/src/detect/detectors/natid/index.d.ts +55 -0
  333. package/dist/src/detect/detectors/natid/index.d.ts.map +1 -0
  334. package/dist/src/detect/detectors/natid/index.js +55 -0
  335. package/dist/src/detect/detectors/natid/index.js.map +1 -0
  336. package/dist/src/detect/detectors/natid/is.d.ts +8 -0
  337. package/dist/src/detect/detectors/natid/is.d.ts.map +1 -0
  338. package/dist/src/detect/detectors/natid/is.js +42 -0
  339. package/dist/src/detect/detectors/natid/is.js.map +1 -0
  340. package/dist/src/detect/detectors/natid/it.d.ts +12 -0
  341. package/dist/src/detect/detectors/natid/it.d.ts.map +1 -0
  342. package/dist/src/detect/detectors/natid/it.js +62 -0
  343. package/dist/src/detect/detectors/natid/it.js.map +1 -0
  344. package/dist/src/detect/detectors/natid/jp.d.ts +9 -0
  345. package/dist/src/detect/detectors/natid/jp.d.ts.map +1 -0
  346. package/dist/src/detect/detectors/natid/jp.js +46 -0
  347. package/dist/src/detect/detectors/natid/jp.js.map +1 -0
  348. package/dist/src/detect/detectors/natid/kr.d.ts +11 -0
  349. package/dist/src/detect/detectors/natid/kr.d.ts.map +1 -0
  350. package/dist/src/detect/detectors/natid/kr.js +40 -0
  351. package/dist/src/detect/detectors/natid/kr.js.map +1 -0
  352. package/dist/src/detect/detectors/natid/kz.d.ts +8 -0
  353. package/dist/src/detect/detectors/natid/kz.d.ts.map +1 -0
  354. package/dist/src/detect/detectors/natid/kz.js +46 -0
  355. package/dist/src/detect/detectors/natid/kz.js.map +1 -0
  356. package/dist/src/detect/detectors/natid/mx.d.ts +16 -0
  357. package/dist/src/detect/detectors/natid/mx.d.ts.map +1 -0
  358. package/dist/src/detect/detectors/natid/mx.js +82 -0
  359. package/dist/src/detect/detectors/natid/mx.js.map +1 -0
  360. package/dist/src/detect/detectors/natid/nl.d.ts +8 -0
  361. package/dist/src/detect/detectors/natid/nl.d.ts.map +1 -0
  362. package/dist/src/detect/detectors/natid/nl.js +40 -0
  363. package/dist/src/detect/detectors/natid/nl.js.map +1 -0
  364. package/dist/src/detect/detectors/natid/no.d.ts +9 -0
  365. package/dist/src/detect/detectors/natid/no.d.ts.map +1 -0
  366. package/dist/src/detect/detectors/natid/no.js +52 -0
  367. package/dist/src/detect/detectors/natid/no.js.map +1 -0
  368. package/dist/src/detect/detectors/natid/nz.d.ts +9 -0
  369. package/dist/src/detect/detectors/natid/nz.d.ts.map +1 -0
  370. package/dist/src/detect/detectors/natid/nz.js +52 -0
  371. package/dist/src/detect/detectors/natid/nz.js.map +1 -0
  372. package/dist/src/detect/detectors/natid/pe.d.ts +7 -0
  373. package/dist/src/detect/detectors/natid/pe.d.ts.map +1 -0
  374. package/dist/src/detect/detectors/natid/pe.js +26 -0
  375. package/dist/src/detect/detectors/natid/pe.js.map +1 -0
  376. package/dist/src/detect/detectors/natid/pl.d.ts +11 -0
  377. package/dist/src/detect/detectors/natid/pl.d.ts.map +1 -0
  378. package/dist/src/detect/detectors/natid/pl.js +105 -0
  379. package/dist/src/detect/detectors/natid/pl.js.map +1 -0
  380. package/dist/src/detect/detectors/natid/pt.d.ts +6 -0
  381. package/dist/src/detect/detectors/natid/pt.d.ts.map +1 -0
  382. package/dist/src/detect/detectors/natid/pt.js +35 -0
  383. package/dist/src/detect/detectors/natid/pt.js.map +1 -0
  384. package/dist/src/detect/detectors/natid/ro.d.ts +8 -0
  385. package/dist/src/detect/detectors/natid/ro.d.ts.map +1 -0
  386. package/dist/src/detect/detectors/natid/ro.js +48 -0
  387. package/dist/src/detect/detectors/natid/ro.js.map +1 -0
  388. package/dist/src/detect/detectors/natid/ru.d.ts +11 -0
  389. package/dist/src/detect/detectors/natid/ru.d.ts.map +1 -0
  390. package/dist/src/detect/detectors/natid/ru.js +86 -0
  391. package/dist/src/detect/detectors/natid/ru.js.map +1 -0
  392. package/dist/src/detect/detectors/natid/se.d.ts +9 -0
  393. package/dist/src/detect/detectors/natid/se.d.ts.map +1 -0
  394. package/dist/src/detect/detectors/natid/se.js +43 -0
  395. package/dist/src/detect/detectors/natid/se.js.map +1 -0
  396. package/dist/src/detect/detectors/natid/seasia.d.ts +19 -0
  397. package/dist/src/detect/detectors/natid/seasia.d.ts.map +1 -0
  398. package/dist/src/detect/detectors/natid/seasia.js +182 -0
  399. package/dist/src/detect/detectors/natid/seasia.js.map +1 -0
  400. package/dist/src/detect/detectors/natid/sg.d.ts +8 -0
  401. package/dist/src/detect/detectors/natid/sg.d.ts.map +1 -0
  402. package/dist/src/detect/detectors/natid/sg.js +39 -0
  403. package/dist/src/detect/detectors/natid/sg.js.map +1 -0
  404. package/dist/src/detect/detectors/natid/si.d.ts +8 -0
  405. package/dist/src/detect/detectors/natid/si.d.ts.map +1 -0
  406. package/dist/src/detect/detectors/natid/si.js +44 -0
  407. package/dist/src/detect/detectors/natid/si.js.map +1 -0
  408. package/dist/src/detect/detectors/natid/tr.d.ts +14 -0
  409. package/dist/src/detect/detectors/natid/tr.d.ts.map +1 -0
  410. package/dist/src/detect/detectors/natid/tr.js +79 -0
  411. package/dist/src/detect/detectors/natid/tr.js.map +1 -0
  412. package/dist/src/detect/detectors/natid/tw.d.ts +9 -0
  413. package/dist/src/detect/detectors/natid/tw.d.ts.map +1 -0
  414. package/dist/src/detect/detectors/natid/tw.js +40 -0
  415. package/dist/src/detect/detectors/natid/tw.js.map +1 -0
  416. package/dist/src/detect/detectors/natid/ua.d.ts +7 -0
  417. package/dist/src/detect/detectors/natid/ua.d.ts.map +1 -0
  418. package/dist/src/detect/detectors/natid/ua.js +38 -0
  419. package/dist/src/detect/detectors/natid/ua.js.map +1 -0
  420. package/dist/src/detect/detectors/natid/us.d.ts +15 -0
  421. package/dist/src/detect/detectors/natid/us.d.ts.map +1 -0
  422. package/dist/src/detect/detectors/natid/us.js +119 -0
  423. package/dist/src/detect/detectors/natid/us.js.map +1 -0
  424. package/dist/src/detect/detectors/natid/za.d.ts +9 -0
  425. package/dist/src/detect/detectors/natid/za.d.ts.map +1 -0
  426. package/dist/src/detect/detectors/natid/za.js +44 -0
  427. package/dist/src/detect/detectors/natid/za.js.map +1 -0
  428. package/dist/src/detect/detectors/secrets/apiKey.d.ts +14 -0
  429. package/dist/src/detect/detectors/secrets/apiKey.d.ts.map +1 -0
  430. package/dist/src/detect/detectors/secrets/apiKey.js +103 -0
  431. package/dist/src/detect/detectors/secrets/apiKey.js.map +1 -0
  432. package/dist/src/detect/detectors/secrets/connectionString.d.ts +12 -0
  433. package/dist/src/detect/detectors/secrets/connectionString.d.ts.map +1 -0
  434. package/dist/src/detect/detectors/secrets/connectionString.js +70 -0
  435. package/dist/src/detect/detectors/secrets/connectionString.js.map +1 -0
  436. package/dist/src/detect/detectors/secrets/genericSecret.d.ts +22 -0
  437. package/dist/src/detect/detectors/secrets/genericSecret.d.ts.map +1 -0
  438. package/dist/src/detect/detectors/secrets/genericSecret.js +77 -0
  439. package/dist/src/detect/detectors/secrets/genericSecret.js.map +1 -0
  440. package/dist/src/detect/detectors/secrets/index.d.ts +9 -0
  441. package/dist/src/detect/detectors/secrets/index.d.ts.map +1 -0
  442. package/dist/src/detect/detectors/secrets/index.js +9 -0
  443. package/dist/src/detect/detectors/secrets/index.js.map +1 -0
  444. package/dist/src/detect/detectors/secrets/jwt.d.ts +11 -0
  445. package/dist/src/detect/detectors/secrets/jwt.d.ts.map +1 -0
  446. package/dist/src/detect/detectors/secrets/jwt.js +111 -0
  447. package/dist/src/detect/detectors/secrets/jwt.js.map +1 -0
  448. package/dist/src/detect/detectors/secrets/pemPrivateKey.d.ts +16 -0
  449. package/dist/src/detect/detectors/secrets/pemPrivateKey.d.ts.map +1 -0
  450. package/dist/src/detect/detectors/secrets/pemPrivateKey.js +56 -0
  451. package/dist/src/detect/detectors/secrets/pemPrivateKey.js.map +1 -0
  452. package/dist/src/detect/detectors/vat/euVat.d.ts +17 -0
  453. package/dist/src/detect/detectors/vat/euVat.d.ts.map +1 -0
  454. package/dist/src/detect/detectors/vat/euVat.js +293 -0
  455. package/dist/src/detect/detectors/vat/euVat.js.map +1 -0
  456. package/dist/src/detect/detectors/vat/index.d.ts +5 -0
  457. package/dist/src/detect/detectors/vat/index.d.ts.map +1 -0
  458. package/dist/src/detect/detectors/vat/index.js +5 -0
  459. package/dist/src/detect/detectors/vat/index.js.map +1 -0
  460. package/dist/src/detect/entropy.d.ts +28 -0
  461. package/dist/src/detect/entropy.d.ts.map +1 -0
  462. package/dist/src/detect/entropy.js +64 -0
  463. package/dist/src/detect/entropy.js.map +1 -0
  464. package/dist/src/detect/isoCountries.d.ts +10 -0
  465. package/dist/src/detect/isoCountries.d.ts.map +1 -0
  466. package/dist/src/detect/isoCountries.js +25 -0
  467. package/dist/src/detect/isoCountries.js.map +1 -0
  468. package/dist/src/detect/registry.d.ts +50 -0
  469. package/dist/src/detect/registry.d.ts.map +1 -0
  470. package/dist/src/detect/registry.js +110 -0
  471. package/dist/src/detect/registry.js.map +1 -0
  472. package/dist/src/detect/runner.d.ts +64 -0
  473. package/dist/src/detect/runner.d.ts.map +1 -0
  474. package/dist/src/detect/runner.js +142 -0
  475. package/dist/src/detect/runner.js.map +1 -0
  476. package/dist/src/detect/types.d.ts +251 -0
  477. package/dist/src/detect/types.d.ts.map +1 -0
  478. package/dist/src/detect/types.js +59 -0
  479. package/dist/src/detect/types.js.map +1 -0
  480. package/dist/src/encoding/base58.d.ts +26 -0
  481. package/dist/src/encoding/base58.d.ts.map +1 -0
  482. package/dist/src/encoding/base58.js +77 -0
  483. package/dist/src/encoding/base58.js.map +1 -0
  484. package/dist/src/encoding/base58monero.d.ts +15 -0
  485. package/dist/src/encoding/base58monero.d.ts.map +1 -0
  486. package/dist/src/encoding/base58monero.js +87 -0
  487. package/dist/src/encoding/base58monero.js.map +1 -0
  488. package/dist/src/encoding/bech32.d.ts +28 -0
  489. package/dist/src/encoding/bech32.d.ts.map +1 -0
  490. package/dist/src/encoding/bech32.js +108 -0
  491. package/dist/src/encoding/bech32.js.map +1 -0
  492. package/dist/src/encoding/bytes.d.ts +15 -0
  493. package/dist/src/encoding/bytes.d.ts.map +1 -0
  494. package/dist/src/encoding/bytes.js +46 -0
  495. package/dist/src/encoding/bytes.js.map +1 -0
  496. package/dist/src/entityFamily.d.ts +18 -0
  497. package/dist/src/entityFamily.d.ts.map +1 -0
  498. package/dist/src/entityFamily.js +54 -0
  499. package/dist/src/entityFamily.js.map +1 -0
  500. package/dist/src/entityLabel.d.ts +18 -0
  501. package/dist/src/entityLabel.d.ts.map +1 -0
  502. package/dist/src/entityLabel.js +53 -0
  503. package/dist/src/entityLabel.js.map +1 -0
  504. package/dist/src/entityTypes.d.ts +64 -0
  505. package/dist/src/entityTypes.d.ts.map +1 -0
  506. package/dist/src/entityTypes.js +94 -0
  507. package/dist/src/entityTypes.js.map +1 -0
  508. package/dist/src/exposure/index.d.ts +86 -0
  509. package/dist/src/exposure/index.d.ts.map +1 -0
  510. package/dist/src/exposure/index.js +134 -0
  511. package/dist/src/exposure/index.js.map +1 -0
  512. package/dist/src/fuse/calibrate.d.ts +95 -0
  513. package/dist/src/fuse/calibrate.d.ts.map +1 -0
  514. package/dist/src/fuse/calibrate.js +165 -0
  515. package/dist/src/fuse/calibrate.js.map +1 -0
  516. package/dist/src/fuse/defaultCalibration.d.ts +52 -0
  517. package/dist/src/fuse/defaultCalibration.d.ts.map +1 -0
  518. package/dist/src/fuse/defaultCalibration.js +41 -0
  519. package/dist/src/fuse/defaultCalibration.js.map +1 -0
  520. package/dist/src/fuse/explain.d.ts +55 -0
  521. package/dist/src/fuse/explain.d.ts.map +1 -0
  522. package/dist/src/fuse/explain.js +91 -0
  523. package/dist/src/fuse/explain.js.map +1 -0
  524. package/dist/src/fuse/profiles.d.ts +80 -0
  525. package/dist/src/fuse/profiles.d.ts.map +1 -0
  526. package/dist/src/fuse/profiles.js +126 -0
  527. package/dist/src/fuse/profiles.js.map +1 -0
  528. package/dist/src/fuse/resolve.d.ts +73 -0
  529. package/dist/src/fuse/resolve.d.ts.map +1 -0
  530. package/dist/src/fuse/resolve.js +206 -0
  531. package/dist/src/fuse/resolve.js.map +1 -0
  532. package/dist/src/gazetteer/index.d.ts +41 -0
  533. package/dist/src/gazetteer/index.d.ts.map +1 -0
  534. package/dist/src/gazetteer/index.js +117 -0
  535. package/dist/src/gazetteer/index.js.map +1 -0
  536. package/dist/src/generate/bankcodes.d.ts +20 -0
  537. package/dist/src/generate/bankcodes.d.ts.map +1 -0
  538. package/dist/src/generate/bankcodes.js +71 -0
  539. package/dist/src/generate/bankcodes.js.map +1 -0
  540. package/dist/src/generate/contact.d.ts +31 -0
  541. package/dist/src/generate/contact.d.ts.map +1 -0
  542. package/dist/src/generate/contact.js +139 -0
  543. package/dist/src/generate/contact.js.map +1 -0
  544. package/dist/src/generate/crypto.d.ts +27 -0
  545. package/dist/src/generate/crypto.d.ts.map +1 -0
  546. package/dist/src/generate/crypto.js +88 -0
  547. package/dist/src/generate/crypto.js.map +1 -0
  548. package/dist/src/generate/documents.d.ts +24 -0
  549. package/dist/src/generate/documents.d.ts.map +1 -0
  550. package/dist/src/generate/documents.js +124 -0
  551. package/dist/src/generate/documents.js.map +1 -0
  552. package/dist/src/generate/financial.d.ts +26 -0
  553. package/dist/src/generate/financial.d.ts.map +1 -0
  554. package/dist/src/generate/financial.js +136 -0
  555. package/dist/src/generate/financial.js.map +1 -0
  556. package/dist/src/generate/index.d.ts +23 -0
  557. package/dist/src/generate/index.d.ts.map +1 -0
  558. package/dist/src/generate/index.js +23 -0
  559. package/dist/src/generate/index.js.map +1 -0
  560. package/dist/src/generate/location.d.ts +12 -0
  561. package/dist/src/generate/location.d.ts.map +1 -0
  562. package/dist/src/generate/location.js +75 -0
  563. package/dist/src/generate/location.js.map +1 -0
  564. package/dist/src/generate/natidAmOc.d.ts +22 -0
  565. package/dist/src/generate/natidAmOc.d.ts.map +1 -0
  566. package/dist/src/generate/natidAmOc.js +181 -0
  567. package/dist/src/generate/natidAmOc.js.map +1 -0
  568. package/dist/src/generate/natidAsia.d.ts +20 -0
  569. package/dist/src/generate/natidAsia.d.ts.map +1 -0
  570. package/dist/src/generate/natidAsia.js +147 -0
  571. package/dist/src/generate/natidAsia.js.map +1 -0
  572. package/dist/src/generate/natidCee.d.ts +21 -0
  573. package/dist/src/generate/natidCee.d.ts.map +1 -0
  574. package/dist/src/generate/natidCee.js +181 -0
  575. package/dist/src/generate/natidCee.js.map +1 -0
  576. package/dist/src/generate/natidMeCis.d.ts +17 -0
  577. package/dist/src/generate/natidMeCis.d.ts.map +1 -0
  578. package/dist/src/generate/natidMeCis.js +121 -0
  579. package/dist/src/generate/natidMeCis.js.map +1 -0
  580. package/dist/src/generate/natidWest.d.ts +32 -0
  581. package/dist/src/generate/natidWest.d.ts.map +1 -0
  582. package/dist/src/generate/natidWest.js +187 -0
  583. package/dist/src/generate/natidWest.js.map +1 -0
  584. package/dist/src/generate/prng.d.ts +10 -0
  585. package/dist/src/generate/prng.d.ts.map +1 -0
  586. package/dist/src/generate/prng.js +18 -0
  587. package/dist/src/generate/prng.js.map +1 -0
  588. package/dist/src/generate/secrets.d.ts +23 -0
  589. package/dist/src/generate/secrets.d.ts.map +1 -0
  590. package/dist/src/generate/secrets.js +126 -0
  591. package/dist/src/generate/secrets.js.map +1 -0
  592. package/dist/src/generate/vat.d.ts +11 -0
  593. package/dist/src/generate/vat.d.ts.map +1 -0
  594. package/dist/src/generate/vat.js +233 -0
  595. package/dist/src/generate/vat.js.map +1 -0
  596. package/dist/src/index.d.ts +81 -0
  597. package/dist/src/index.d.ts.map +1 -0
  598. package/dist/src/index.js +76 -0
  599. package/dist/src/index.js.map +1 -0
  600. package/dist/src/mask/egressGuard.d.ts +54 -0
  601. package/dist/src/mask/egressGuard.d.ts.map +1 -0
  602. package/dist/src/mask/egressGuard.js +67 -0
  603. package/dist/src/mask/egressGuard.js.map +1 -0
  604. package/dist/src/mask/masker.d.ts +76 -0
  605. package/dist/src/mask/masker.d.ts.map +1 -0
  606. package/dist/src/mask/masker.js +201 -0
  607. package/dist/src/mask/masker.js.map +1 -0
  608. package/dist/src/mask/restorer.d.ts +96 -0
  609. package/dist/src/mask/restorer.d.ts.map +1 -0
  610. package/dist/src/mask/restorer.js +263 -0
  611. package/dist/src/mask/restorer.js.map +1 -0
  612. package/dist/src/mask/surrogatePools.d.ts +33 -0
  613. package/dist/src/mask/surrogatePools.d.ts.map +1 -0
  614. package/dist/src/mask/surrogatePools.js +81 -0
  615. package/dist/src/mask/surrogatePools.js.map +1 -0
  616. package/dist/src/mask/surrogates.d.ts +45 -0
  617. package/dist/src/mask/surrogates.d.ts.map +1 -0
  618. package/dist/src/mask/surrogates.js +241 -0
  619. package/dist/src/mask/surrogates.js.map +1 -0
  620. package/dist/src/mask/vault.d.ts +76 -0
  621. package/dist/src/mask/vault.d.ts.map +1 -0
  622. package/dist/src/mask/vault.js +141 -0
  623. package/dist/src/mask/vault.js.map +1 -0
  624. package/dist/src/ner/align.d.ts +36 -0
  625. package/dist/src/ner/align.d.ts.map +1 -0
  626. package/dist/src/ner/align.js +73 -0
  627. package/dist/src/ner/align.js.map +1 -0
  628. package/dist/src/ner/chunk.d.ts +27 -0
  629. package/dist/src/ner/chunk.d.ts.map +1 -0
  630. package/dist/src/ner/chunk.js +55 -0
  631. package/dist/src/ner/chunk.js.map +1 -0
  632. package/dist/src/ner/chunkCache.d.ts +63 -0
  633. package/dist/src/ner/chunkCache.d.ts.map +1 -0
  634. package/dist/src/ner/chunkCache.js +99 -0
  635. package/dist/src/ner/chunkCache.js.map +1 -0
  636. package/dist/src/ner/engine.d.ts +53 -0
  637. package/dist/src/ner/engine.d.ts.map +1 -0
  638. package/dist/src/ner/engine.js +113 -0
  639. package/dist/src/ner/engine.js.map +1 -0
  640. package/dist/src/ner/merge.d.ts +26 -0
  641. package/dist/src/ner/merge.d.ts.map +1 -0
  642. package/dist/src/ner/merge.js +108 -0
  643. package/dist/src/ner/merge.js.map +1 -0
  644. package/dist/src/ner/runStage2.d.ts +17 -0
  645. package/dist/src/ner/runStage2.d.ts.map +1 -0
  646. package/dist/src/ner/runStage2.js +43 -0
  647. package/dist/src/ner/runStage2.js.map +1 -0
  648. package/dist/src/ner/stage2b.d.ts +59 -0
  649. package/dist/src/ner/stage2b.d.ts.map +1 -0
  650. package/dist/src/ner/stage2b.js +51 -0
  651. package/dist/src/ner/stage2b.js.map +1 -0
  652. package/dist/src/ner/transformersClassifier.d.ts +45 -0
  653. package/dist/src/ner/transformersClassifier.d.ts.map +1 -0
  654. package/dist/src/ner/transformersClassifier.js +40 -0
  655. package/dist/src/ner/transformersClassifier.js.map +1 -0
  656. package/dist/src/ner/types.d.ts +93 -0
  657. package/dist/src/ner/types.d.ts.map +1 -0
  658. package/dist/src/ner/types.js +12 -0
  659. package/dist/src/ner/types.js.map +1 -0
  660. package/dist/src/normalization.d.ts +24 -0
  661. package/dist/src/normalization.d.ts.map +1 -0
  662. package/dist/src/normalization.js +92 -0
  663. package/dist/src/normalization.js.map +1 -0
  664. package/dist/src/offsetMap.d.ts +165 -0
  665. package/dist/src/offsetMap.d.ts.map +1 -0
  666. package/dist/src/offsetMap.js +225 -0
  667. package/dist/src/offsetMap.js.map +1 -0
  668. package/dist/src/pipeline.d.ts +58 -0
  669. package/dist/src/pipeline.d.ts.map +1 -0
  670. package/dist/src/pipeline.js +57 -0
  671. package/dist/src/pipeline.js.map +1 -0
  672. package/dist/src/protect.d.ts +146 -0
  673. package/dist/src/protect.d.ts.map +1 -0
  674. package/dist/src/protect.js +161 -0
  675. package/dist/src/protect.js.map +1 -0
  676. package/dist/src/scripts.d.ts +37 -0
  677. package/dist/src/scripts.d.ts.map +1 -0
  678. package/dist/src/scripts.js +145 -0
  679. package/dist/src/scripts.js.map +1 -0
  680. package/dist/src/transforms/foldDigits.d.ts +49 -0
  681. package/dist/src/transforms/foldDigits.d.ts.map +1 -0
  682. package/dist/src/transforms/foldDigits.js +135 -0
  683. package/dist/src/transforms/foldDigits.js.map +1 -0
  684. package/dist/src/transforms/graphemes.d.ts +6 -0
  685. package/dist/src/transforms/graphemes.d.ts.map +1 -0
  686. package/dist/src/transforms/graphemes.js +6 -0
  687. package/dist/src/transforms/graphemes.js.map +1 -0
  688. package/dist/src/transforms/homoglyphFold.d.ts +5 -0
  689. package/dist/src/transforms/homoglyphFold.d.ts.map +1 -0
  690. package/dist/src/transforms/homoglyphFold.js +214 -0
  691. package/dist/src/transforms/homoglyphFold.js.map +1 -0
  692. package/dist/src/transforms/nfkc.d.ts +20 -0
  693. package/dist/src/transforms/nfkc.d.ts.map +1 -0
  694. package/dist/src/transforms/nfkc.js +48 -0
  695. package/dist/src/transforms/nfkc.js.map +1 -0
  696. package/dist/src/transforms/stripInvisibles.d.ts +37 -0
  697. package/dist/src/transforms/stripInvisibles.d.ts.map +1 -0
  698. package/dist/src/transforms/stripInvisibles.js +151 -0
  699. package/dist/src/transforms/stripInvisibles.js.map +1 -0
  700. package/dist/src/transforms/whitespacePunct.d.ts +21 -0
  701. package/dist/src/transforms/whitespacePunct.d.ts.map +1 -0
  702. package/dist/src/transforms/whitespacePunct.js +100 -0
  703. package/dist/src/transforms/whitespacePunct.js.map +1 -0
  704. package/dist/src/types.d.ts +212 -0
  705. package/dist/src/types.d.ts.map +1 -0
  706. package/dist/src/types.js +14 -0
  707. package/dist/src/types.js.map +1 -0
  708. package/package.json +67 -0
  709. package/src/checksums/aba.ts +45 -0
  710. package/src/checksums/digits.ts +108 -0
  711. package/src/checksums/icao9303.ts +53 -0
  712. package/src/checksums/index.ts +36 -0
  713. package/src/checksums/iso7064.ts +168 -0
  714. package/src/checksums/luhn.ts +66 -0
  715. package/src/checksums/mod97.ts +91 -0
  716. package/src/checksums/verhoeff.ts +84 -0
  717. package/src/checksums/weighted.ts +108 -0
  718. package/src/context/documentProfile.ts +293 -0
  719. package/src/context/negativeRules.ts +765 -0
  720. package/src/context/score.ts +430 -0
  721. package/src/context/structure.ts +611 -0
  722. package/src/context/triggers.ts +266 -0
  723. package/src/context/types.ts +150 -0
  724. package/src/crypto/keccak256.ts +98 -0
  725. package/src/crypto/sha256.ts +76 -0
  726. package/src/detect/AUTHORING.md +50 -0
  727. package/src/detect/detectors/bankcodes/auBsb.ts +36 -0
  728. package/src/detect/detectors/bankcodes/brAgencia.ts +46 -0
  729. package/src/detect/detectors/bankcodes/caTransit.ts +89 -0
  730. package/src/detect/detectors/bankcodes/inIfsc.ts +40 -0
  731. package/src/detect/detectors/bankcodes/index.ts +9 -0
  732. package/src/detect/detectors/bankcodes/ukSortCode.ts +38 -0
  733. package/src/detect/detectors/bankcodes/usRouting.ts +47 -0
  734. package/src/detect/detectors/contact/email.ts +113 -0
  735. package/src/detect/detectors/contact/index.ts +10 -0
  736. package/src/detect/detectors/contact/ipv4.ts +112 -0
  737. package/src/detect/detectors/contact/ipv6.ts +188 -0
  738. package/src/detect/detectors/contact/mac.ts +68 -0
  739. package/src/detect/detectors/contact/phone.ts +81 -0
  740. package/src/detect/detectors/contact/urlCredentials.ts +124 -0
  741. package/src/detect/detectors/crypto/ada.ts +52 -0
  742. package/src/detect/detectors/crypto/btc.ts +77 -0
  743. package/src/detect/detectors/crypto/dot.ts +42 -0
  744. package/src/detect/detectors/crypto/eth.ts +70 -0
  745. package/src/detect/detectors/crypto/index.ts +11 -0
  746. package/src/detect/detectors/crypto/ltc.ts +69 -0
  747. package/src/detect/detectors/crypto/sol.ts +41 -0
  748. package/src/detect/detectors/crypto/trx.ts +35 -0
  749. package/src/detect/detectors/crypto/xmr.ts +54 -0
  750. package/src/detect/detectors/documents/driversLicense.ts +83 -0
  751. package/src/detect/detectors/documents/healthData.ts +88 -0
  752. package/src/detect/detectors/documents/index.ts +8 -0
  753. package/src/detect/detectors/documents/passportMrz.ts +203 -0
  754. package/src/detect/detectors/documents/usNpi.ts +50 -0
  755. package/src/detect/detectors/documents/vin.ts +67 -0
  756. package/src/detect/detectors/financial/creditCard.ts +167 -0
  757. package/src/detect/detectors/financial/iban.ts +82 -0
  758. package/src/detect/detectors/financial/ibanRegistry.ts +112 -0
  759. package/src/detect/detectors/financial/index.ts +6 -0
  760. package/src/detect/detectors/financial/swiftBic.ts +61 -0
  761. package/src/detect/detectors/index.ts +14 -0
  762. package/src/detect/detectors/location/coordinates.ts +84 -0
  763. package/src/detect/detectors/location/index.ts +6 -0
  764. package/src/detect/detectors/location/postalCode.ts +56 -0
  765. package/src/detect/detectors/location/postalRegistry.ts +74 -0
  766. package/src/detect/detectors/location/streetAddress.ts +84 -0
  767. package/src/detect/detectors/natid/africa.ts +108 -0
  768. package/src/detect/detectors/natid/ar.ts +62 -0
  769. package/src/detect/detectors/natid/au.ts +99 -0
  770. package/src/detect/detectors/natid/be.ts +45 -0
  771. package/src/detect/detectors/natid/bg.ts +44 -0
  772. package/src/detect/detectors/natid/br.ts +81 -0
  773. package/src/detect/detectors/natid/ca.ts +40 -0
  774. package/src/detect/detectors/natid/cl.ts +47 -0
  775. package/src/detect/detectors/natid/cn.ts +48 -0
  776. package/src/detect/detectors/natid/co.ts +46 -0
  777. package/src/detect/detectors/natid/cz.ts +44 -0
  778. package/src/detect/detectors/natid/de.ts +75 -0
  779. package/src/detect/detectors/natid/dk.ts +31 -0
  780. package/src/detect/detectors/natid/es.ts +95 -0
  781. package/src/detect/detectors/natid/fi.ts +41 -0
  782. package/src/detect/detectors/natid/fr.ts +63 -0
  783. package/src/detect/detectors/natid/gb.ts +70 -0
  784. package/src/detect/detectors/natid/gr.ts +35 -0
  785. package/src/detect/detectors/natid/gulf.ts +116 -0
  786. package/src/detect/detectors/natid/hk.ts +42 -0
  787. package/src/detect/detectors/natid/hr.ts +32 -0
  788. package/src/detect/detectors/natid/hu.ts +36 -0
  789. package/src/detect/detectors/natid/ie.ts +37 -0
  790. package/src/detect/detectors/natid/il.ts +37 -0
  791. package/src/detect/detectors/natid/in.ts +67 -0
  792. package/src/detect/detectors/natid/index.ts +54 -0
  793. package/src/detect/detectors/natid/is.ts +42 -0
  794. package/src/detect/detectors/natid/it.ts +65 -0
  795. package/src/detect/detectors/natid/jp.ts +48 -0
  796. package/src/detect/detectors/natid/kr.ts +41 -0
  797. package/src/detect/detectors/natid/kz.ts +44 -0
  798. package/src/detect/detectors/natid/mx.ts +83 -0
  799. package/src/detect/detectors/natid/nl.ts +38 -0
  800. package/src/detect/detectors/natid/no.ts +50 -0
  801. package/src/detect/detectors/natid/nz.ts +53 -0
  802. package/src/detect/detectors/natid/pe.ts +28 -0
  803. package/src/detect/detectors/natid/pl.ts +100 -0
  804. package/src/detect/detectors/natid/pt.ts +36 -0
  805. package/src/detect/detectors/natid/ro.ts +47 -0
  806. package/src/detect/detectors/natid/ru.ts +82 -0
  807. package/src/detect/detectors/natid/se.ts +42 -0
  808. package/src/detect/detectors/natid/seasia.ts +174 -0
  809. package/src/detect/detectors/natid/sg.ts +39 -0
  810. package/src/detect/detectors/natid/si.ts +42 -0
  811. package/src/detect/detectors/natid/tr.ts +76 -0
  812. package/src/detect/detectors/natid/tw.ts +41 -0
  813. package/src/detect/detectors/natid/ua.ts +38 -0
  814. package/src/detect/detectors/natid/us.ts +118 -0
  815. package/src/detect/detectors/natid/za.ts +42 -0
  816. package/src/detect/detectors/secrets/apiKey.ts +115 -0
  817. package/src/detect/detectors/secrets/connectionString.ts +71 -0
  818. package/src/detect/detectors/secrets/genericSecret.ts +81 -0
  819. package/src/detect/detectors/secrets/index.ts +8 -0
  820. package/src/detect/detectors/secrets/jwt.ts +101 -0
  821. package/src/detect/detectors/secrets/pemPrivateKey.ts +59 -0
  822. package/src/detect/detectors/vat/euVat.ts +280 -0
  823. package/src/detect/detectors/vat/index.ts +4 -0
  824. package/src/detect/entropy.ts +60 -0
  825. package/src/detect/isoCountries.ts +30 -0
  826. package/src/detect/registry.ts +134 -0
  827. package/src/detect/runner.ts +187 -0
  828. package/src/detect/types.ts +296 -0
  829. package/src/encoding/base58.ts +85 -0
  830. package/src/encoding/base58monero.ts +90 -0
  831. package/src/encoding/bech32.ts +125 -0
  832. package/src/encoding/bytes.ts +48 -0
  833. package/src/entityFamily.ts +70 -0
  834. package/src/entityLabel.ts +56 -0
  835. package/src/entityTypes.ts +107 -0
  836. package/src/exposure/index.ts +189 -0
  837. package/src/fuse/calibrate.ts +224 -0
  838. package/src/fuse/defaultCalibration.ts +71 -0
  839. package/src/fuse/explain.ts +114 -0
  840. package/src/fuse/profiles.ts +187 -0
  841. package/src/fuse/resolve.ts +237 -0
  842. package/src/gazetteer/index.ts +139 -0
  843. package/src/generate/bankcodes.ts +82 -0
  844. package/src/generate/contact.ts +147 -0
  845. package/src/generate/crypto.ts +91 -0
  846. package/src/generate/documents.ts +142 -0
  847. package/src/generate/financial.ts +149 -0
  848. package/src/generate/index.ts +22 -0
  849. package/src/generate/location.ts +80 -0
  850. package/src/generate/natidAmOc.ts +198 -0
  851. package/src/generate/natidAsia.ts +162 -0
  852. package/src/generate/natidCee.ts +196 -0
  853. package/src/generate/natidMeCis.ts +131 -0
  854. package/src/generate/natidWest.ts +208 -0
  855. package/src/generate/prng.ts +17 -0
  856. package/src/generate/secrets.ts +141 -0
  857. package/src/generate/vat.ts +239 -0
  858. package/src/index.ts +186 -0
  859. package/src/mask/egressGuard.ts +88 -0
  860. package/src/mask/masker.ts +276 -0
  861. package/src/mask/restorer.ts +284 -0
  862. package/src/mask/surrogatePools.ts +96 -0
  863. package/src/mask/surrogates.ts +248 -0
  864. package/src/mask/vault.ts +153 -0
  865. package/src/ner/align.ts +86 -0
  866. package/src/ner/chunk.ts +65 -0
  867. package/src/ner/chunkCache.ts +110 -0
  868. package/src/ner/engine.ts +141 -0
  869. package/src/ner/merge.ts +123 -0
  870. package/src/ner/runStage2.ts +51 -0
  871. package/src/ner/stage2b.ts +73 -0
  872. package/src/ner/transformersClassifier.ts +79 -0
  873. package/src/ner/types.ts +99 -0
  874. package/src/normalization.ts +119 -0
  875. package/src/offsetMap.ts +271 -0
  876. package/src/pipeline.ts +96 -0
  877. package/src/protect.ts +284 -0
  878. package/src/scripts.ts +164 -0
  879. package/src/transforms/foldDigits.ts +138 -0
  880. package/src/transforms/graphemes.ts +5 -0
  881. package/src/transforms/homoglyphFold.ts +221 -0
  882. package/src/transforms/nfkc.ts +48 -0
  883. package/src/transforms/stripInvisibles.ts +158 -0
  884. package/src/transforms/whitespacePunct.ts +100 -0
  885. package/src/types.ts +339 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"negativeRules.js","sourceRoot":"","sources":["../../../src/context/negativeRules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Stage 3, the scoring pass.
3
+ *
4
+ * SPEC.md: "Each candidate's confidence is adjusted by evidence from its
5
+ * surroundings" — trigger proximity, structural cues, negative context,
6
+ * document type, co-occurrence, and repetition.
7
+ *
8
+ * Every adjustment is a named, signed contribution, so the final number
9
+ * always decomposes into the reasons that produced it (see `types.ts`).
10
+ * The weights below are DELIBERATELY ROUND and are not tuned against the
11
+ * evaluation corpus: Stage 3 orders evidence, Stage 4 (M8) calibrates it
12
+ * into probabilities against held-out data. Tuning these by hand until the
13
+ * corpus numbers looked good would produce exactly the self-fulfilling
14
+ * measurement this project has refused since M3.
15
+ *
16
+ * ONE CROSS-CANDIDATE SIGNAL, BY DESIGN. Negative rules receive a
17
+ * `RuleContext` that deliberately cannot see other candidates, because
18
+ * reasoning about overlapping spans is Stage 4's overlap resolution.
19
+ * Co-occurrence is the single exception SPEC.md explicitly calls for, and it
20
+ * only ever REINFORCES — it can raise a candidate's confidence, never
21
+ * suppress or reorder one. That asymmetry is what keeps it from becoming
22
+ * overlap resolution by the back door.
23
+ */
24
+ import type { EntityType } from '../types.js';
25
+ import type { ContextSignal } from '../detect/types.js';
26
+ import { type StructureIndex } from './structure.js';
27
+ import { type LanguageTriggers, type TriggerIndex } from './triggers.js';
28
+ import { type DomainLexicon } from './documentProfile.js';
29
+ import type { ContextScoredCandidate, DocumentProfile, PipelineCandidate } from './types.js';
30
+ export interface ContextOptions {
31
+ readonly triggerLexicons?: readonly LanguageTriggers[];
32
+ readonly domainLexicon?: DomainLexicon;
33
+ }
34
+ export interface ContextAnalysis {
35
+ readonly profile: DocumentProfile;
36
+ readonly structure: StructureIndex;
37
+ readonly triggers: TriggerIndex;
38
+ /** Evidence for the Stage 1 runner's `contextFor` hook. */
39
+ signalAt(start: number, end: number, type?: EntityType): ContextSignal | undefined;
40
+ /** Adjust and filter a candidate set. */
41
+ score(candidates: readonly PipelineCandidate[]): ContextScoredCandidate[];
42
+ }
43
+ /**
44
+ * Analyse a document once, then score any number of candidate sets against it.
45
+ *
46
+ * The document-level work (structure index, format and domain profile,
47
+ * trigger compilation) is the expensive part and is shared, which is what lets
48
+ * Stage 1's inline `contextFor` hook and the Stage 3 post-pass draw on exactly
49
+ * the same evidence rather than two divergent implementations.
50
+ */
51
+ export declare function analyzeContext(text: string, options?: ContextOptions): ContextAnalysis;
52
+ //# sourceMappingURL=score.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.d.ts","sourceRoot":"","sources":["../../../src/context/score.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAuB,KAAK,cAAc,EAAuB,MAAM,gBAAgB,CAAC;AAC/F,OAAO,EAAmC,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAC1G,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE3E,OAAO,KAAK,EAEV,sBAAsB,EAEtB,eAAe,EACf,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAkFpB,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,eAAe,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;CACxC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAC;IACnC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;IAChC,2DAA2D;IAC3D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS,CAAC;IACnF,yCAAyC;IACzC,KAAK,CAAC,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,sBAAsB,EAAE,CAAC;CAC3E;AA8DD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,eAAe,CAmO1F"}
@@ -0,0 +1,346 @@
1
+ /**
2
+ * Stage 3, the scoring pass.
3
+ *
4
+ * SPEC.md: "Each candidate's confidence is adjusted by evidence from its
5
+ * surroundings" — trigger proximity, structural cues, negative context,
6
+ * document type, co-occurrence, and repetition.
7
+ *
8
+ * Every adjustment is a named, signed contribution, so the final number
9
+ * always decomposes into the reasons that produced it (see `types.ts`).
10
+ * The weights below are DELIBERATELY ROUND and are not tuned against the
11
+ * evaluation corpus: Stage 3 orders evidence, Stage 4 (M8) calibrates it
12
+ * into probabilities against held-out data. Tuning these by hand until the
13
+ * corpus numbers looked good would produce exactly the self-fulfilling
14
+ * measurement this project has refused since M3.
15
+ *
16
+ * ONE CROSS-CANDIDATE SIGNAL, BY DESIGN. Negative rules receive a
17
+ * `RuleContext` that deliberately cannot see other candidates, because
18
+ * reasoning about overlapping spans is Stage 4's overlap resolution.
19
+ * Co-occurrence is the single exception SPEC.md explicitly calls for, and it
20
+ * only ever REINFORCES — it can raise a candidate's confidence, never
21
+ * suppress or reorder one. That asymmetry is what keeps it from becoming
22
+ * overlap resolution by the back door.
23
+ */
24
+ import { buildStructureIndex } from './structure.js';
25
+ import { buildTriggerIndex, foldForMatch } from './triggers.js';
26
+ import { profileDocument } from './documentProfile.js';
27
+ import { NEGATIVE_RULES, ruleApplies } from './negativeRules.js';
28
+ // ─────────────────────────────────────────────────────────────────────────────
29
+ // Weights
30
+ // ─────────────────────────────────────────────────────────────────────────────
31
+ /** A label naming this entity type sits next to the candidate. */
32
+ const TRIGGER_ADJACENT = 0.25;
33
+ /** The same, but further away: evidence decays with distance. */
34
+ const TRIGGER_DISTANT = 0.1;
35
+ /** Distance in characters beyond which a trigger counts as distant. */
36
+ const TRIGGER_NEAR_CHARS = 16;
37
+ /**
38
+ * The candidate is the value of a key that names this entity type.
39
+ * SPEC.md calls this case "near-certain regardless of shape", which is why it
40
+ * outweighs every other positive signal here.
41
+ */
42
+ const STRUCTURE_KEY_MATCH = 0.35;
43
+ /** The candidate is a value in some key/value structure, key unrecognized. */
44
+ const STRUCTURE_ASSIGNMENT = 0.05;
45
+ /** Complementary types nearby: the shape of a contact record. */
46
+ const COOCCURRENCE = 0.1;
47
+ /** Distinct complementary types required before co-occurrence counts. */
48
+ const COOCCURRENCE_MIN_TYPES = 2;
49
+ /** How far apart candidates may be and still reinforce each other. */
50
+ const COOCCURRENCE_WINDOW = 240;
51
+ /**
52
+ * Stage 2b agreement: the model proposed this span AND a bundled gazetteer
53
+ * knows the name.
54
+ *
55
+ * SPEC.md: "Gazetteer hit alone is medium confidence; gazetteer plus model
56
+ * agreement is high." Every candidate reaching this signal already came from
57
+ * a detector or the model, so what is being scored here is always the
58
+ * agreement case — which is why it is the largest positive weight after a
59
+ * key that names the type outright.
60
+ */
61
+ const GAZETTEER_WHOLE = 0.2;
62
+ /** Some words of a multi-word name are known, which is weaker corroboration. */
63
+ const GAZETTEER_PARTIAL = 0.1;
64
+ /** A name repeated through a technical document is likelier an identifier. */
65
+ const REPETITION_PENALTY = -0.2;
66
+ /** Occurrences before repetition counts as a signal. */
67
+ const REPETITION_MIN = 4;
68
+ /** Types that together suggest a contact record rather than coincidence. */
69
+ const CONTACT_RECORD = [
70
+ 'PERSON',
71
+ 'EMAIL',
72
+ 'PHONE',
73
+ 'STREET_ADDRESS',
74
+ 'POSTAL_CODE',
75
+ 'LOCATION',
76
+ 'DATE_OF_BIRTH',
77
+ 'NATIONAL_ID',
78
+ ];
79
+ /** Names and places are usually identifiers, not people, in these formats. */
80
+ const TECHNICAL_FORMATS = ['code', 'log', 'json', 'yaml', 'csv'];
81
+ /**
82
+ * Per-format weight shifts.
83
+ *
84
+ * SPEC.md gives the governing example: "Code mode raises secret sensitivity
85
+ * and lowers person-name sensitivity, since identifiers in code are usually
86
+ * not people."
87
+ */
88
+ const FORMAT_WEIGHTS = {
89
+ code: { GENERIC_SECRET: 0.1, API_KEY: 0.05, PRIVATE_KEY: 0.05, PERSON: -0.15, ORG: -0.1, LOCATION: -0.1 },
90
+ log: { GENERIC_SECRET: 0.05, PERSON: -0.1, ORG: -0.05, LOCATION: -0.05 },
91
+ json: { GENERIC_SECRET: 0.05, PERSON: -0.05 },
92
+ yaml: { GENERIC_SECRET: 0.05, PERSON: -0.05 },
93
+ email: { PERSON: 0.05, PHONE: 0.05 },
94
+ };
95
+ const EMPTY_LEXICONS = [];
96
+ /**
97
+ * Compiled trigger indexes, keyed by the lexicon array they came from.
98
+ *
99
+ * Compiling the bundled lexicons means folding roughly five thousand terms,
100
+ * which is per-DOCUMENT work only if you let it be: measured at 27 ms per
101
+ * document on the eval corpus, against 0.3 ms for the rest of Stage 3. The
102
+ * lexicons are module constants, so the identity key is stable and the cache
103
+ * holds one entry in practice. Weak so a caller passing a throwaway array —
104
+ * a test, a tuning sweep — does not leak it.
105
+ */
106
+ const triggerIndexCache = new WeakMap();
107
+ function triggerIndexFor(lexicons) {
108
+ const cached = triggerIndexCache.get(lexicons);
109
+ if (cached !== undefined)
110
+ return cached;
111
+ const built = buildTriggerIndex(lexicons);
112
+ triggerIndexCache.set(lexicons, built);
113
+ return built;
114
+ }
115
+ function lineAt(text, offset) {
116
+ const start = text.lastIndexOf('\n', offset - 1) + 1;
117
+ const newline = text.indexOf('\n', offset);
118
+ const end = newline === -1 ? text.length : newline;
119
+ return { text: text.slice(start, end), start, end };
120
+ }
121
+ function clamp01(value) {
122
+ return Math.min(1, Math.max(0, value));
123
+ }
124
+ /**
125
+ * Has another detector already positively identified these characters?
126
+ *
127
+ * Used ONLY to hold back GENERIC_SECRET's context requirement. The direction
128
+ * matters: this signal can prevent a suppression, never cause one, so reading
129
+ * the pre-suppression candidate set is conservative — a candidate that later
130
+ * gets suppressed itself can only have made us keep more, not less.
131
+ */
132
+ function isExplainedByOverlap(candidate, all) {
133
+ return all.some((other) => other !== candidate &&
134
+ other.type !== candidate.type &&
135
+ other.start < candidate.end &&
136
+ candidate.start < other.end);
137
+ }
138
+ /**
139
+ * Analyse a document once, then score any number of candidate sets against it.
140
+ *
141
+ * The document-level work (structure index, format and domain profile,
142
+ * trigger compilation) is the expensive part and is shared, which is what lets
143
+ * Stage 1's inline `contextFor` hook and the Stage 3 post-pass draw on exactly
144
+ * the same evidence rather than two divergent implementations.
145
+ */
146
+ export function analyzeContext(text, options = {}) {
147
+ const structure = buildStructureIndex(text);
148
+ const triggers = triggerIndexFor(options.triggerLexicons ?? EMPTY_LEXICONS);
149
+ const profile = profileDocument(text, {
150
+ structureIndex: structure,
151
+ ...(options.domainLexicon !== undefined ? { domainLexicon: options.domainLexicon } : {}),
152
+ });
153
+ /** Does this slot's key name the given entity type? */
154
+ function keyNames(slot, type) {
155
+ const folded = foldForMatch(slot.key);
156
+ if (folded.length === 0)
157
+ return false;
158
+ const matches = triggers.near(folded, folded.length, folded.length, folded.length + 1);
159
+ return matches.some((m) => m.types.includes(type) && m.term === folded);
160
+ }
161
+ function signalAt(start, end, type) {
162
+ const slot = structure.slotAt(start, end);
163
+ const nearby = triggers.near(text, start, end);
164
+ const relevant = type === undefined ? nearby : nearby.filter((m) => m.types.includes(type));
165
+ const trigger = relevant[0]?.term;
166
+ if (slot === undefined && trigger === undefined)
167
+ return undefined;
168
+ return {
169
+ ...(trigger !== undefined ? { trigger } : {}),
170
+ ...(slot !== undefined ? { assignment: true } : {}),
171
+ documentType: profile.format,
172
+ };
173
+ }
174
+ function score(candidates) {
175
+ return candidates.map((candidate) => scoreOne(candidate, candidates));
176
+ }
177
+ function scoreOne(candidate, all) {
178
+ const contributions = [];
179
+ const { type, start, end } = candidate;
180
+ const line = lineAt(text, start);
181
+ const suppression = applyNegativeRules(type, start, end, line, contributions);
182
+ if (suppression !== undefined) {
183
+ return {
184
+ candidate,
185
+ contextConfidence: 0,
186
+ contributions,
187
+ suppressed: true,
188
+ suppressionReason: suppression,
189
+ };
190
+ }
191
+ const slot = addStructureSignals(candidate, contributions);
192
+ const hasTrigger = addTriggerSignals(candidate, contributions);
193
+ addFormatSignal(type, contributions);
194
+ addGazetteerSignal(candidate, contributions);
195
+ addCooccurrence(candidate, all, contributions);
196
+ addRepetition(candidate, contributions);
197
+ // SPEC.md, GENERIC_SECRET: "Require a Shannon entropy threshold AND an
198
+ // assignment-context signal … so that 'your-api-key-here', UUIDs, git
199
+ // SHAs and base64 image data do not trigger." The conjunction is the
200
+ // point: entropy alone is not evidence of a secret. Note the wording
201
+ // differs deliberately from POSTAL_CODE and STREET_ADDRESS, which
202
+ // "require context boost" — those stay emitted at low confidence and
203
+ // context only raises them.
204
+ //
205
+ // With one exception, ratified after measurement (ARCHITECTURE.md D19):
206
+ // a candidate whose span is ALREADY explained by another detector's
207
+ // positive identification is left alone. Suppressing it would not be
208
+ // Stage 3 removing a false positive — the characters are sensitive, and
209
+ // some other detector says so — it would be Stage 3 pre-empting the
210
+ // cross-type overlap resolution that belongs to Stage 4.
211
+ if (type === 'GENERIC_SECRET' && slot === undefined && !hasTrigger && !isExplainedByOverlap(candidate, all)) {
212
+ return {
213
+ candidate,
214
+ contextConfidence: 0,
215
+ contributions,
216
+ suppressed: true,
217
+ suppressionReason: 'generic-secret-requires-assignment',
218
+ };
219
+ }
220
+ const total = contributions.reduce((sum, c) => sum + c.delta, candidate.rawConfidence);
221
+ return {
222
+ candidate,
223
+ contextConfidence: clamp01(total),
224
+ contributions,
225
+ suppressed: false,
226
+ };
227
+ }
228
+ function applyNegativeRules(type, start, end, line, out) {
229
+ const ctx = { text, start, end, type, profile, line };
230
+ for (const rule of NEGATIVE_RULES) {
231
+ if (!ruleApplies(rule, type))
232
+ continue;
233
+ if (!rule.test(ctx))
234
+ continue;
235
+ if (rule.action === 'suppress') {
236
+ out.push({ signal: `negative:${rule.id}`, delta: -1, detail: rule.id });
237
+ return rule.id;
238
+ }
239
+ out.push({ signal: `negative:${rule.id}`, delta: rule.action, detail: rule.id });
240
+ }
241
+ return undefined;
242
+ }
243
+ function addStructureSignals(candidate, out) {
244
+ const slot = structure.slotAt(candidate.start, candidate.end);
245
+ if (slot === undefined)
246
+ return undefined;
247
+ if (keyNames(slot, candidate.type)) {
248
+ // The key is a known lexicon term, so naming it leaks nothing.
249
+ out.push({
250
+ signal: `structure:key-names-${candidate.type}`,
251
+ delta: STRUCTURE_KEY_MATCH,
252
+ detail: foldForMatch(slot.key),
253
+ });
254
+ return slot;
255
+ }
256
+ // The key is arbitrary document text and must NOT be echoed into an
257
+ // explanation; only the structural kind is safe to record.
258
+ out.push({ signal: `structure:${slot.kind}`, delta: STRUCTURE_ASSIGNMENT });
259
+ return slot;
260
+ }
261
+ function addTriggerSignals(candidate, out) {
262
+ const matches = triggers
263
+ .near(text, candidate.start, candidate.end)
264
+ .filter((m) => m.types.includes(candidate.type));
265
+ const nearest = matches[0];
266
+ if (nearest === undefined)
267
+ return false;
268
+ const delta = nearest.distance <= TRIGGER_NEAR_CHARS ? TRIGGER_ADJACENT : TRIGGER_DISTANT;
269
+ out.push({ signal: `trigger:${candidate.type}`, delta, detail: nearest.term });
270
+ return true;
271
+ }
272
+ function addGazetteerSignal(candidate, out) {
273
+ // READ, not looked up. The lookup moved to Stage 2b (ner/stage2b.ts),
274
+ // where SPEC puts it - "checked in parallel with the model" - and the
275
+ // static import that used to be here is why 3.4 MB of Bloom filters were
276
+ // linked into the content script to serve types only the model produces.
277
+ //
278
+ // Nothing is lost by reading: no Stage 1 detector declares PERSON, ORG or
279
+ // LOCATION (31 types, verified by enumeration), so no Stage 1 candidate
280
+ // could ever have reached the lookup that used to be here.
281
+ const hit = 'gazetteer' in candidate ? candidate.gazetteer : undefined;
282
+ if (hit === undefined)
283
+ return;
284
+ // The matched name is the candidate's own text, so it must NOT go in the
285
+ // detail — explanations stay free of sensitive values. Only the shape of
286
+ // the agreement is recorded.
287
+ out.push({
288
+ signal: `gazetteer:${candidate.type}`,
289
+ delta: hit.whole ? GAZETTEER_WHOLE : GAZETTEER_PARTIAL,
290
+ detail: hit.whole ? 'full name known' : `${hit.matchedWords}/${hit.totalWords} words known`,
291
+ });
292
+ }
293
+ function addFormatSignal(type, out) {
294
+ const delta = FORMAT_WEIGHTS[profile.format]?.[type];
295
+ if (delta === undefined)
296
+ return;
297
+ out.push({ signal: `format:${profile.format}`, delta, detail: profile.format });
298
+ }
299
+ function addCooccurrence(candidate, all, out) {
300
+ if (!CONTACT_RECORD.includes(candidate.type))
301
+ return;
302
+ const neighbours = new Set();
303
+ for (const other of all) {
304
+ if (other === candidate)
305
+ continue;
306
+ if (!CONTACT_RECORD.includes(other.type) || other.type === candidate.type)
307
+ continue;
308
+ const gap = other.start > candidate.end ? other.start - candidate.end : candidate.start - other.end;
309
+ if (gap <= COOCCURRENCE_WINDOW)
310
+ neighbours.add(other.type);
311
+ }
312
+ if (neighbours.size < COOCCURRENCE_MIN_TYPES)
313
+ return;
314
+ out.push({
315
+ signal: 'cooccurrence:contact-record',
316
+ delta: COOCCURRENCE,
317
+ detail: `${neighbours.size} complementary types nearby`,
318
+ });
319
+ }
320
+ function addRepetition(candidate, out) {
321
+ // SPEC.md: "a string appearing many times in a technical document is more
322
+ // likely a variable than a person."
323
+ if (!TECHNICAL_FORMATS.includes(profile.format))
324
+ return;
325
+ if (!['PERSON', 'ORG', 'LOCATION'].includes(candidate.type))
326
+ return;
327
+ const needle = candidate.text;
328
+ if (needle.length < 2)
329
+ return;
330
+ let count = 0;
331
+ let at = text.indexOf(needle);
332
+ while (at !== -1 && count < REPETITION_MIN) {
333
+ count += 1;
334
+ at = text.indexOf(needle, at + needle.length);
335
+ }
336
+ if (count < REPETITION_MIN)
337
+ return;
338
+ out.push({
339
+ signal: 'repetition:technical-document',
340
+ delta: REPETITION_PENALTY,
341
+ detail: `repeated ${count}+ times in ${profile.format}`,
342
+ });
343
+ }
344
+ return { profile, structure, triggers, signalAt, score };
345
+ }
346
+ //# sourceMappingURL=score.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../../../src/context/score.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Stage 3, STRUCTURAL CUES.
3
+ *
4
+ * SPEC.md: "STRUCTURAL CUES — key names in JSON/YAML, CSV column headers,
5
+ * form labels, markdown table headers, .env variable names. A value under a
6
+ * key named 'api_key' or 'ssn' is near-certain regardless of its shape."
7
+ *
8
+ * That last clause is the whole point of this module: shape-based detection
9
+ * cannot tell a random-looking API key from a random-looking order number,
10
+ * but the KEY the value sits under usually can. So this module answers one
11
+ * question for a candidate span — "what is this value labelled as?" — and
12
+ * leaves the interpretation of that label to the trigger lexicons.
13
+ *
14
+ * Everything here is line-oriented, which is safe because Stage 0 preserves
15
+ * line structure: `normalizeWhitespacePunct` maps exotic spaces 1:1 and
16
+ * explicitly does not collapse runs or trim (see its header). Offsets
17
+ * produced here are therefore offsets into the normalized text, the same
18
+ * space Stage 1 and Stage 2 candidates live in.
19
+ */
20
+ /** How a key/value association was expressed in the source text. */
21
+ export type StructureKind = 'json' | 'yaml' | 'env' | 'code-assignment' | 'csv' | 'markdown-table' | 'form-label';
22
+ /** A value position in the document, together with the key that labels it. */
23
+ export interface StructuredSlot {
24
+ /** The key/label text exactly as written, minus quotes and surrounding space. */
25
+ readonly key: string;
26
+ readonly kind: StructureKind;
27
+ /** Start offset of the VALUE in the normalized text (inclusive). */
28
+ readonly valueStart: number;
29
+ /** End offset of the VALUE (exclusive). */
30
+ readonly valueEnd: number;
31
+ }
32
+ /** Slots for one document, with containment lookup. */
33
+ export interface StructureIndex {
34
+ readonly slots: readonly StructuredSlot[];
35
+ /** The innermost slot whose value range contains the given span, if any. */
36
+ slotAt(start: number, end: number): StructuredSlot | undefined;
37
+ }
38
+ /**
39
+ * Build the structural index for a document.
40
+ *
41
+ * Slots may overlap — a CSV cell and a colon-form label can both cover a span.
42
+ * `slotAt` resolves that by returning the SMALLEST containing slot, which is
43
+ * the most specific label for the value.
44
+ */
45
+ export declare function buildStructureIndex(text: string): StructureIndex;
46
+ //# sourceMappingURL=structure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../../src/context/structure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,oEAAoE;AACpE,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,KAAK,GACL,iBAAiB,GACjB,KAAK,GACL,gBAAgB,GAChB,YAAY,CAAC;AAEjB,8EAA8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,iFAAiF;IACjF,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,oEAAoE;IACpE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,2CAA2C;IAC3C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,uDAAuD;AACvD,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,CAAC;IAC1C,4EAA4E;IAC5E,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAChE;AAmgBD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAsChE"}