@digitaldefiance/ecies-lib 4.4.13 → 4.4.14
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/package.json +6 -4
- package/src/builders/ecies-builder.d.ts +18 -0
- package/src/builders/ecies-builder.d.ts.map +1 -0
- package/src/builders/ecies-builder.js +30 -0
- package/src/builders/ecies-builder.js.map +1 -0
- package/src/builders/index.d.ts +6 -0
- package/src/builders/index.d.ts.map +1 -0
- package/src/builders/{index.ts → index.js} +1 -1
- package/src/builders/index.js.map +1 -0
- package/src/builders/member-builder.d.ts +51 -0
- package/src/builders/member-builder.d.ts.map +1 -0
- package/src/builders/member-builder.js +97 -0
- package/src/builders/member-builder.js.map +1 -0
- package/src/constants.d.ts +60 -0
- package/src/constants.d.ts.map +1 -0
- package/src/constants.js +446 -0
- package/src/constants.js.map +1 -0
- package/src/core/errors/crypto-error.d.ts +34 -0
- package/src/core/errors/crypto-error.d.ts.map +1 -0
- package/src/core/errors/crypto-error.js +56 -0
- package/src/core/errors/crypto-error.js.map +1 -0
- package/src/core/index.d.ts +6 -0
- package/src/core/index.d.ts.map +1 -0
- package/src/core/{index.ts → index.js} +1 -1
- package/src/core/index.js.map +1 -0
- package/src/core/types/result.d.ts +16 -0
- package/src/core/types/result.d.ts.map +1 -0
- package/src/core/types/result.js +12 -0
- package/src/core/types/result.js.map +1 -0
- package/src/email-string.d.ts +42 -0
- package/src/email-string.d.ts.map +1 -0
- package/src/email-string.js +67 -0
- package/src/email-string.js.map +1 -0
- package/src/enumerations/disposed-error-type.d.ts +12 -0
- package/src/enumerations/disposed-error-type.d.ts.map +1 -0
- package/src/enumerations/disposed-error-type.js +13 -0
- package/src/enumerations/disposed-error-type.js.map +1 -0
- package/src/enumerations/ecies-cipher-suite.d.ts +4 -0
- package/src/enumerations/ecies-cipher-suite.d.ts.map +1 -0
- package/src/enumerations/ecies-cipher-suite.js +6 -0
- package/src/enumerations/ecies-cipher-suite.js.map +1 -0
- package/src/enumerations/ecies-encryption-type.d.ts +11 -0
- package/src/enumerations/ecies-encryption-type.d.ts.map +1 -0
- package/src/enumerations/ecies-encryption-type.js +27 -0
- package/src/enumerations/ecies-encryption-type.js.map +1 -0
- package/src/enumerations/ecies-error-type.d.ts +44 -0
- package/src/enumerations/ecies-error-type.d.ts.map +1 -0
- package/src/enumerations/ecies-error-type.js +45 -0
- package/src/enumerations/ecies-error-type.js.map +1 -0
- package/src/enumerations/ecies-string-key.d.ts +192 -0
- package/src/enumerations/ecies-string-key.d.ts.map +1 -0
- package/src/enumerations/ecies-string-key.js +199 -0
- package/src/enumerations/ecies-string-key.js.map +1 -0
- package/src/enumerations/ecies-version.d.ts +4 -0
- package/src/enumerations/ecies-version.d.ts.map +1 -0
- package/src/enumerations/ecies-version.js +5 -0
- package/src/enumerations/ecies-version.js.map +1 -0
- package/src/enumerations/guid-brand-type.d.ts +27 -0
- package/src/enumerations/guid-brand-type.d.ts.map +1 -0
- package/src/enumerations/guid-brand-type.js +28 -0
- package/src/enumerations/guid-brand-type.js.map +1 -0
- package/src/enumerations/guid-error-type.d.ts +7 -0
- package/src/enumerations/guid-error-type.d.ts.map +1 -0
- package/src/enumerations/guid-error-type.js +8 -0
- package/src/enumerations/guid-error-type.js.map +1 -0
- package/src/enumerations/id-provider-error-type.d.ts +43 -0
- package/src/enumerations/id-provider-error-type.d.ts.map +1 -0
- package/src/enumerations/id-provider-error-type.js +44 -0
- package/src/enumerations/id-provider-error-type.js.map +1 -0
- package/src/enumerations/index.d.ts +18 -0
- package/src/enumerations/index.d.ts.map +1 -0
- package/src/enumerations/{index.ts → index.js} +1 -0
- package/src/enumerations/index.js.map +1 -0
- package/src/enumerations/invalid-email-type.d.ts +6 -0
- package/src/enumerations/invalid-email-type.d.ts.map +1 -0
- package/src/enumerations/invalid-email-type.js +7 -0
- package/src/enumerations/invalid-email-type.js.map +1 -0
- package/src/enumerations/length-encoding-type.d.ts +7 -0
- package/src/enumerations/length-encoding-type.d.ts.map +1 -0
- package/src/enumerations/length-encoding-type.js +8 -0
- package/src/enumerations/length-encoding-type.js.map +1 -0
- package/src/enumerations/length-error-type.d.ts +6 -0
- package/src/enumerations/length-error-type.d.ts.map +1 -0
- package/src/enumerations/length-error-type.js +7 -0
- package/src/enumerations/length-error-type.js.map +1 -0
- package/src/enumerations/member-error-type.d.ts +87 -0
- package/src/enumerations/member-error-type.d.ts.map +1 -0
- package/src/enumerations/member-error-type.js +88 -0
- package/src/enumerations/member-error-type.js.map +1 -0
- package/src/enumerations/{member-type.ts → member-type.d.ts} +6 -7
- package/src/enumerations/member-type.d.ts.map +1 -0
- package/src/enumerations/member-type.js +16 -0
- package/src/enumerations/member-type.js.map +1 -0
- package/src/enumerations/password-login-error-type.d.ts +5 -0
- package/src/enumerations/password-login-error-type.d.ts.map +1 -0
- package/src/enumerations/password-login-error-type.js +6 -0
- package/src/enumerations/password-login-error-type.js.map +1 -0
- package/src/enumerations/pbkdf2-error-type.d.ts +6 -0
- package/src/enumerations/pbkdf2-error-type.d.ts.map +1 -0
- package/src/enumerations/pbkdf2-error-type.js +7 -0
- package/src/enumerations/pbkdf2-error-type.js.map +1 -0
- package/src/enumerations/pbkdf2-profile.d.ts +6 -0
- package/src/enumerations/pbkdf2-profile.d.ts.map +1 -0
- package/src/enumerations/pbkdf2-profile.js +7 -0
- package/src/enumerations/pbkdf2-profile.js.map +1 -0
- package/src/enumerations/secure-storage-error-type.d.ts +6 -0
- package/src/enumerations/secure-storage-error-type.d.ts.map +1 -0
- package/src/enumerations/secure-storage-error-type.js +7 -0
- package/src/enumerations/secure-storage-error-type.js.map +1 -0
- package/src/errors/disposed.d.ts +22 -0
- package/src/errors/disposed.d.ts.map +1 -0
- package/src/errors/disposed.js +28 -0
- package/src/errors/disposed.js.map +1 -0
- package/src/errors/ecies.d.ts +52 -0
- package/src/errors/ecies.d.ts.map +1 -0
- package/src/errors/ecies.js +78 -0
- package/src/errors/ecies.js.map +1 -0
- package/src/errors/guid.d.ts +49 -0
- package/src/errors/guid.d.ts.map +1 -0
- package/src/errors/guid.js +96 -0
- package/src/errors/guid.js.map +1 -0
- package/src/errors/id-provider.d.ts +23 -0
- package/src/errors/id-provider.d.ts.map +1 -0
- package/src/errors/id-provider.js +29 -0
- package/src/errors/id-provider.js.map +1 -0
- package/src/errors/{index.ts → index.d.ts} +1 -0
- package/src/errors/index.d.ts.map +1 -0
- package/src/errors/index.js +10 -0
- package/src/errors/index.js.map +1 -0
- package/src/errors/invalid-email.d.ts +8 -0
- package/src/errors/invalid-email.d.ts.map +1 -0
- package/src/errors/invalid-email.js +15 -0
- package/src/errors/invalid-email.js.map +1 -0
- package/src/errors/length.d.ts +7 -0
- package/src/errors/length.d.ts.map +1 -0
- package/src/errors/length.js +11 -0
- package/src/errors/length.js.map +1 -0
- package/src/errors/member.d.ts +7 -0
- package/src/errors/member.d.ts.map +1 -0
- package/src/errors/member.js +11 -0
- package/src/errors/member.js.map +1 -0
- package/src/errors/pbkdf2.d.ts +7 -0
- package/src/errors/pbkdf2.d.ts.map +1 -0
- package/src/errors/pbkdf2.js +11 -0
- package/src/errors/pbkdf2.js.map +1 -0
- package/src/errors/secure-storage.d.ts +7 -0
- package/src/errors/secure-storage.d.ts.map +1 -0
- package/src/errors/secure-storage.js +12 -0
- package/src/errors/secure-storage.js.map +1 -0
- package/src/errors/simple-ecies.d.ts +6 -0
- package/src/errors/simple-ecies.d.ts.map +1 -0
- package/src/errors/simple-ecies.js +12 -0
- package/src/errors/simple-ecies.js.map +1 -0
- package/src/errors/simple-test-error.d.ts +4 -0
- package/src/errors/simple-test-error.d.ts.map +1 -0
- package/src/errors/simple-test-error.js +7 -0
- package/src/errors/simple-test-error.js.map +1 -0
- package/src/i18n-setup.d.ts +32 -0
- package/src/i18n-setup.d.ts.map +1 -0
- package/src/i18n-setup.js +101 -0
- package/src/i18n-setup.js.map +1 -0
- package/src/index.d.ts +80 -0
- package/src/index.d.ts.map +1 -0
- package/src/{index.ts → index.js} +7 -64
- package/src/index.js.map +1 -0
- package/src/interfaces/checksum-config.d.ts +5 -0
- package/src/interfaces/checksum-config.d.ts.map +1 -0
- package/src/interfaces/checksum-config.js +2 -0
- package/src/interfaces/checksum-config.js.map +1 -0
- package/src/interfaces/checksum-consts.d.ts +11 -0
- package/src/interfaces/checksum-consts.d.ts.map +1 -0
- package/src/interfaces/checksum-consts.js +2 -0
- package/src/interfaces/checksum-consts.js.map +1 -0
- package/src/interfaces/configuration-provenance.d.ts +43 -0
- package/src/interfaces/configuration-provenance.d.ts.map +1 -0
- package/src/interfaces/configuration-provenance.js +3 -0
- package/src/interfaces/configuration-provenance.js.map +1 -0
- package/src/interfaces/constants.d.ts +70 -0
- package/src/interfaces/constants.d.ts.map +1 -0
- package/src/interfaces/constants.js +2 -0
- package/src/interfaces/constants.js.map +1 -0
- package/src/interfaces/ecies-config.d.ts +9 -0
- package/src/interfaces/ecies-config.d.ts.map +1 -0
- package/src/interfaces/ecies-config.js +2 -0
- package/src/interfaces/ecies-config.js.map +1 -0
- package/src/interfaces/ecies-consts.d.ts +61 -0
- package/src/interfaces/ecies-consts.d.ts.map +1 -0
- package/src/interfaces/ecies-consts.js +2 -0
- package/src/interfaces/ecies-consts.js.map +1 -0
- package/src/interfaces/ecies-file-service.d.ts +7 -0
- package/src/interfaces/ecies-file-service.d.ts.map +1 -0
- package/src/interfaces/ecies-file-service.js +2 -0
- package/src/interfaces/ecies-file-service.js.map +1 -0
- package/src/interfaces/encrypted-chunk.d.ts +55 -0
- package/src/interfaces/encrypted-chunk.d.ts.map +1 -0
- package/src/interfaces/encrypted-chunk.js +12 -0
- package/src/interfaces/encrypted-chunk.js.map +1 -0
- package/src/interfaces/encryption-state.d.ts +18 -0
- package/src/interfaces/encryption-state.d.ts.map +1 -0
- package/src/interfaces/encryption-state.js +2 -0
- package/src/interfaces/encryption-state.js.map +1 -0
- package/src/interfaces/frontend-member-operational.d.ts +51 -0
- package/src/interfaces/frontend-member-operational.d.ts.map +1 -0
- package/src/interfaces/frontend-member-operational.js +2 -0
- package/src/interfaces/frontend-member-operational.js.map +1 -0
- package/src/interfaces/guid.d.ts +78 -0
- package/src/interfaces/guid.d.ts.map +1 -0
- package/src/interfaces/guid.js +2 -0
- package/src/interfaces/guid.js.map +1 -0
- package/src/interfaces/id-provider.d.ts +107 -0
- package/src/interfaces/id-provider.d.ts.map +1 -0
- package/src/interfaces/id-provider.js +52 -0
- package/src/interfaces/id-provider.js.map +1 -0
- package/src/interfaces/{index.ts → index.d.ts} +1 -0
- package/src/interfaces/index.d.ts.map +1 -0
- package/src/interfaces/index.js +13 -0
- package/src/interfaces/index.js.map +1 -0
- package/src/interfaces/invariant.d.ts +46 -0
- package/src/interfaces/invariant.d.ts.map +1 -0
- package/src/interfaces/invariant.js +18 -0
- package/src/interfaces/invariant.js.map +1 -0
- package/src/interfaces/library-error.d.ts +23 -0
- package/src/interfaces/library-error.d.ts.map +1 -0
- package/src/interfaces/library-error.js +2 -0
- package/src/interfaces/library-error.js.map +1 -0
- package/src/interfaces/{member-storage.ts → member-storage.d.ts} +10 -11
- package/src/interfaces/member-storage.d.ts.map +1 -0
- package/src/interfaces/member-storage.js +2 -0
- package/src/interfaces/member-storage.js.map +1 -0
- package/src/interfaces/{member-with-mnemonic.ts → member-with-mnemonic.d.ts} +3 -3
- package/src/interfaces/member-with-mnemonic.d.ts.map +1 -0
- package/src/interfaces/member-with-mnemonic.js +2 -0
- package/src/interfaces/member-with-mnemonic.js.map +1 -0
- package/src/interfaces/member.d.ts +55 -0
- package/src/interfaces/member.d.ts.map +1 -0
- package/src/interfaces/member.js +2 -0
- package/src/interfaces/member.js.map +1 -0
- package/src/interfaces/multi-recipient-chunk.d.ts +54 -0
- package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -0
- package/src/interfaces/multi-recipient-chunk.js +11 -0
- package/src/interfaces/multi-recipient-chunk.js.map +1 -0
- package/src/interfaces/pbkdf2-config.d.ts +7 -0
- package/src/interfaces/pbkdf2-config.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-config.js +2 -0
- package/src/interfaces/pbkdf2-config.js.map +1 -0
- package/src/interfaces/pbkdf2-consts.d.ts +9 -0
- package/src/interfaces/pbkdf2-consts.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-consts.js +2 -0
- package/src/interfaces/pbkdf2-consts.js.map +1 -0
- package/src/interfaces/pbkdf2-result.d.ts +6 -0
- package/src/interfaces/pbkdf2-result.d.ts.map +1 -0
- package/src/interfaces/pbkdf2-result.js +2 -0
- package/src/interfaces/pbkdf2-result.js.map +1 -0
- package/src/interfaces/stream-config.d.ts +14 -0
- package/src/interfaces/stream-config.d.ts.map +1 -0
- package/src/interfaces/stream-config.js +8 -0
- package/src/interfaces/stream-config.js.map +1 -0
- package/src/interfaces/stream-header.d.ts +29 -0
- package/src/interfaces/stream-header.d.ts.map +1 -0
- package/src/interfaces/stream-header.js +9 -0
- package/src/interfaces/stream-header.js.map +1 -0
- package/src/interfaces/stream-progress.d.ts +33 -0
- package/src/interfaces/stream-progress.d.ts.map +1 -0
- package/src/interfaces/stream-progress.js +2 -0
- package/src/interfaces/stream-progress.js.map +1 -0
- package/src/lib/configuration-provenance-utils.d.ts +11 -0
- package/src/lib/configuration-provenance-utils.d.ts.map +1 -0
- package/src/lib/configuration-provenance-utils.js +26 -0
- package/src/lib/configuration-provenance-utils.js.map +1 -0
- package/src/lib/crypto-container.d.ts +25 -0
- package/src/lib/crypto-container.d.ts.map +1 -0
- package/src/lib/crypto-container.js +46 -0
- package/src/lib/crypto-container.js.map +1 -0
- package/src/lib/guid.d.ts +344 -0
- package/src/lib/guid.d.ts.map +1 -0
- package/src/lib/guid.js +914 -0
- package/src/lib/guid.js.map +1 -0
- package/src/lib/id-providers/custom-provider.d.ts +46 -0
- package/src/lib/id-providers/custom-provider.d.ts.map +1 -0
- package/src/lib/id-providers/custom-provider.js +85 -0
- package/src/lib/id-providers/custom-provider.js.map +1 -0
- package/src/lib/id-providers/guidv4-provider.d.ts +56 -0
- package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
- package/src/lib/id-providers/guidv4-provider.js +122 -0
- package/src/lib/id-providers/guidv4-provider.js.map +1 -0
- package/src/lib/id-providers/{index.ts → index.d.ts} +5 -6
- package/src/lib/id-providers/index.d.ts.map +1 -0
- package/src/lib/id-providers/index.js +29 -0
- package/src/lib/id-providers/index.js.map +1 -0
- package/src/lib/id-providers/objectid-provider.d.ts +43 -0
- package/src/lib/id-providers/objectid-provider.d.ts.map +1 -0
- package/src/lib/id-providers/objectid-provider.js +104 -0
- package/src/lib/id-providers/objectid-provider.js.map +1 -0
- package/src/lib/id-providers/uuid-provider.d.ts +52 -0
- package/src/lib/id-providers/uuid-provider.d.ts.map +1 -0
- package/src/lib/id-providers/uuid-provider.js +110 -0
- package/src/lib/id-providers/uuid-provider.js.map +1 -0
- package/src/lib/index.d.ts +6 -0
- package/src/lib/index.d.ts.map +1 -0
- package/src/lib/{index.ts → index.js} +2 -2
- package/src/lib/index.js.map +1 -0
- package/src/lib/invariant-validator.d.ts +59 -0
- package/src/lib/invariant-validator.d.ts.map +1 -0
- package/src/lib/invariant-validator.js +97 -0
- package/src/lib/invariant-validator.js.map +1 -0
- package/src/lib/invariants/encryption-algorithm-consistency.d.ts +17 -0
- package/src/lib/invariants/encryption-algorithm-consistency.d.ts.map +1 -0
- package/src/lib/invariants/encryption-algorithm-consistency.js +49 -0
- package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -0
- package/src/lib/invariants/index.d.ts +4 -0
- package/src/lib/invariants/index.d.ts.map +1 -0
- package/src/lib/invariants/{index.ts → index.js} +1 -0
- package/src/lib/invariants/index.js.map +1 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.d.ts +16 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.d.ts.map +1 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.js +58 -0
- package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts +18 -0
- package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
- package/src/lib/invariants/recipient-id-consistency.js +31 -0
- package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
- package/src/lib/multi-recipient-chunk-utils.d.ts +38 -0
- package/src/lib/multi-recipient-chunk-utils.d.ts.map +1 -0
- package/src/lib/multi-recipient-chunk-utils.js +41 -0
- package/src/lib/multi-recipient-chunk-utils.js.map +1 -0
- package/src/member.d.ts +92 -0
- package/src/member.d.ts.map +1 -0
- package/src/member.js +322 -0
- package/src/member.js.map +1 -0
- package/src/{pbkdf2-profiles.ts → pbkdf2-profiles.d.ts} +2 -2
- package/src/pbkdf2-profiles.d.ts.map +1 -0
- package/src/pbkdf2-profiles.js +2 -0
- package/src/pbkdf2-profiles.js.map +1 -0
- package/src/phone-number.d.ts +6 -0
- package/src/phone-number.d.ts.map +1 -0
- package/src/phone-number.js +18 -0
- package/src/phone-number.js.map +1 -0
- package/src/regexes.d.ts +7 -0
- package/src/regexes.d.ts.map +1 -0
- package/src/regexes.js +7 -0
- package/src/regexes.js.map +1 -0
- package/src/secure-buffer.d.ts +61 -0
- package/src/secure-buffer.d.ts.map +1 -0
- package/src/secure-buffer.js +201 -0
- package/src/secure-buffer.js.map +1 -0
- package/src/secure-string.d.ts +46 -0
- package/src/secure-string.d.ts.map +1 -0
- package/src/secure-string.js +206 -0
- package/src/secure-string.js.map +1 -0
- package/src/services/aes-gcm.d.ts +57 -0
- package/src/services/aes-gcm.d.ts.map +1 -0
- package/src/services/aes-gcm.js +142 -0
- package/src/services/aes-gcm.js.map +1 -0
- package/src/services/chunk-processor.d.ts +31 -0
- package/src/services/chunk-processor.d.ts.map +1 -0
- package/src/services/chunk-processor.js +145 -0
- package/src/services/chunk-processor.js.map +1 -0
- package/src/services/ecies/crypto-core.d.ts +72 -0
- package/src/services/ecies/crypto-core.d.ts.map +1 -0
- package/src/services/ecies/crypto-core.js +205 -0
- package/src/services/ecies/crypto-core.js.map +1 -0
- package/src/services/ecies/example.d.ts +25 -0
- package/src/services/ecies/example.d.ts.map +1 -0
- package/src/services/ecies/example.js +121 -0
- package/src/services/ecies/example.js.map +1 -0
- package/src/services/ecies/file.d.ts +18 -0
- package/src/services/ecies/file.d.ts.map +1 -0
- package/src/services/ecies/file.js +106 -0
- package/src/services/ecies/file.js.map +1 -0
- package/src/services/ecies/index.d.ts +38 -0
- package/src/services/ecies/index.d.ts.map +1 -0
- package/src/services/ecies/{index.ts → index.js} +1 -2
- package/src/services/ecies/index.js.map +1 -0
- package/src/services/ecies/integration.d.ts +59 -0
- package/src/services/ecies/integration.d.ts.map +1 -0
- package/src/services/ecies/integration.js +167 -0
- package/src/services/ecies/integration.js.map +1 -0
- package/src/services/ecies/interfaces.d.ts +54 -0
- package/src/services/ecies/interfaces.d.ts.map +1 -0
- package/src/services/ecies/interfaces.js +5 -0
- package/src/services/ecies/interfaces.js.map +1 -0
- package/src/services/ecies/manual-test.d.ts +29 -0
- package/src/services/ecies/manual-test.d.ts.map +1 -0
- package/src/services/ecies/manual-test.js +163 -0
- package/src/services/ecies/manual-test.js.map +1 -0
- package/src/services/ecies/multi-recipient.d.ts +56 -0
- package/src/services/ecies/multi-recipient.d.ts.map +1 -0
- package/src/services/ecies/multi-recipient.js +344 -0
- package/src/services/ecies/multi-recipient.js.map +1 -0
- package/src/services/ecies/service.d.ts +120 -0
- package/src/services/ecies/service.d.ts.map +1 -0
- package/src/services/ecies/service.js +210 -0
- package/src/services/ecies/service.js.map +1 -0
- package/src/services/ecies/signature.d.ts +27 -0
- package/src/services/ecies/signature.d.ts.map +1 -0
- package/src/services/ecies/signature.js +72 -0
- package/src/services/ecies/signature.js.map +1 -0
- package/src/services/ecies/single-recipient.d.ts +46 -0
- package/src/services/ecies/single-recipient.d.ts.map +1 -0
- package/src/services/ecies/single-recipient.js +322 -0
- package/src/services/ecies/single-recipient.js.map +1 -0
- package/src/services/encryption-stream.d.ts +71 -0
- package/src/services/encryption-stream.d.ts.map +1 -0
- package/src/services/encryption-stream.js +295 -0
- package/src/services/encryption-stream.js.map +1 -0
- package/src/services/index.d.ts +11 -0
- package/src/services/index.d.ts.map +1 -0
- package/src/services/{index.ts → index.js} +1 -0
- package/src/services/index.js.map +1 -0
- package/src/services/multi-recipient-processor.d.ts +35 -0
- package/src/services/multi-recipient-processor.d.ts.map +1 -0
- package/src/services/multi-recipient-processor.js +289 -0
- package/src/services/multi-recipient-processor.js.map +1 -0
- package/src/services/password-login.d.ts +47 -0
- package/src/services/password-login.d.ts.map +1 -0
- package/src/services/password-login.js +115 -0
- package/src/services/password-login.js.map +1 -0
- package/src/services/pbkdf2.d.ts +54 -0
- package/src/services/pbkdf2.d.ts.map +1 -0
- package/src/services/pbkdf2.js +108 -0
- package/src/services/pbkdf2.js.map +1 -0
- package/src/services/progress-tracker.d.ts +23 -0
- package/src/services/progress-tracker.d.ts.map +1 -0
- package/src/services/progress-tracker.js +103 -0
- package/src/services/progress-tracker.js.map +1 -0
- package/src/services/resumable-encryption.d.ts +19 -0
- package/src/services/resumable-encryption.d.ts.map +1 -0
- package/src/services/resumable-encryption.js +105 -0
- package/src/services/resumable-encryption.js.map +1 -0
- package/src/services/xor.d.ts +37 -0
- package/src/services/xor.d.ts.map +1 -0
- package/src/services/xor.js +63 -0
- package/src/services/xor.js.map +1 -0
- package/src/test-mocks/index.d.ts +2 -0
- package/src/test-mocks/index.d.ts.map +1 -0
- package/src/test-mocks/index.js +2 -0
- package/src/test-mocks/index.js.map +1 -0
- package/src/test-mocks/mock-frontend-member.d.ts +85 -0
- package/src/test-mocks/mock-frontend-member.d.ts.map +1 -0
- package/src/test-mocks/mock-frontend-member.js +190 -0
- package/src/test-mocks/mock-frontend-member.js.map +1 -0
- package/src/testing.d.ts +2 -0
- package/src/testing.d.ts.map +1 -0
- package/src/{testing.ts → testing.js} +1 -0
- package/src/testing.js.map +1 -0
- package/src/translations/de.d.ts +4 -0
- package/src/translations/de.d.ts.map +1 -0
- package/src/translations/{de.ts → de.js} +56 -112
- package/src/translations/de.js.map +1 -0
- package/src/translations/en-US.d.ts +4 -0
- package/src/translations/en-US.d.ts.map +1 -0
- package/src/translations/{en-US.ts → en-US.js} +58 -116
- package/src/translations/en-US.js.map +1 -0
- package/src/translations/es.d.ts +4 -0
- package/src/translations/es.d.ts.map +1 -0
- package/src/translations/{es.ts → es.js} +67 -134
- package/src/translations/es.js.map +1 -0
- package/src/translations/fr.d.ts +4 -0
- package/src/translations/fr.d.ts.map +1 -0
- package/src/translations/{fr.ts → fr.js} +64 -129
- package/src/translations/fr.js.map +1 -0
- package/src/translations/ja.d.ts +4 -0
- package/src/translations/ja.d.ts.map +1 -0
- package/src/translations/{ja.ts → ja.js} +55 -111
- package/src/translations/ja.js.map +1 -0
- package/src/translations/uk.d.ts +4 -0
- package/src/translations/uk.d.ts.map +1 -0
- package/src/translations/{uk.ts → uk.js} +67 -132
- package/src/translations/uk.js.map +1 -0
- package/src/translations/zh-cn.d.ts +4 -0
- package/src/translations/zh-cn.d.ts.map +1 -0
- package/src/translations/{zh-cn.ts → zh-cn.js} +29 -60
- package/src/translations/zh-cn.js.map +1 -0
- package/src/types/deep-partial.d.ts +4 -0
- package/src/types/deep-partial.d.ts.map +1 -0
- package/src/types/deep-partial.js +2 -0
- package/src/types/deep-partial.js.map +1 -0
- package/src/{types.ts → types.d.ts} +7 -15
- package/src/types.d.ts.map +1 -0
- package/src/types.js +2 -0
- package/src/types.js.map +1 -0
- package/src/utils/encryption-type-utils.d.ts +29 -0
- package/src/utils/encryption-type-utils.d.ts.map +1 -0
- package/src/utils/encryption-type-utils.js +61 -0
- package/src/utils/encryption-type-utils.js.map +1 -0
- package/src/utils.d.ts +68 -0
- package/src/utils.d.ts.map +1 -0
- package/src/utils.js +273 -0
- package/src/utils.js.map +1 -0
- package/LICENSE +0 -21
- package/src/builders/ecies-builder.ts +0 -39
- package/src/builders/member-builder.ts +0 -155
- package/src/constants.ts +0 -609
- package/src/core/errors/crypto-error.ts +0 -78
- package/src/core/types/result.ts +0 -19
- package/src/email-string.ts +0 -82
- package/src/enumerations/disposed-error-type.ts +0 -11
- package/src/enumerations/ecies-cipher-suite.ts +0 -4
- package/src/enumerations/ecies-encryption-type.ts +0 -41
- package/src/enumerations/ecies-error-type.ts +0 -43
- package/src/enumerations/ecies-string-key.ts +0 -205
- package/src/enumerations/ecies-version.ts +0 -3
- package/src/enumerations/guid-brand-type.ts +0 -26
- package/src/enumerations/guid-error-type.ts +0 -6
- package/src/enumerations/id-provider-error-type.ts +0 -50
- package/src/enumerations/invalid-email-type.ts +0 -5
- package/src/enumerations/length-encoding-type.ts +0 -6
- package/src/enumerations/length-error-type.ts +0 -5
- package/src/enumerations/member-error-type.ts +0 -106
- package/src/enumerations/password-login-error-type.ts +0 -4
- package/src/enumerations/pbkdf2-error-type.ts +0 -5
- package/src/enumerations/pbkdf2-profile.ts +0 -5
- package/src/enumerations/secure-storage-error-type.ts +0 -5
- package/src/errors/disposed.ts +0 -36
- package/src/errors/ecies.ts +0 -153
- package/src/errors/guid.ts +0 -130
- package/src/errors/id-provider.ts +0 -40
- package/src/errors/invalid-email.ts +0 -23
- package/src/errors/length.ts +0 -19
- package/src/errors/member.ts +0 -20
- package/src/errors/pbkdf2.ts +0 -20
- package/src/errors/secure-storage.ts +0 -17
- package/src/errors/simple-ecies.ts +0 -21
- package/src/errors/simple-test-error.ts +0 -6
- package/src/i18n-setup.ts +0 -130
- package/src/interfaces/checksum-config.ts +0 -4
- package/src/interfaces/checksum-consts.ts +0 -13
- package/src/interfaces/configuration-provenance.ts +0 -54
- package/src/interfaces/constants.ts +0 -75
- package/src/interfaces/ecies-config.ts +0 -8
- package/src/interfaces/ecies-consts.ts +0 -76
- package/src/interfaces/ecies-file-service.ts +0 -6
- package/src/interfaces/encrypted-chunk.ts +0 -64
- package/src/interfaces/encryption-state.ts +0 -19
- package/src/interfaces/frontend-member-operational.ts +0 -77
- package/src/interfaces/guid.ts +0 -86
- package/src/interfaces/id-provider.ts +0 -152
- package/src/interfaces/invariant.ts +0 -60
- package/src/interfaces/library-error.ts +0 -23
- package/src/interfaces/member.ts +0 -84
- package/src/interfaces/multi-recipient-chunk.ts +0 -61
- package/src/interfaces/pbkdf2-config.ts +0 -6
- package/src/interfaces/pbkdf2-consts.ts +0 -10
- package/src/interfaces/pbkdf2-result.ts +0 -5
- package/src/interfaces/stream-config.ts +0 -17
- package/src/interfaces/stream-header.ts +0 -34
- package/src/interfaces/stream-progress.ts +0 -31
- package/src/lib/configuration-provenance-utils.ts +0 -29
- package/src/lib/crypto-container.ts +0 -64
- package/src/lib/guid.ts +0 -1097
- package/src/lib/id-providers/custom-provider.ts +0 -109
- package/src/lib/id-providers/guidv4-provider.ts +0 -141
- package/src/lib/id-providers/objectid-provider.ts +0 -125
- package/src/lib/id-providers/uuid-provider.ts +0 -133
- package/src/lib/invariant-validator.ts +0 -133
- package/src/lib/invariants/encryption-algorithm-consistency.ts +0 -73
- package/src/lib/invariants/pbkdf2-profiles-validity.ts +0 -78
- package/src/lib/invariants/recipient-id-consistency.ts +0 -46
- package/src/lib/multi-recipient-chunk-utils.ts +0 -63
- package/src/member.ts +0 -495
- package/src/phone-number.ts +0 -18
- package/src/regexes.ts +0 -10
- package/src/secure-buffer.ts +0 -226
- package/src/secure-string.ts +0 -244
- package/src/services/aes-gcm.ts +0 -220
- package/src/services/chunk-processor.ts +0 -188
- package/src/services/ecies/README.md +0 -147
- package/src/services/ecies/crypto-core.ts +0 -292
- package/src/services/ecies/example.ts +0 -185
- package/src/services/ecies/file.ts +0 -167
- package/src/services/ecies/integration.ts +0 -241
- package/src/services/ecies/interfaces.ts +0 -62
- package/src/services/ecies/manual-test.ts +0 -219
- package/src/services/ecies/multi-recipient.ts +0 -545
- package/src/services/ecies/service.ts +0 -370
- package/src/services/ecies/signature.ts +0 -93
- package/src/services/ecies/single-recipient.ts +0 -476
- package/src/services/encryption-stream.ts +0 -435
- package/src/services/multi-recipient-processor.ts +0 -377
- package/src/services/password-login.ts +0 -226
- package/src/services/pbkdf2.ts +0 -169
- package/src/services/progress-tracker.ts +0 -128
- package/src/services/resumable-encryption.ts +0 -135
- package/src/services/xor.ts +0 -65
- package/src/test-mocks/index.ts +0 -1
- package/src/test-mocks/mock-frontend-member.ts +0 -276
- package/src/types/deep-partial.ts +0 -11
- package/src/utils/encryption-type-utils.ts +0 -76
- package/src/utils.ts +0 -329
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encryption-state.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/encryption-state.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,MAAM,wBAAwB,GAAW,CAAC,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { Wallet } from '@ethereumjs/wallet';
|
|
2
|
+
import type { EmailString } from '../email-string';
|
|
3
|
+
import type MemberType from '../enumerations/member-type';
|
|
4
|
+
import type { SecureBuffer } from '../secure-buffer';
|
|
5
|
+
import type { SecureString } from '../secure-string';
|
|
6
|
+
import type { SignatureUint8Array } from '../types';
|
|
7
|
+
import type { IECIESConstants } from './ecies-consts';
|
|
8
|
+
import type { IEncryptedChunk } from './encrypted-chunk';
|
|
9
|
+
import type { ProgressCallback } from './stream-progress';
|
|
10
|
+
/**
|
|
11
|
+
* Operational interface for member - defines getters and methods
|
|
12
|
+
*/
|
|
13
|
+
export interface IFrontendMemberOperational<TID = Uint8Array, TData = Uint8Array, TSignature = SignatureUint8Array> {
|
|
14
|
+
get id(): TID;
|
|
15
|
+
get type(): MemberType;
|
|
16
|
+
get name(): string;
|
|
17
|
+
get email(): EmailString;
|
|
18
|
+
get publicKey(): Uint8Array;
|
|
19
|
+
get creatorId(): TID;
|
|
20
|
+
get dateCreated(): Date;
|
|
21
|
+
get dateUpdated(): Date;
|
|
22
|
+
get privateKey(): SecureBuffer | undefined;
|
|
23
|
+
get wallet(): Wallet | undefined;
|
|
24
|
+
get hasPrivateKey(): boolean;
|
|
25
|
+
sign(data: TData): TSignature;
|
|
26
|
+
verify(signature: TSignature, data: TData): boolean;
|
|
27
|
+
encryptData(data: string | TData, recipientPublicKey?: Uint8Array): Promise<TData>;
|
|
28
|
+
decryptData(encryptedData: TData): Promise<TData>;
|
|
29
|
+
toJson(): string;
|
|
30
|
+
dispose(): void;
|
|
31
|
+
encryptDataStream(source: AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>, options?: {
|
|
32
|
+
recipientPublicKey?: Uint8Array;
|
|
33
|
+
onProgress?: ProgressCallback;
|
|
34
|
+
signal?: AbortSignal;
|
|
35
|
+
}): AsyncGenerator<IEncryptedChunk, void, unknown>;
|
|
36
|
+
decryptDataStream(source: AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>, options?: {
|
|
37
|
+
onProgress?: ProgressCallback;
|
|
38
|
+
signal?: AbortSignal;
|
|
39
|
+
}): AsyncGenerator<Uint8Array, void, unknown>;
|
|
40
|
+
loadWallet(mnemonic: SecureString, eciesParams?: IECIESConstants): void;
|
|
41
|
+
unloadPrivateKey(): void;
|
|
42
|
+
unloadWallet(): void;
|
|
43
|
+
unloadWalletAndPrivateKey(): void;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Extended operational interface for test members
|
|
47
|
+
*/
|
|
48
|
+
export interface ITestMemberOperational extends IFrontendMemberOperational {
|
|
49
|
+
get mnemonic(): SecureString | undefined;
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=frontend-member-operational.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontend-member-operational.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/frontend-member-operational.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,0BAA0B,CACzC,GAAG,GAAG,UAAU,EAChB,KAAK,GAAG,UAAU,EAClB,UAAU,GAAG,mBAAmB;IAGhC,IAAI,EAAE,IAAI,GAAG,CAAC;IACd,IAAI,IAAI,IAAI,UAAU,CAAC;IACvB,IAAI,IAAI,IAAI,MAAM,CAAC;IACnB,IAAI,KAAK,IAAI,WAAW,CAAC;IACzB,IAAI,SAAS,IAAI,UAAU,CAAC;IAC5B,IAAI,SAAS,IAAI,GAAG,CAAC;IACrB,IAAI,WAAW,IAAI,IAAI,CAAC;IACxB,IAAI,WAAW,IAAI,IAAI,CAAC;IAGxB,IAAI,UAAU,IAAI,YAAY,GAAG,SAAS,CAAC;IAC3C,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAAC;IAGjC,IAAI,aAAa,IAAI,OAAO,CAAC;IAG7B,IAAI,CAAC,IAAI,EAAE,KAAK,GAAG,UAAU,CAAC;IAC9B,MAAM,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;IACpD,WAAW,CACT,IAAI,EAAE,MAAM,GAAG,KAAK,EACpB,kBAAkB,CAAC,EAAE,UAAU,GAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;IAClB,WAAW,CAAC,aAAa,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,IAAI,MAAM,CAAC;IACjB,OAAO,IAAI,IAAI,CAAC;IAGhB,iBAAiB,CACf,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,EAC9D,OAAO,CAAC,EAAE;QACR,kBAAkB,CAAC,EAAE,UAAU,CAAC;QAChC,UAAU,CAAC,EAAE,gBAAgB,CAAC;QAC9B,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GACA,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAElD,iBAAiB,CACf,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,EAC9D,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,gBAAgB,CAAC;QAC9B,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GACA,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAG7C,UAAU,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACxE,gBAAgB,IAAI,IAAI,CAAC;IACzB,YAAY,IAAI,IAAI,CAAC;IACrB,yBAAyB,IAAI,IAAI,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,QAAQ,IAAI,YAAY,GAAG,SAAS,CAAC;CAC1C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"frontend-member-operational.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/frontend-member-operational.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { Base64Guid, BigIntGuid, FullHexGuid, RawGuidBuffer, ShortHexGuid } from '../types';
|
|
2
|
+
export interface IGuidV4 {
|
|
3
|
+
/**
|
|
4
|
+
* Returns the GUID as a raw buffer.
|
|
5
|
+
*/
|
|
6
|
+
get asRawGuidBuffer(): RawGuidBuffer;
|
|
7
|
+
/**
|
|
8
|
+
* Returns the GUID as a full hex string.
|
|
9
|
+
*/
|
|
10
|
+
get asFullHexGuid(): FullHexGuid;
|
|
11
|
+
/**
|
|
12
|
+
* Returns the GUID as a Uint8Array.
|
|
13
|
+
*/
|
|
14
|
+
get asUint8Array(): Uint8Array;
|
|
15
|
+
/**
|
|
16
|
+
* Returns the GUID as a short hex string.
|
|
17
|
+
*/
|
|
18
|
+
get asShortHexGuid(): ShortHexGuid;
|
|
19
|
+
/**
|
|
20
|
+
* Returns the GUID as a BigInt.
|
|
21
|
+
*/
|
|
22
|
+
get asBigIntGuid(): BigIntGuid;
|
|
23
|
+
/**
|
|
24
|
+
* Returns the GUID as a Base64 string.
|
|
25
|
+
*/
|
|
26
|
+
get asBase64Guid(): Base64Guid;
|
|
27
|
+
/**
|
|
28
|
+
* Returns the GUID as a base64 string
|
|
29
|
+
*/
|
|
30
|
+
serialize(): string;
|
|
31
|
+
/**
|
|
32
|
+
* Returns the GUID as a JSON string
|
|
33
|
+
*/
|
|
34
|
+
toJson(): string;
|
|
35
|
+
/**
|
|
36
|
+
* Returns the GUID as a Base64 string
|
|
37
|
+
*/
|
|
38
|
+
toString(): Base64Guid;
|
|
39
|
+
/**
|
|
40
|
+
* Compares this GUID to another GUID
|
|
41
|
+
* @param other The GUID to compare to (can be null/undefined)
|
|
42
|
+
* @param constantTime Use constant-time comparison to prevent timing attacks
|
|
43
|
+
*/
|
|
44
|
+
equals(other: IGuidV4 | null | undefined, constantTime?: boolean): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Creates a new GuidV4 instance with the same value as this one.
|
|
47
|
+
* @returns A new GuidV4 instance with identical value
|
|
48
|
+
*/
|
|
49
|
+
clone(): IGuidV4;
|
|
50
|
+
/**
|
|
51
|
+
* Returns the hash code for this GUID based on its buffer content.
|
|
52
|
+
* Useful for using GUIDs as Map/Set keys.
|
|
53
|
+
* @returns A numeric hash code
|
|
54
|
+
*/
|
|
55
|
+
hashCode(): number;
|
|
56
|
+
/**
|
|
57
|
+
* Checks if this GUID is empty (all zeros).
|
|
58
|
+
* @returns True if the GUID is all zeros, false otherwise
|
|
59
|
+
*/
|
|
60
|
+
isEmpty(): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Extracts the RFC 4122 version from the GUID.
|
|
63
|
+
* @returns The version number (1-5) or undefined
|
|
64
|
+
*/
|
|
65
|
+
getVersion(): number | undefined;
|
|
66
|
+
/**
|
|
67
|
+
* Validates that this GUID is a proper v4 GUID according to RFC 4122.
|
|
68
|
+
* @returns True if valid v4 GUID or boundary value, false otherwise
|
|
69
|
+
*/
|
|
70
|
+
isValidV4(): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* Compares two GUIDs for ordering.
|
|
73
|
+
* @param other The other GUID to compare to
|
|
74
|
+
* @returns -1 if this < other, 0 if equal, 1 if this > other
|
|
75
|
+
*/
|
|
76
|
+
compareTo(other: IGuidV4): number;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=guid.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guid.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/guid.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,UAAU,EAEV,WAAW,EACX,aAAa,EACb,YAAY,EACb,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,IAAI,eAAe,IAAI,aAAa,CAAC;IACrC;;OAEG;IACH,IAAI,aAAa,IAAI,WAAW,CAAC;IACjC;;OAEG;IACH,IAAI,YAAY,IAAI,UAAU,CAAC;IAC/B;;OAEG;IACH,IAAI,cAAc,IAAI,YAAY,CAAC;IACnC;;OAEG;IACH,IAAI,YAAY,IAAI,UAAU,CAAC;IAC/B;;OAEG;IACH,IAAI,YAAY,IAAI,UAAU,CAAC;IAE/B;;OAEG;IACH,SAAS,IAAI,MAAM,CAAC;IACpB;;OAEG;IACH,MAAM,IAAI,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,IAAI,UAAU,CAAC;IACvB;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3E;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC;IACjB;;;;OAIG;IACH,QAAQ,IAAI,MAAM,CAAC;IACnB;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC;IACnB;;;OAGG;IACH,UAAU,IAAI,MAAM,GAAG,SAAS,CAAC;IACjC;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC;IACrB;;;;OAIG;IACH,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;CACnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guid.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/guid.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Interface for ID providers that supply recipient identifiers.
|
|
3
|
+
* This allows the library to support various ID formats (ObjectID, GUID, UUID, custom).
|
|
4
|
+
*/
|
|
5
|
+
export interface IIdProvider {
|
|
6
|
+
/**
|
|
7
|
+
* The fixed byte length of IDs produced by this provider.
|
|
8
|
+
* This determines the size of recipient ID fields in encrypted messages.
|
|
9
|
+
*/
|
|
10
|
+
readonly byteLength: number;
|
|
11
|
+
/**
|
|
12
|
+
* A human-readable name for this ID provider type.
|
|
13
|
+
* Examples: 'ObjectID', 'GUIDv4', 'UUIDv4', 'Custom'
|
|
14
|
+
*/
|
|
15
|
+
readonly name: string;
|
|
16
|
+
/**
|
|
17
|
+
* Generate a new random ID.
|
|
18
|
+
* @returns A newly generated ID as a Uint8Array of length `byteLength`
|
|
19
|
+
*/
|
|
20
|
+
generate(): Uint8Array;
|
|
21
|
+
/**
|
|
22
|
+
* Validate that a given buffer is a properly formatted ID for this provider.
|
|
23
|
+
* This should check length, format constraints, and any version bits if applicable.
|
|
24
|
+
* @param id The ID buffer to validate
|
|
25
|
+
* @returns True if the ID is valid for this provider, false otherwise
|
|
26
|
+
*/
|
|
27
|
+
validate(id: Uint8Array): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Serialize an ID buffer to a human-readable string representation.
|
|
30
|
+
* Examples: hex string, base64, ObjectID hex, UUID format with dashes
|
|
31
|
+
* @param id The ID buffer to serialize
|
|
32
|
+
* @returns A string representation of the ID
|
|
33
|
+
* @throws Error if the ID is invalid
|
|
34
|
+
*/
|
|
35
|
+
serialize(id: Uint8Array): string;
|
|
36
|
+
/**
|
|
37
|
+
* Deserialize a string representation back to an ID buffer.
|
|
38
|
+
* This is the inverse of `serialize`.
|
|
39
|
+
* @param str The string representation of the ID
|
|
40
|
+
* @returns The ID as a Uint8Array of length `byteLength`
|
|
41
|
+
* @throws Error if the string is not a valid representation
|
|
42
|
+
*/
|
|
43
|
+
deserialize(str: string): Uint8Array;
|
|
44
|
+
/**
|
|
45
|
+
* Compare two IDs for equality.
|
|
46
|
+
* Default implementation uses constant-time comparison.
|
|
47
|
+
* @param a First ID
|
|
48
|
+
* @param b Second ID
|
|
49
|
+
* @returns True if IDs are equal, false otherwise
|
|
50
|
+
*/
|
|
51
|
+
equals(a: Uint8Array, b: Uint8Array): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Clone an ID buffer.
|
|
54
|
+
* Default implementation creates a defensive copy.
|
|
55
|
+
* @param id The ID to clone
|
|
56
|
+
* @returns A new Uint8Array with the same contents
|
|
57
|
+
*/
|
|
58
|
+
clone(id: Uint8Array): Uint8Array;
|
|
59
|
+
/**
|
|
60
|
+
* Convert an ID of unknown type to a string representation.
|
|
61
|
+
* This is useful when dealing with generic IDs that might be Uint8Array, string, or other types.
|
|
62
|
+
* @param id The ID to convert
|
|
63
|
+
* @returns A string representation of the ID
|
|
64
|
+
*/
|
|
65
|
+
idToString(id: unknown): string;
|
|
66
|
+
/**
|
|
67
|
+
* Convert a string representation of an ID back to an ID buffer.
|
|
68
|
+
* This is an alias for `deserialize` to provide symmetry with `idToString`.
|
|
69
|
+
* @param str The string representation of the ID
|
|
70
|
+
* @returns The ID as a Uint8Array of length `byteLength`
|
|
71
|
+
*/
|
|
72
|
+
idFromString(str: string): Uint8Array;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Base class for ID providers with common utility methods.
|
|
76
|
+
*/
|
|
77
|
+
export declare abstract class BaseIdProvider implements IIdProvider {
|
|
78
|
+
abstract readonly byteLength: number;
|
|
79
|
+
abstract readonly name: string;
|
|
80
|
+
abstract generate(): Uint8Array;
|
|
81
|
+
abstract validate(id: Uint8Array): boolean;
|
|
82
|
+
abstract serialize(id: Uint8Array): string;
|
|
83
|
+
abstract deserialize(str: string): Uint8Array;
|
|
84
|
+
/**
|
|
85
|
+
* Convert an ID of unknown type to a string representation.
|
|
86
|
+
* Default implementation handles Uint8Array using serialize(), and falls back to String().
|
|
87
|
+
*/
|
|
88
|
+
idToString(id: unknown): string;
|
|
89
|
+
/**
|
|
90
|
+
* Convert a string representation of an ID back to an ID buffer.
|
|
91
|
+
* Default implementation delegates to `deserialize`.
|
|
92
|
+
*/
|
|
93
|
+
idFromString(str: string): Uint8Array;
|
|
94
|
+
/**
|
|
95
|
+
* Constant-time comparison to prevent timing attacks.
|
|
96
|
+
*/
|
|
97
|
+
equals(a: Uint8Array, b: Uint8Array): boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Create a defensive copy of an ID.
|
|
100
|
+
*/
|
|
101
|
+
clone(id: Uint8Array): Uint8Array;
|
|
102
|
+
/**
|
|
103
|
+
* Validate ID length matches expected byte length.
|
|
104
|
+
*/
|
|
105
|
+
protected validateLength(id: Uint8Array, context: string): void;
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=id-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id-provider.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/id-provider.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,IAAI,UAAU,CAAC;IAEvB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC;IAElC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM,CAAC;IAElC;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAErC;;;;;;OAMG;IACH,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;IAE9C;;;;;OAKG;IACH,KAAK,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU,CAAC;IAElC;;;;;OAKG;IACH,UAAU,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAAC;IAEhC;;;;;OAKG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CACvC;AAED;;GAEG;AACH,8BAAsB,cAAe,YAAW,WAAW;IACzD,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAE/B,QAAQ,CAAC,QAAQ,IAAI,UAAU;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,GAAG,OAAO;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,UAAU,GAAG,MAAM;IAC1C,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAE7C;;;OAGG;IACH,UAAU,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM;IAO/B;;;OAGG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAIrC;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO;IAY7C;;OAEG;IACH,KAAK,CAAC,EAAE,EAAE,UAAU,GAAG,UAAU;IAIjC;;OAEG;IACH,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;CAYhE"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base class for ID providers with common utility methods.
|
|
3
|
+
*/
|
|
4
|
+
export class BaseIdProvider {
|
|
5
|
+
/**
|
|
6
|
+
* Convert an ID of unknown type to a string representation.
|
|
7
|
+
* Default implementation handles Uint8Array using serialize(), and falls back to String().
|
|
8
|
+
*/
|
|
9
|
+
idToString(id) {
|
|
10
|
+
if (id instanceof Uint8Array) {
|
|
11
|
+
return this.serialize(id);
|
|
12
|
+
}
|
|
13
|
+
return String(id);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Convert a string representation of an ID back to an ID buffer.
|
|
17
|
+
* Default implementation delegates to `deserialize`.
|
|
18
|
+
*/
|
|
19
|
+
idFromString(str) {
|
|
20
|
+
return this.deserialize(str);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Constant-time comparison to prevent timing attacks.
|
|
24
|
+
*/
|
|
25
|
+
equals(a, b) {
|
|
26
|
+
if (a.length !== b.length) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
let diff = 0;
|
|
30
|
+
for (let i = 0; i < a.length; i++) {
|
|
31
|
+
diff |= a[i] ^ b[i];
|
|
32
|
+
}
|
|
33
|
+
return diff === 0;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Create a defensive copy of an ID.
|
|
37
|
+
*/
|
|
38
|
+
clone(id) {
|
|
39
|
+
return new Uint8Array(id);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Validate ID length matches expected byte length.
|
|
43
|
+
*/
|
|
44
|
+
validateLength(id, context) {
|
|
45
|
+
if (id.length !== this.byteLength) {
|
|
46
|
+
const { IdProviderError } = require('../errors/id-provider');
|
|
47
|
+
const { IdProviderErrorType } = require('../enumerations/id-provider-error-type');
|
|
48
|
+
throw new IdProviderError(IdProviderErrorType.InvalidLength, undefined, undefined, { context, expected: this.byteLength, actual: id.length });
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=id-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"id-provider.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/id-provider.ts"],"names":[],"mappings":"AAmFA;;GAEG;AACH,MAAM,OAAgB,cAAc;IASlC;;;OAGG;IACH,UAAU,CAAC,EAAW;QACpB,IAAI,EAAE,YAAY,UAAU,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,CAAa,EAAE,CAAa;QACjC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,IAAI,KAAK,CAAC,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,EAAc;QAClB,OAAO,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACO,cAAc,CAAC,EAAc,EAAE,OAAe;QACtD,IAAI,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;YAClC,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;YAC7D,MAAM,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC,wCAAwC,CAAC,CAAC;YAClF,MAAM,IAAI,eAAe,CACvB,mBAAmB,CAAC,aAAa,EACjC,SAAS,EACT,SAAS,EACT,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAC1D,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC;AACvB,mBAAmB,UAAU,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,mBAAmB,wBAAwB,CAAC;AAC5C,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './checksum-config';
|
|
2
|
+
export * from './checksum-consts';
|
|
3
|
+
export * from './constants';
|
|
4
|
+
export * from './ecies-config';
|
|
5
|
+
export * from './ecies-consts';
|
|
6
|
+
export * from './ecies-file-service';
|
|
7
|
+
export * from './frontend-member-operational';
|
|
8
|
+
export * from './guid';
|
|
9
|
+
export * from './member-storage';
|
|
10
|
+
export * from './pbkdf2-config';
|
|
11
|
+
export * from './pbkdf2-consts';
|
|
12
|
+
export * from './pbkdf2-result';
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,QAAQ,CAAC;AAEvB,cAAc,kBAAkB,CAAC;AAEjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { IConstants } from './constants';
|
|
2
|
+
/**
|
|
3
|
+
* An invariant is a relationship between configuration values that must always hold true.
|
|
4
|
+
* Unlike simple property validation, invariants check consistency across multiple related values.
|
|
5
|
+
*
|
|
6
|
+
* Example: MEMBER_ID_LENGTH must equal idProvider.byteLength
|
|
7
|
+
*
|
|
8
|
+
* Invariants help catch configuration errors that simple property validation would miss,
|
|
9
|
+
* such as the 12 vs 32 byte discrepancy we encountered.
|
|
10
|
+
*/
|
|
11
|
+
export interface IInvariant {
|
|
12
|
+
/**
|
|
13
|
+
* Unique name for this invariant (used in error messages)
|
|
14
|
+
*/
|
|
15
|
+
readonly name: string;
|
|
16
|
+
/**
|
|
17
|
+
* Human-readable description of what this invariant validates
|
|
18
|
+
*/
|
|
19
|
+
readonly description: string;
|
|
20
|
+
/**
|
|
21
|
+
* Check if the invariant holds for the given configuration
|
|
22
|
+
* @returns true if invariant is satisfied, false otherwise
|
|
23
|
+
*/
|
|
24
|
+
check(config: IConstants): boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Generate a detailed error message explaining why the invariant failed
|
|
27
|
+
* @param config The configuration that failed validation
|
|
28
|
+
* @returns Error message with actual vs expected values
|
|
29
|
+
*/
|
|
30
|
+
errorMessage(config: IConstants): string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Base class for invariants with common utilities
|
|
34
|
+
*/
|
|
35
|
+
export declare abstract class BaseInvariant implements IInvariant {
|
|
36
|
+
readonly name: string;
|
|
37
|
+
readonly description: string;
|
|
38
|
+
constructor(name: string, description: string);
|
|
39
|
+
abstract check(config: IConstants): boolean;
|
|
40
|
+
abstract errorMessage(config: IConstants): string;
|
|
41
|
+
/**
|
|
42
|
+
* Helper to format error messages consistently
|
|
43
|
+
*/
|
|
44
|
+
protected formatError(property1: string, value1: unknown, property2: string, value2: unknown): string;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=invariant.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invariant.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/invariant.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;GAQG;AACH,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAE7B;;;OAGG;IACH,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC;IAEnC;;;;OAIG;IACH,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;CAC1C;AAED;;GAEG;AACH,8BAAsB,aAAc,YAAW,UAAU;aAErC,IAAI,EAAE,MAAM;aACZ,WAAW,EAAE,MAAM;gBADnB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM;IAGrC,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAC3C,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAEjD;;OAEG;IACH,SAAS,CAAC,WAAW,CACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,GACd,MAAM;CAGV"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base class for invariants with common utilities
|
|
3
|
+
*/
|
|
4
|
+
export class BaseInvariant {
|
|
5
|
+
name;
|
|
6
|
+
description;
|
|
7
|
+
constructor(name, description) {
|
|
8
|
+
this.name = name;
|
|
9
|
+
this.description = description;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Helper to format error messages consistently
|
|
13
|
+
*/
|
|
14
|
+
formatError(property1, value1, property2, value2) {
|
|
15
|
+
return `Invariant '${this.name}' failed: ${property1} (${value1}) must equal ${property2} (${value2})`;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=invariant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invariant.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/invariant.ts"],"names":[],"mappings":"AAoCA;;GAEG;AACH,MAAM,OAAgB,aAAa;IAEf;IACA;IAFlB,YACkB,IAAY,EACZ,WAAmB;QADnB,SAAI,GAAJ,IAAI,CAAQ;QACZ,gBAAW,GAAX,WAAW,CAAQ;IAClC,CAAC;IAKJ;;OAEG;IACO,WAAW,CACnB,SAAiB,EACjB,MAAe,EACf,SAAiB,EACjB,MAAe;QAEf,OAAO,cAAc,IAAI,CAAC,IAAI,aAAa,SAAS,KAAK,MAAM,gBAAgB,SAAS,KAAK,MAAM,GAAG,CAAC;IACzG,CAAC;CACF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Standardized error interface for Digital Defiance libraries
|
|
3
|
+
* Ensures consistent error handling across the ecosystem
|
|
4
|
+
*/
|
|
5
|
+
export interface LibraryError extends Error {
|
|
6
|
+
/** The library that generated this error */
|
|
7
|
+
readonly library: string;
|
|
8
|
+
/** Unique error code for programmatic handling */
|
|
9
|
+
readonly errorCode: string;
|
|
10
|
+
/** HTTP-style status code */
|
|
11
|
+
readonly statusCode: number;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Interface for resources that can be disposed
|
|
15
|
+
* Ensures consistent memory management across libraries
|
|
16
|
+
*/
|
|
17
|
+
export interface DisposableResource {
|
|
18
|
+
/** Dispose of the resource and clean up memory */
|
|
19
|
+
dispose(): void;
|
|
20
|
+
/** Whether the resource has been disposed */
|
|
21
|
+
readonly isDisposed: boolean;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=library-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library-error.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/library-error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,KAAK;IACzC,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,kDAAkD;IAClD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,6BAA6B;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,kDAAkD;IAClD,OAAO,IAAI,IAAI,CAAC;IAChB,6CAA6C;IAC7C,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library-error.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/library-error.ts"],"names":[],"mappings":""}
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import type { MemberType } from '../enumerations/member-type';
|
|
2
|
-
|
|
3
2
|
/**
|
|
4
3
|
* Storage format for member data - all serializable types
|
|
5
4
|
*/
|
|
6
5
|
export interface IMemberStorageData {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
6
|
+
id: string;
|
|
7
|
+
type: MemberType;
|
|
8
|
+
name: string;
|
|
9
|
+
email: string;
|
|
10
|
+
publicKey: string;
|
|
11
|
+
creatorId: string;
|
|
12
|
+
dateCreated: string;
|
|
13
|
+
dateUpdated: string;
|
|
15
14
|
}
|
|
16
|
-
|
|
17
15
|
/**
|
|
18
16
|
* Extended storage format for test member data
|
|
19
17
|
*/
|
|
20
18
|
export interface ITestMemberStorageData extends IMemberStorageData {
|
|
21
|
-
|
|
19
|
+
mnemonic?: string;
|
|
22
20
|
}
|
|
21
|
+
//# sourceMappingURL=member-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member-storage.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member-storage.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member-storage.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { SecureString } from '../secure-string';
|
|
2
2
|
import type { IMember } from './member';
|
|
3
|
-
|
|
4
3
|
export interface IMemberWithMnemonic {
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
member: IMember;
|
|
5
|
+
mnemonic: SecureString;
|
|
7
6
|
}
|
|
7
|
+
//# sourceMappingURL=member-with-mnemonic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member-with-mnemonic.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member-with-mnemonic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,YAAY,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member-with-mnemonic.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member-with-mnemonic.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Wallet } from '@ethereumjs/wallet';
|
|
2
|
+
import type { EmailString } from '../email-string';
|
|
3
|
+
import type MemberType from '../enumerations/member-type';
|
|
4
|
+
import type { SecureBuffer } from '../secure-buffer';
|
|
5
|
+
import type { SecureString } from '../secure-string';
|
|
6
|
+
import type { SignatureUint8Array } from '../types';
|
|
7
|
+
import type { IECIESConstants } from './ecies-consts';
|
|
8
|
+
import type { IEncryptedChunk } from './encrypted-chunk';
|
|
9
|
+
/**
|
|
10
|
+
* Interface representing a member with cryptographic capabilities.
|
|
11
|
+
* This interface defines the contract for member operations without
|
|
12
|
+
* referencing concrete class implementations.
|
|
13
|
+
*/
|
|
14
|
+
export interface IMember {
|
|
15
|
+
readonly id: Uint8Array;
|
|
16
|
+
readonly type: MemberType;
|
|
17
|
+
readonly name: string;
|
|
18
|
+
readonly email: EmailString;
|
|
19
|
+
readonly publicKey: Uint8Array;
|
|
20
|
+
readonly creatorId: Uint8Array;
|
|
21
|
+
readonly dateCreated: Date;
|
|
22
|
+
readonly dateUpdated: Date;
|
|
23
|
+
readonly privateKey: SecureBuffer | undefined;
|
|
24
|
+
readonly wallet: Wallet;
|
|
25
|
+
readonly hasPrivateKey: boolean;
|
|
26
|
+
unloadPrivateKey(): void;
|
|
27
|
+
unloadWallet(): void;
|
|
28
|
+
unloadWalletAndPrivateKey(): void;
|
|
29
|
+
loadWallet(mnemonic: SecureString, eciesParams?: IECIESConstants): void;
|
|
30
|
+
loadPrivateKey(privateKey: SecureBuffer): void;
|
|
31
|
+
sign(data: Uint8Array): SignatureUint8Array;
|
|
32
|
+
signData(data: Uint8Array): SignatureUint8Array;
|
|
33
|
+
verify(signature: SignatureUint8Array, data: Uint8Array): boolean;
|
|
34
|
+
verifySignature(data: Uint8Array, signature: Uint8Array, publicKey: Uint8Array): boolean;
|
|
35
|
+
encryptDataStream(source: AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>, options?: {
|
|
36
|
+
recipientPublicKey?: Uint8Array;
|
|
37
|
+
onProgress?: (progress: {
|
|
38
|
+
bytesProcessed: number;
|
|
39
|
+
chunksProcessed: number;
|
|
40
|
+
}) => void;
|
|
41
|
+
signal?: AbortSignal;
|
|
42
|
+
}): AsyncGenerator<IEncryptedChunk, void, unknown>;
|
|
43
|
+
decryptDataStream(source: AsyncIterable<Uint8Array> | ReadableStream<Uint8Array>, options?: {
|
|
44
|
+
onProgress?: (progress: {
|
|
45
|
+
bytesProcessed: number;
|
|
46
|
+
chunksProcessed: number;
|
|
47
|
+
}) => void;
|
|
48
|
+
signal?: AbortSignal;
|
|
49
|
+
}): AsyncGenerator<Uint8Array, void, unknown>;
|
|
50
|
+
encryptData(data: string | Uint8Array, recipientPublicKey?: Uint8Array): Promise<Uint8Array>;
|
|
51
|
+
decryptData(encryptedData: Uint8Array): Promise<Uint8Array>;
|
|
52
|
+
toJson(): string;
|
|
53
|
+
dispose(): void;
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=member.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,UAAU,MAAM,6BAA6B,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,WAAW,OAAO;IAEtB,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAG3B,QAAQ,CAAC,UAAU,EAAE,YAAY,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAGxB,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAGhC,gBAAgB,IAAI,IAAI,CAAC;IACzB,YAAY,IAAI,IAAI,CAAC;IACrB,yBAAyB,IAAI,IAAI,CAAC;IAClC,UAAU,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACxE,cAAc,CAAC,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;IAG/C,IAAI,CAAC,IAAI,EAAE,UAAU,GAAG,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,mBAAmB,CAAC;IAChD,MAAM,CAAC,SAAS,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAClE,eAAe,CACb,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC;IAGX,iBAAiB,CACf,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,EAC9D,OAAO,CAAC,EAAE;QACR,kBAAkB,CAAC,EAAE,UAAU,CAAC;QAChC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;YACtB,cAAc,EAAE,MAAM,CAAC;YACvB,eAAe,EAAE,MAAM,CAAC;SACzB,KAAK,IAAI,CAAC;QACX,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GACA,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAElD,iBAAiB,CACf,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,EAC9D,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;YACtB,cAAc,EAAE,MAAM,CAAC;YACvB,eAAe,EAAE,MAAM,CAAC;SACzB,KAAK,IAAI,CAAC;QACX,MAAM,CAAC,EAAE,WAAW,CAAC;KACtB,GACA,cAAc,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAE7C,WAAW,CACT,IAAI,EAAE,MAAM,GAAG,UAAU,EACzB,kBAAkB,CAAC,EAAE,UAAU,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,WAAW,CAAC,aAAa,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAG5D,MAAM,IAAI,MAAM,CAAC;IACjB,OAAO,IAAI,IAAI,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"member.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/interfaces/member.ts"],"names":[],"mappings":""}
|