opencode-rehydra-core 0.14.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.
- package/LICENSE +22 -0
- package/README.en.md +191 -0
- package/README.md +191 -0
- package/dist/browser.d.ts +54 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +74 -0
- package/dist/browser.js.map +1 -0
- package/dist/core/anonymizer.d.ts +309 -0
- package/dist/core/anonymizer.d.ts.map +1 -0
- package/dist/core/anonymizer.js +555 -0
- package/dist/core/anonymizer.js.map +1 -0
- package/dist/core/index.d.ts +6 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +6 -0
- package/dist/core/index.js.map +1 -0
- package/dist/crypto/index.d.ts +6 -0
- package/dist/crypto/index.d.ts.map +1 -0
- package/dist/crypto/index.js +6 -0
- package/dist/crypto/index.js.map +1 -0
- package/dist/crypto/pii-map-crypto.d.ts +114 -0
- package/dist/crypto/pii-map-crypto.d.ts.map +1 -0
- package/dist/crypto/pii-map-crypto.js +228 -0
- package/dist/crypto/pii-map-crypto.js.map +1 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +72 -0
- package/dist/index.js.map +1 -0
- package/dist/ner/bio-decoder.d.ts +64 -0
- package/dist/ner/bio-decoder.d.ts.map +1 -0
- package/dist/ner/bio-decoder.js +218 -0
- package/dist/ner/bio-decoder.js.map +1 -0
- package/dist/ner/index.d.ts +12 -0
- package/dist/ner/index.d.ts.map +1 -0
- package/dist/ner/index.js +12 -0
- package/dist/ner/index.js.map +1 -0
- package/dist/ner/inference-server-client.d.ts +81 -0
- package/dist/ner/inference-server-client.d.ts.map +1 -0
- package/dist/ner/inference-server-client.js +120 -0
- package/dist/ner/inference-server-client.js.map +1 -0
- package/dist/ner/inference-server-ner-model.d.ts +43 -0
- package/dist/ner/inference-server-ner-model.d.ts.map +1 -0
- package/dist/ner/inference-server-ner-model.js +119 -0
- package/dist/ner/inference-server-ner-model.js.map +1 -0
- package/dist/ner/model-manager.d.ts +111 -0
- package/dist/ner/model-manager.d.ts.map +1 -0
- package/dist/ner/model-manager.js +334 -0
- package/dist/ner/model-manager.js.map +1 -0
- package/dist/ner/ner-model.d.ts +172 -0
- package/dist/ner/ner-model.d.ts.map +1 -0
- package/dist/ner/ner-model.js +514 -0
- package/dist/ner/ner-model.js.map +1 -0
- package/dist/ner/onnx-runtime.browser.d.ts +46 -0
- package/dist/ner/onnx-runtime.browser.d.ts.map +1 -0
- package/dist/ner/onnx-runtime.browser.js +90 -0
- package/dist/ner/onnx-runtime.browser.js.map +1 -0
- package/dist/ner/onnx-runtime.d.ts +72 -0
- package/dist/ner/onnx-runtime.d.ts.map +1 -0
- package/dist/ner/onnx-runtime.js +132 -0
- package/dist/ner/onnx-runtime.js.map +1 -0
- package/dist/ner/token-window.d.ts +19 -0
- package/dist/ner/token-window.d.ts.map +1 -0
- package/dist/ner/token-window.js +101 -0
- package/dist/ner/token-window.js.map +1 -0
- package/dist/ner/tokenizer.d.ts +142 -0
- package/dist/ner/tokenizer.d.ts.map +1 -0
- package/dist/ner/tokenizer.js +362 -0
- package/dist/ner/tokenizer.js.map +1 -0
- package/dist/opencode-plugin/git-identity.d.ts +3 -0
- package/dist/opencode-plugin/git-identity.d.ts.map +1 -0
- package/dist/opencode-plugin/git-identity.js +37 -0
- package/dist/opencode-plugin/git-identity.js.map +1 -0
- package/dist/opencode-plugin/github-username.d.ts +3 -0
- package/dist/opencode-plugin/github-username.d.ts.map +1 -0
- package/dist/opencode-plugin/github-username.js +41 -0
- package/dist/opencode-plugin/github-username.js.map +1 -0
- package/dist/opencode-plugin/identity-recognizer.d.ts +5 -0
- package/dist/opencode-plugin/identity-recognizer.d.ts.map +1 -0
- package/dist/opencode-plugin/identity-recognizer.js +21 -0
- package/dist/opencode-plugin/identity-recognizer.js.map +1 -0
- package/dist/opencode-plugin/index.d.ts +7 -0
- package/dist/opencode-plugin/index.d.ts.map +1 -0
- package/dist/opencode-plugin/index.js +6 -0
- package/dist/opencode-plugin/index.js.map +1 -0
- package/dist/opencode-plugin/plugin.d.ts +39 -0
- package/dist/opencode-plugin/plugin.d.ts.map +1 -0
- package/dist/opencode-plugin/plugin.js +294 -0
- package/dist/opencode-plugin/plugin.js.map +1 -0
- package/dist/opencode-plugin/types.d.ts +33 -0
- package/dist/opencode-plugin/types.d.ts.map +1 -0
- package/dist/opencode-plugin/types.js +5 -0
- package/dist/opencode-plugin/types.js.map +1 -0
- package/dist/opencode-plugin/v2/anon-state.d.ts +12 -0
- package/dist/opencode-plugin/v2/anon-state.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/anon-state.js +14 -0
- package/dist/opencode-plugin/v2/anon-state.js.map +1 -0
- package/dist/opencode-plugin/v2/deep-rehydrate.d.ts +13 -0
- package/dist/opencode-plugin/v2/deep-rehydrate.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/deep-rehydrate.js +33 -0
- package/dist/opencode-plugin/v2/deep-rehydrate.js.map +1 -0
- package/dist/opencode-plugin/v2/index.d.ts +17 -0
- package/dist/opencode-plugin/v2/index.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/index.js +17 -0
- package/dist/opencode-plugin/v2/index.js.map +1 -0
- package/dist/opencode-plugin/v2/logger.d.ts +24 -0
- package/dist/opencode-plugin/v2/logger.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/logger.js +73 -0
- package/dist/opencode-plugin/v2/logger.js.map +1 -0
- package/dist/opencode-plugin/v2/options.d.ts +40 -0
- package/dist/opencode-plugin/v2/options.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/options.js +132 -0
- package/dist/opencode-plugin/v2/options.js.map +1 -0
- package/dist/opencode-plugin/v2/register-hooks.d.ts +43 -0
- package/dist/opencode-plugin/v2/register-hooks.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/register-hooks.js +160 -0
- package/dist/opencode-plugin/v2/register-hooks.js.map +1 -0
- package/dist/opencode-plugin/v2/rehydrate-tail.d.ts +101 -0
- package/dist/opencode-plugin/v2/rehydrate-tail.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/rehydrate-tail.js +147 -0
- package/dist/opencode-plugin/v2/rehydrate-tail.js.map +1 -0
- package/dist/opencode-plugin/v2/response-rehydrate.d.ts +78 -0
- package/dist/opencode-plugin/v2/response-rehydrate.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/response-rehydrate.js +210 -0
- package/dist/opencode-plugin/v2/response-rehydrate.js.map +1 -0
- package/dist/opencode-plugin/v2/scrub-messages.d.ts +39 -0
- package/dist/opencode-plugin/v2/scrub-messages.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/scrub-messages.js +260 -0
- package/dist/opencode-plugin/v2/scrub-messages.js.map +1 -0
- package/dist/opencode-plugin/v2/sessions.d.ts +17 -0
- package/dist/opencode-plugin/v2/sessions.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/sessions.js +23 -0
- package/dist/opencode-plugin/v2/sessions.js.map +1 -0
- package/dist/opencode-plugin/v2/sse.d.ts +101 -0
- package/dist/opencode-plugin/v2/sse.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/sse.js +235 -0
- package/dist/opencode-plugin/v2/sse.js.map +1 -0
- package/dist/opencode-plugin/v2/types.d.ts +188 -0
- package/dist/opencode-plugin/v2/types.d.ts.map +1 -0
- package/dist/opencode-plugin/v2/types.js +10 -0
- package/dist/opencode-plugin/v2/types.js.map +1 -0
- package/dist/opencode-plugin/vcs-command.d.ts +3 -0
- package/dist/opencode-plugin/vcs-command.d.ts.map +1 -0
- package/dist/opencode-plugin/vcs-command.js +34 -0
- package/dist/opencode-plugin/vcs-command.js.map +1 -0
- package/dist/pipeline/index.d.ts +12 -0
- package/dist/pipeline/index.d.ts.map +1 -0
- package/dist/pipeline/index.js +12 -0
- package/dist/pipeline/index.js.map +1 -0
- package/dist/pipeline/prenormalize.d.ts +48 -0
- package/dist/pipeline/prenormalize.d.ts.map +1 -0
- package/dist/pipeline/prenormalize.js +94 -0
- package/dist/pipeline/prenormalize.js.map +1 -0
- package/dist/pipeline/resolver.d.ts +56 -0
- package/dist/pipeline/resolver.d.ts.map +1 -0
- package/dist/pipeline/resolver.js +239 -0
- package/dist/pipeline/resolver.js.map +1 -0
- package/dist/pipeline/semantic-data-loader.d.ts +171 -0
- package/dist/pipeline/semantic-data-loader.d.ts.map +1 -0
- package/dist/pipeline/semantic-data-loader.js +677 -0
- package/dist/pipeline/semantic-data-loader.js.map +1 -0
- package/dist/pipeline/semantic-enricher.d.ts +112 -0
- package/dist/pipeline/semantic-enricher.d.ts.map +1 -0
- package/dist/pipeline/semantic-enricher.js +322 -0
- package/dist/pipeline/semantic-enricher.js.map +1 -0
- package/dist/pipeline/tagger.d.ts +121 -0
- package/dist/pipeline/tagger.d.ts.map +1 -0
- package/dist/pipeline/tagger.js +545 -0
- package/dist/pipeline/tagger.js.map +1 -0
- package/dist/pipeline/title-extractor.d.ts +79 -0
- package/dist/pipeline/title-extractor.d.ts.map +1 -0
- package/dist/pipeline/title-extractor.js +801 -0
- package/dist/pipeline/title-extractor.js.map +1 -0
- package/dist/pipeline/validator.d.ts +65 -0
- package/dist/pipeline/validator.d.ts.map +1 -0
- package/dist/pipeline/validator.js +292 -0
- package/dist/pipeline/validator.js.map +1 -0
- package/dist/proxy/index.d.ts +13 -0
- package/dist/proxy/index.d.ts.map +1 -0
- package/dist/proxy/index.js +12 -0
- package/dist/proxy/index.js.map +1 -0
- package/dist/proxy/providers/anthropic.d.ts +28 -0
- package/dist/proxy/providers/anthropic.d.ts.map +1 -0
- package/dist/proxy/providers/anthropic.js +265 -0
- package/dist/proxy/providers/anthropic.js.map +1 -0
- package/dist/proxy/providers/index.d.ts +19 -0
- package/dist/proxy/providers/index.d.ts.map +1 -0
- package/dist/proxy/providers/index.js +41 -0
- package/dist/proxy/providers/index.js.map +1 -0
- package/dist/proxy/providers/openai.d.ts +27 -0
- package/dist/proxy/providers/openai.d.ts.map +1 -0
- package/dist/proxy/providers/openai.js +203 -0
- package/dist/proxy/providers/openai.js.map +1 -0
- package/dist/proxy/providers/streaming-tool-loop.d.ts +12 -0
- package/dist/proxy/providers/streaming-tool-loop.d.ts.map +1 -0
- package/dist/proxy/providers/streaming-tool-loop.js +223 -0
- package/dist/proxy/providers/streaming-tool-loop.js.map +1 -0
- package/dist/proxy/providers/types.d.ts +109 -0
- package/dist/proxy/providers/types.d.ts.map +1 -0
- package/dist/proxy/providers/types.js +2 -0
- package/dist/proxy/providers/types.js.map +1 -0
- package/dist/proxy/proxy-server.d.ts +61 -0
- package/dist/proxy/proxy-server.d.ts.map +1 -0
- package/dist/proxy/proxy-server.js +146 -0
- package/dist/proxy/proxy-server.js.map +1 -0
- package/dist/proxy/rehydra-fetch.d.ts +35 -0
- package/dist/proxy/rehydra-fetch.d.ts.map +1 -0
- package/dist/proxy/rehydra-fetch.js +631 -0
- package/dist/proxy/rehydra-fetch.js.map +1 -0
- package/dist/proxy/rehydra-proxy.d.ts +40 -0
- package/dist/proxy/rehydra-proxy.d.ts.map +1 -0
- package/dist/proxy/rehydra-proxy.js +150 -0
- package/dist/proxy/rehydra-proxy.js.map +1 -0
- package/dist/proxy/sse-parser.d.ts +59 -0
- package/dist/proxy/sse-parser.d.ts.map +1 -0
- package/dist/proxy/sse-parser.js +112 -0
- package/dist/proxy/sse-parser.js.map +1 -0
- package/dist/proxy/system-instruction.d.ts +19 -0
- package/dist/proxy/system-instruction.d.ts.map +1 -0
- package/dist/proxy/system-instruction.js +33 -0
- package/dist/proxy/system-instruction.js.map +1 -0
- package/dist/proxy/tool-loop-stream.d.ts +7 -0
- package/dist/proxy/tool-loop-stream.d.ts.map +1 -0
- package/dist/proxy/tool-loop-stream.js +65 -0
- package/dist/proxy/tool-loop-stream.js.map +1 -0
- package/dist/proxy/types.d.ts +138 -0
- package/dist/proxy/types.d.ts.map +1 -0
- package/dist/proxy/types.js +5 -0
- package/dist/proxy/types.js.map +1 -0
- package/dist/proxy/wrap-client.d.ts +47 -0
- package/dist/proxy/wrap-client.d.ts.map +1 -0
- package/dist/proxy/wrap-client.js +70 -0
- package/dist/proxy/wrap-client.js.map +1 -0
- package/dist/recognizers/address.d.ts +2 -0
- package/dist/recognizers/address.d.ts.map +1 -0
- package/dist/recognizers/address.js +23 -0
- package/dist/recognizers/address.js.map +1 -0
- package/dist/recognizers/base.d.ts +78 -0
- package/dist/recognizers/base.d.ts.map +1 -0
- package/dist/recognizers/base.js +100 -0
- package/dist/recognizers/base.js.map +1 -0
- package/dist/recognizers/bic-swift.d.ts +10 -0
- package/dist/recognizers/bic-swift.d.ts.map +1 -0
- package/dist/recognizers/bic-swift.js +107 -0
- package/dist/recognizers/bic-swift.js.map +1 -0
- package/dist/recognizers/credit-card.d.ts +32 -0
- package/dist/recognizers/credit-card.d.ts.map +1 -0
- package/dist/recognizers/credit-card.js +160 -0
- package/dist/recognizers/credit-card.js.map +1 -0
- package/dist/recognizers/custom-id.d.ts +28 -0
- package/dist/recognizers/custom-id.d.ts.map +1 -0
- package/dist/recognizers/custom-id.js +116 -0
- package/dist/recognizers/custom-id.js.map +1 -0
- package/dist/recognizers/date.d.ts +10 -0
- package/dist/recognizers/date.d.ts.map +1 -0
- package/dist/recognizers/date.js +228 -0
- package/dist/recognizers/date.js.map +1 -0
- package/dist/recognizers/email.d.ts +10 -0
- package/dist/recognizers/email.d.ts.map +1 -0
- package/dist/recognizers/email.js +75 -0
- package/dist/recognizers/email.js.map +1 -0
- package/dist/recognizers/iban.d.ts +14 -0
- package/dist/recognizers/iban.d.ts.map +1 -0
- package/dist/recognizers/iban.js +67 -0
- package/dist/recognizers/iban.js.map +1 -0
- package/dist/recognizers/index.d.ts +25 -0
- package/dist/recognizers/index.d.ts.map +1 -0
- package/dist/recognizers/index.js +53 -0
- package/dist/recognizers/index.js.map +1 -0
- package/dist/recognizers/ip-address.d.ts +14 -0
- package/dist/recognizers/ip-address.d.ts.map +1 -0
- package/dist/recognizers/ip-address.js +183 -0
- package/dist/recognizers/ip-address.js.map +1 -0
- package/dist/recognizers/phone.d.ts +10 -0
- package/dist/recognizers/phone.d.ts.map +1 -0
- package/dist/recognizers/phone.js +145 -0
- package/dist/recognizers/phone.js.map +1 -0
- package/dist/recognizers/postal-code.d.ts +16 -0
- package/dist/recognizers/postal-code.d.ts.map +1 -0
- package/dist/recognizers/postal-code.js +42 -0
- package/dist/recognizers/postal-code.js.map +1 -0
- package/dist/recognizers/registry.d.ts +59 -0
- package/dist/recognizers/registry.d.ts.map +1 -0
- package/dist/recognizers/registry.js +113 -0
- package/dist/recognizers/registry.js.map +1 -0
- package/dist/recognizers/secrets/api-key.d.ts +6 -0
- package/dist/recognizers/secrets/api-key.d.ts.map +1 -0
- package/dist/recognizers/secrets/api-key.js +40 -0
- package/dist/recognizers/secrets/api-key.js.map +1 -0
- package/dist/recognizers/secrets/aws-credentials.d.ts +7 -0
- package/dist/recognizers/secrets/aws-credentials.d.ts.map +1 -0
- package/dist/recognizers/secrets/aws-credentials.js +68 -0
- package/dist/recognizers/secrets/aws-credentials.js.map +1 -0
- package/dist/recognizers/secrets/config-secret.d.ts +8 -0
- package/dist/recognizers/secrets/config-secret.d.ts.map +1 -0
- package/dist/recognizers/secrets/config-secret.js +59 -0
- package/dist/recognizers/secrets/config-secret.js.map +1 -0
- package/dist/recognizers/secrets/connection-string.d.ts +6 -0
- package/dist/recognizers/secrets/connection-string.d.ts.map +1 -0
- package/dist/recognizers/secrets/connection-string.js +40 -0
- package/dist/recognizers/secrets/connection-string.js.map +1 -0
- package/dist/recognizers/secrets/env-var.d.ts +8 -0
- package/dist/recognizers/secrets/env-var.d.ts.map +1 -0
- package/dist/recognizers/secrets/env-var.js +54 -0
- package/dist/recognizers/secrets/env-var.js.map +1 -0
- package/dist/recognizers/secrets/index.d.ts +22 -0
- package/dist/recognizers/secrets/index.d.ts.map +1 -0
- package/dist/recognizers/secrets/index.js +41 -0
- package/dist/recognizers/secrets/index.js.map +1 -0
- package/dist/recognizers/secrets/jwt.d.ts +6 -0
- package/dist/recognizers/secrets/jwt.d.ts.map +1 -0
- package/dist/recognizers/secrets/jwt.js +47 -0
- package/dist/recognizers/secrets/jwt.js.map +1 -0
- package/dist/recognizers/secrets/key-patterns.d.ts +10 -0
- package/dist/recognizers/secrets/key-patterns.d.ts.map +1 -0
- package/dist/recognizers/secrets/key-patterns.js +15 -0
- package/dist/recognizers/secrets/key-patterns.js.map +1 -0
- package/dist/recognizers/secrets/literal-value.d.ts +10 -0
- package/dist/recognizers/secrets/literal-value.d.ts.map +1 -0
- package/dist/recognizers/secrets/literal-value.js +48 -0
- package/dist/recognizers/secrets/literal-value.js.map +1 -0
- package/dist/recognizers/secrets/private-key.d.ts +6 -0
- package/dist/recognizers/secrets/private-key.d.ts.map +1 -0
- package/dist/recognizers/secrets/private-key.js +16 -0
- package/dist/recognizers/secrets/private-key.js.map +1 -0
- package/dist/recognizers/url.d.ts +14 -0
- package/dist/recognizers/url.d.ts.map +1 -0
- package/dist/recognizers/url.js +121 -0
- package/dist/recognizers/url.js.map +1 -0
- package/dist/storage/browser.d.ts +13 -0
- package/dist/storage/browser.d.ts.map +1 -0
- package/dist/storage/browser.js +13 -0
- package/dist/storage/browser.js.map +1 -0
- package/dist/storage/in-memory.d.ts +60 -0
- package/dist/storage/in-memory.d.ts.map +1 -0
- package/dist/storage/in-memory.js +108 -0
- package/dist/storage/in-memory.js.map +1 -0
- package/dist/storage/index.d.ts +11 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +11 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/indexeddb.d.ts +69 -0
- package/dist/storage/indexeddb.d.ts.map +1 -0
- package/dist/storage/indexeddb.js +274 -0
- package/dist/storage/indexeddb.js.map +1 -0
- package/dist/storage/session-base.d.ts +34 -0
- package/dist/storage/session-base.d.ts.map +1 -0
- package/dist/storage/session-base.js +122 -0
- package/dist/storage/session-base.js.map +1 -0
- package/dist/storage/session.d.ts +19 -0
- package/dist/storage/session.d.ts.map +1 -0
- package/dist/storage/session.js +31 -0
- package/dist/storage/session.js.map +1 -0
- package/dist/storage/sqlite.d.ts +80 -0
- package/dist/storage/sqlite.d.ts.map +1 -0
- package/dist/storage/sqlite.js +255 -0
- package/dist/storage/sqlite.js.map +1 -0
- package/dist/storage/types.d.ts +208 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/types.js +6 -0
- package/dist/storage/types.js.map +1 -0
- package/dist/streaming/anonymizer-stream.d.ts +63 -0
- package/dist/streaming/anonymizer-stream.d.ts.map +1 -0
- package/dist/streaming/anonymizer-stream.js +184 -0
- package/dist/streaming/anonymizer-stream.js.map +1 -0
- package/dist/streaming/index.d.ts +9 -0
- package/dist/streaming/index.d.ts.map +1 -0
- package/dist/streaming/index.js +8 -0
- package/dist/streaming/index.js.map +1 -0
- package/dist/streaming/sentence-buffer.d.ts +78 -0
- package/dist/streaming/sentence-buffer.d.ts.map +1 -0
- package/dist/streaming/sentence-buffer.js +239 -0
- package/dist/streaming/sentence-buffer.js.map +1 -0
- package/dist/streaming/stream-factory.d.ts +38 -0
- package/dist/streaming/stream-factory.d.ts.map +1 -0
- package/dist/streaming/stream-factory.js +69 -0
- package/dist/streaming/stream-factory.js.map +1 -0
- package/dist/streaming/types.d.ts +121 -0
- package/dist/streaming/types.d.ts.map +1 -0
- package/dist/streaming/types.js +5 -0
- package/dist/streaming/types.js.map +1 -0
- package/dist/types/index.d.ts +269 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +95 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/pii-types.d.ts +64 -0
- package/dist/types/pii-types.d.ts.map +1 -0
- package/dist/types/pii-types.js +153 -0
- package/dist/types/pii-types.js.map +1 -0
- package/dist/utils/iban-checksum.d.ts +23 -0
- package/dist/utils/iban-checksum.d.ts.map +1 -0
- package/dist/utils/iban-checksum.js +106 -0
- package/dist/utils/iban-checksum.js.map +1 -0
- package/dist/utils/index.d.ts +11 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +11 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/json-walk.d.ts +21 -0
- package/dist/utils/json-walk.d.ts.map +1 -0
- package/dist/utils/json-walk.js +44 -0
- package/dist/utils/json-walk.js.map +1 -0
- package/dist/utils/luhn.d.ts +17 -0
- package/dist/utils/luhn.d.ts.map +1 -0
- package/dist/utils/luhn.js +55 -0
- package/dist/utils/luhn.js.map +1 -0
- package/dist/utils/offsets.d.ts +86 -0
- package/dist/utils/offsets.d.ts.map +1 -0
- package/dist/utils/offsets.js +124 -0
- package/dist/utils/offsets.js.map +1 -0
- package/dist/utils/path.d.ts +34 -0
- package/dist/utils/path.d.ts.map +1 -0
- package/dist/utils/path.js +96 -0
- package/dist/utils/path.js.map +1 -0
- package/dist/utils/regex.d.ts +11 -0
- package/dist/utils/regex.d.ts.map +1 -0
- package/dist/utils/regex.js +14 -0
- package/dist/utils/regex.js.map +1 -0
- package/dist/utils/storage-browser.d.ts +51 -0
- package/dist/utils/storage-browser.d.ts.map +1 -0
- package/dist/utils/storage-browser.js +381 -0
- package/dist/utils/storage-browser.js.map +1 -0
- package/dist/utils/storage-node.d.ts +51 -0
- package/dist/utils/storage-node.d.ts.map +1 -0
- package/dist/utils/storage-node.js +153 -0
- package/dist/utils/storage-node.js.map +1 -0
- package/dist/utils/storage.browser.d.ts +75 -0
- package/dist/utils/storage.browser.d.ts.map +1 -0
- package/dist/utils/storage.browser.js +69 -0
- package/dist/utils/storage.browser.js.map +1 -0
- package/dist/utils/storage.d.ts +73 -0
- package/dist/utils/storage.d.ts.map +1 -0
- package/dist/utils/storage.js +69 -0
- package/dist/utils/storage.js.map +1 -0
- package/package.json +148 -0
|
@@ -0,0 +1,309 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Anonymizer Module
|
|
3
|
+
* Shared implementation for both browser and Node.js entry points
|
|
4
|
+
*/
|
|
5
|
+
import { AnonymizationResult, AnonymizationPolicy, AnonymizationMode, SemanticConfig, SecretsConfig, PIIType, TagFormat } from "../types/index.js";
|
|
6
|
+
import { RecognizerRegistry } from "../recognizers/index.js";
|
|
7
|
+
import { type INERModel, type OrtSessionOptions } from "../ner/index.js";
|
|
8
|
+
import { type NERModelMode, type DownloadProgressCallback } from "../ner/model-manager.js";
|
|
9
|
+
import { type RawPIIMap } from "../pipeline/tagger.js";
|
|
10
|
+
import { type KeyProvider } from "../crypto/index.js";
|
|
11
|
+
export type { RawPIIMap } from "../pipeline/tagger.js";
|
|
12
|
+
import type { PIIStorageProvider, AnonymizerSession } from "../storage/types.js";
|
|
13
|
+
export type { PIIStorageProvider, AnonymizerSession };
|
|
14
|
+
/**
|
|
15
|
+
* NER configuration options
|
|
16
|
+
*/
|
|
17
|
+
export interface NERConfig {
|
|
18
|
+
/**
|
|
19
|
+
* NER model mode:
|
|
20
|
+
* - 'standard': Full-size multilingual model (~1.1 GB)
|
|
21
|
+
* - 'quantized': Smaller quantized model (~280 MB)
|
|
22
|
+
* - 'disabled': No NER, regex-only detection
|
|
23
|
+
* - 'custom': Use custom model paths
|
|
24
|
+
*/
|
|
25
|
+
mode: NERModelMode;
|
|
26
|
+
/**
|
|
27
|
+
* Custom model path (required when mode is 'custom')
|
|
28
|
+
*/
|
|
29
|
+
modelPath?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Custom vocab path (required when mode is 'custom')
|
|
32
|
+
*/
|
|
33
|
+
vocabPath?: string;
|
|
34
|
+
/**
|
|
35
|
+
* Whether to auto-download model if not present
|
|
36
|
+
* @default true
|
|
37
|
+
*/
|
|
38
|
+
autoDownload?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Callback for download progress
|
|
41
|
+
*/
|
|
42
|
+
onDownloadProgress?: DownloadProgressCallback;
|
|
43
|
+
/**
|
|
44
|
+
* Callback for status messages
|
|
45
|
+
*/
|
|
46
|
+
onStatus?: (status: string) => void;
|
|
47
|
+
/**
|
|
48
|
+
* Confidence thresholds per PII type (0.0 - 1.0)
|
|
49
|
+
* Overrides default thresholds for specified types
|
|
50
|
+
* @example { PERSON: 0.8, ORG: 0.7 }
|
|
51
|
+
*/
|
|
52
|
+
thresholds?: Partial<Record<PIIType, number>>;
|
|
53
|
+
/**
|
|
54
|
+
* ONNX session options for performance tuning
|
|
55
|
+
* Allows customizing execution providers, threading, and graph optimizations
|
|
56
|
+
* @example { executionProviders: ['CoreMLExecutionProvider', 'CPUExecutionProvider'] }
|
|
57
|
+
*/
|
|
58
|
+
sessionOptions?: OrtSessionOptions;
|
|
59
|
+
/**
|
|
60
|
+
* Inference backend: 'local' (default) or 'inference-server'
|
|
61
|
+
* - 'local': Local ONNX Runtime inference (CPU)
|
|
62
|
+
* - 'inference-server': Remote GPU inference via HTTP (enterprise deployment)
|
|
63
|
+
* @default 'local'
|
|
64
|
+
*/
|
|
65
|
+
backend?: "local" | "inference-server";
|
|
66
|
+
/**
|
|
67
|
+
* Inference server URL (required when backend is 'inference-server')
|
|
68
|
+
* @example 'http://localhost:8080'
|
|
69
|
+
*/
|
|
70
|
+
inferenceServerUrl?: string;
|
|
71
|
+
/**
|
|
72
|
+
* Inference server request timeout in milliseconds (default: 30000)
|
|
73
|
+
* Only used when backend is 'inference-server'
|
|
74
|
+
*/
|
|
75
|
+
inferenceServerTimeout?: number;
|
|
76
|
+
/**
|
|
77
|
+
* Enable case-insensitive fallback for detecting lowercase names.
|
|
78
|
+
* Runs a second NER pass on title-cased text and merges new detections.
|
|
79
|
+
* Doubles NER inference time but catches names like "tom" that the
|
|
80
|
+
* case-sensitive model would otherwise miss.
|
|
81
|
+
* @default false
|
|
82
|
+
*/
|
|
83
|
+
caseFallback?: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* Confidence penalty multiplier for case-fallback detections (0.0 - 1.0).
|
|
86
|
+
* Applied as: confidence * caseFallbackPenalty
|
|
87
|
+
* @default 0.85
|
|
88
|
+
*/
|
|
89
|
+
caseFallbackPenalty?: number;
|
|
90
|
+
/**
|
|
91
|
+
* Number of content tokens shared by adjacent windows when a long input is
|
|
92
|
+
* split into multiple inference windows. Larger overlap improves recall for
|
|
93
|
+
* entities near window boundaries at the cost of more windows.
|
|
94
|
+
* @default min(64, floor((maxLength - 2) / 4))
|
|
95
|
+
*/
|
|
96
|
+
windowOverlapTokens?: number;
|
|
97
|
+
/**
|
|
98
|
+
* Maximum number of inference windows per input. Inputs that tokenize to
|
|
99
|
+
* more windows are scanned only up to this bound (onWindowCap fires once per
|
|
100
|
+
* capped inference pass — so twice for one input when caseFallback runs a
|
|
101
|
+
* second pass). Guards against unbounded inference cost on very large
|
|
102
|
+
* opaque payloads (e.g. multi-megabyte base64 attachments).
|
|
103
|
+
* @default undefined (unbounded — full coverage)
|
|
104
|
+
*/
|
|
105
|
+
maxWindowsPerInput?: number;
|
|
106
|
+
/**
|
|
107
|
+
* Called when an input exceeds maxWindowsPerInput and its tail is left
|
|
108
|
+
* unscanned by NER. Callers should log/meter this — it is a coverage
|
|
109
|
+
* reduction, not an error. When absent, a console warning is emitted.
|
|
110
|
+
* `inputLength` is the full input character count.
|
|
111
|
+
*/
|
|
112
|
+
onWindowCap?: (info: {
|
|
113
|
+
scannedWindows: number;
|
|
114
|
+
inputLength: number;
|
|
115
|
+
}) => void;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Anonymizer configuration
|
|
119
|
+
*/
|
|
120
|
+
export interface AnonymizerConfig {
|
|
121
|
+
/** Recognizer registry (uses default if not provided) */
|
|
122
|
+
registry?: RecognizerRegistry;
|
|
123
|
+
/**
|
|
124
|
+
* Anonymization mode:
|
|
125
|
+
* - 'pseudonymize': Reversible anonymization with encrypted PII map (default)
|
|
126
|
+
* - 'anonymize': Irreversible anonymization without PII map
|
|
127
|
+
* @default 'pseudonymize'
|
|
128
|
+
*/
|
|
129
|
+
mode?: AnonymizationMode;
|
|
130
|
+
/**
|
|
131
|
+
* NER configuration
|
|
132
|
+
* @default { mode: 'disabled' }
|
|
133
|
+
*/
|
|
134
|
+
ner?: NERConfig;
|
|
135
|
+
/**
|
|
136
|
+
* Semantic enrichment configuration
|
|
137
|
+
* Enables MT-friendly PII tags with gender/scope attributes
|
|
138
|
+
* @default { enabled: false }
|
|
139
|
+
*/
|
|
140
|
+
semantic?: SemanticConfig;
|
|
141
|
+
/**
|
|
142
|
+
* Secrets/credentials detection configuration
|
|
143
|
+
* Detects API keys, private keys, JWTs, connection strings, etc.
|
|
144
|
+
* @default { enabled: false }
|
|
145
|
+
*/
|
|
146
|
+
secrets?: SecretsConfig;
|
|
147
|
+
/** Key provider for encryption (generates random key if not provided) */
|
|
148
|
+
keyProvider?: KeyProvider;
|
|
149
|
+
/**
|
|
150
|
+
* PII storage provider for automatic session-based persistence
|
|
151
|
+
* When provided, enables the session() method for automatic PII map storage
|
|
152
|
+
*/
|
|
153
|
+
piiStorageProvider?: PIIStorageProvider;
|
|
154
|
+
/** Default policy — merged with SDK defaults, so partial overrides are safe */
|
|
155
|
+
defaultPolicy?: Partial<AnonymizationPolicy>;
|
|
156
|
+
/** Model version string */
|
|
157
|
+
modelVersion?: string;
|
|
158
|
+
/** Policy version string */
|
|
159
|
+
policyVersion?: string;
|
|
160
|
+
/**
|
|
161
|
+
* Optional callback for validation warnings emitted during anonymization.
|
|
162
|
+
* When not provided, warnings are silently ignored.
|
|
163
|
+
* Previously these were logged via console.warn, which pollutes stdout
|
|
164
|
+
* in TUI-based editors (e.g. OpenCode).
|
|
165
|
+
*/
|
|
166
|
+
onValidationWarning?: (warnings: Array<{
|
|
167
|
+
code: string;
|
|
168
|
+
message: string;
|
|
169
|
+
}>) => void;
|
|
170
|
+
/**
|
|
171
|
+
* Tag format configuration for PII placeholder tags.
|
|
172
|
+
* Controls the delimiters and keyword used in tags.
|
|
173
|
+
* @default { open: "<", close: "/>", keyword: "PII" } (XML-style)
|
|
174
|
+
* @example { open: "[[", close: "]]" } for bracket-style tags
|
|
175
|
+
*/
|
|
176
|
+
tagFormat?: TagFormat;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Session implementation factory type
|
|
180
|
+
*/
|
|
181
|
+
export type SessionFactory = (anonymizer: Anonymizer, sessionId: string, storage: PIIStorageProvider, keyProvider: KeyProvider) => AnonymizerSession;
|
|
182
|
+
/**
|
|
183
|
+
* Anonymizer instance
|
|
184
|
+
* Main class for performing PII anonymization
|
|
185
|
+
*/
|
|
186
|
+
export declare class Anonymizer {
|
|
187
|
+
private registry;
|
|
188
|
+
private nerModel;
|
|
189
|
+
private nerConfig;
|
|
190
|
+
private semanticConfig;
|
|
191
|
+
private secretsConfig;
|
|
192
|
+
private mode;
|
|
193
|
+
private keyProvider;
|
|
194
|
+
private piiStorageProvider;
|
|
195
|
+
private defaultPolicy;
|
|
196
|
+
private modelVersion;
|
|
197
|
+
private policyVersion;
|
|
198
|
+
private initialized;
|
|
199
|
+
private semanticDataReady;
|
|
200
|
+
private sessionFactory;
|
|
201
|
+
private onValidationWarning;
|
|
202
|
+
private tagFormat;
|
|
203
|
+
constructor(config?: AnonymizerConfig, sessionFactory?: SessionFactory);
|
|
204
|
+
/**
|
|
205
|
+
* Returns the resolved tag format configuration
|
|
206
|
+
*/
|
|
207
|
+
get resolvedTagFormat(): TagFormat;
|
|
208
|
+
/**
|
|
209
|
+
* Initializes the anonymizer
|
|
210
|
+
* Downloads NER model and semantic data if needed and loads them
|
|
211
|
+
*/
|
|
212
|
+
initialize(): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Anonymizes text, replacing PII with placeholder tags
|
|
215
|
+
* @param text - Input text to anonymize
|
|
216
|
+
* @param locale - Optional locale hint (e.g., 'de-DE', 'en-US')
|
|
217
|
+
* @param policy - Optional policy override
|
|
218
|
+
* @param existingPiiMap - Optional existing PII map for session-level ID reuse
|
|
219
|
+
* @returns Anonymization result with anonymized text and encrypted PII map
|
|
220
|
+
*/
|
|
221
|
+
anonymize(text: string, locale?: string, policy?: Partial<AnonymizationPolicy>, existingPiiMap?: RawPIIMap): Promise<AnonymizationResult>;
|
|
222
|
+
/**
|
|
223
|
+
* Disposes of resources
|
|
224
|
+
*/
|
|
225
|
+
dispose(): Promise<void>;
|
|
226
|
+
/**
|
|
227
|
+
* Gets the recognizer registry
|
|
228
|
+
*/
|
|
229
|
+
getRegistry(): RecognizerRegistry;
|
|
230
|
+
/**
|
|
231
|
+
* Gets the NER model
|
|
232
|
+
*/
|
|
233
|
+
getNERModel(): INERModel | null;
|
|
234
|
+
/**
|
|
235
|
+
* Whether the anonymizer is initialized
|
|
236
|
+
*/
|
|
237
|
+
get isInitialized(): boolean;
|
|
238
|
+
/**
|
|
239
|
+
* Creates a session-bound interface for automatic PII map storage
|
|
240
|
+
*
|
|
241
|
+
* @param sessionId - Unique identifier for this session/conversation
|
|
242
|
+
* @returns AnonymizerSession that auto-saves on anonymize and auto-loads on rehydrate
|
|
243
|
+
* @throws Error if piiStorageProvider was not configured
|
|
244
|
+
*
|
|
245
|
+
* @example
|
|
246
|
+
* ```typescript
|
|
247
|
+
* const session = anonymizer.session('chat-123');
|
|
248
|
+
*
|
|
249
|
+
* // Anonymize - auto-saves to storage
|
|
250
|
+
* const result = await session.anonymize('Hello John Smith!');
|
|
251
|
+
*
|
|
252
|
+
* // Rehydrate - auto-loads and decrypts
|
|
253
|
+
* const original = await session.rehydrate(translatedText);
|
|
254
|
+
* ```
|
|
255
|
+
*/
|
|
256
|
+
session(sessionId: string): AnonymizerSession;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Creates an anonymizer with the specified configuration
|
|
260
|
+
*
|
|
261
|
+
* @example
|
|
262
|
+
* ```typescript
|
|
263
|
+
* // Regex-only (no NER)
|
|
264
|
+
* const anonymizer = createAnonymizer();
|
|
265
|
+
*
|
|
266
|
+
* // With NER (auto-downloads model on first use)
|
|
267
|
+
* const anonymizer = createAnonymizer({
|
|
268
|
+
* ner: { mode: 'quantized' }
|
|
269
|
+
* });
|
|
270
|
+
*
|
|
271
|
+
* // With NER and progress callback
|
|
272
|
+
* const anonymizer = createAnonymizer({
|
|
273
|
+
* ner: {
|
|
274
|
+
* mode: 'standard',
|
|
275
|
+
* onStatus: (status) => console.log(status),
|
|
276
|
+
* onDownloadProgress: (p) => console.log(`${p.file}: ${p.percent}%`)
|
|
277
|
+
* }
|
|
278
|
+
* });
|
|
279
|
+
* ```
|
|
280
|
+
*/
|
|
281
|
+
export declare function createAnonymizer(config?: AnonymizerConfig, sessionFactory?: SessionFactory): Anonymizer;
|
|
282
|
+
/**
|
|
283
|
+
* Convenience function for one-off anonymization
|
|
284
|
+
* Creates a temporary anonymizer with default settings (regex-only)
|
|
285
|
+
*/
|
|
286
|
+
export declare function anonymize(text: string, locale?: string, policy?: Partial<AnonymizationPolicy>): Promise<AnonymizationResult>;
|
|
287
|
+
/**
|
|
288
|
+
* Quick regex-only anonymization (no NER, faster)
|
|
289
|
+
*/
|
|
290
|
+
export declare function anonymizeRegexOnly(text: string, policy?: Partial<AnonymizationPolicy>): Promise<AnonymizationResult>;
|
|
291
|
+
/**
|
|
292
|
+
* Full anonymization with NER
|
|
293
|
+
* Auto-downloads the quantized model on first use
|
|
294
|
+
*
|
|
295
|
+
* @example
|
|
296
|
+
* ```typescript
|
|
297
|
+
* const result = await anonymizeWithNER(
|
|
298
|
+
* 'Contact John Smith at john@example.com',
|
|
299
|
+
* {
|
|
300
|
+
* mode: 'quantized',
|
|
301
|
+
* onStatus: console.log
|
|
302
|
+
* }
|
|
303
|
+
* );
|
|
304
|
+
* ```
|
|
305
|
+
*/
|
|
306
|
+
export declare function anonymizeWithNER(text: string, nerConfig: Omit<NERConfig, "mode"> & {
|
|
307
|
+
mode?: "standard" | "quantized";
|
|
308
|
+
}, policy?: Partial<AnonymizationPolicy>): Promise<AnonymizationResult>;
|
|
309
|
+
//# sourceMappingURL=anonymizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anonymizer.d.ts","sourceRoot":"","sources":["../../src/core/anonymizer.ts"],"names":[],"mappings":"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"}
|