@keeper-security/keeperapi 16.0.1 → 16.0.4
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/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/4939a895ecf4daac58b0d73bccd49876515d41b8 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/77aced5528ce05fe900fdf7634042ec3c0f18255 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/code/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/4939a895ecf4daac58b0d73bccd49876515d41b8 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/77aced5528ce05fe900fdf7634042ec3c0f18255 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/semanticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/4939a895ecf4daac58b0d73bccd49876515d41b8 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/77aced5528ce05fe900fdf7634042ec3c0f18255 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/syntacticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/20b49cde4def23063b280689e4ff4d5a3803712b +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/3809196a67de680945038f2b4846e2e3b4af35aa +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/4ad5d47b1ce7bf45cc7d9ff8c970e1fc57f446f3 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/5a0816a3c916ff0e4961dc0ec2da48646f2ac5aa +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/6182f5491d41e8f10acfbcf46ee875587904f5a3 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/7ca2e31bcece668dfa5de5e1349ba34a757b5140 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/86a4b0102f5568ac0a5b946d05c55f42c30b472d +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/87fae47dd5b05377c04cfe377699d748414dc1c9 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/a7c23ecebcaf23c9346007731c5796b96c580738 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/ac4d101c3489192db3e0ec98430a2336cba9a741 +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/b1eb441c5b806d06ba6bb36fcfd0cc4746c23a8a +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/b7942903000069a51e317fef1595a8ea1d8b828d +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/cee91236390168fd38b01aaae7bed3099bb4555a +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/d7c87ce194d923e6f02c7e570008e88ade1cbabf +0 -0
- package/.rpt2_cache/rpt2_73ef004c41e5fb714e8076cf96455df4f040d49c/types/cache/fba70878178c036fb4e9e1f19bdb465a1270d258 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/05d17f791979143cbce20e3e3e811aa19ed8b492 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/4ee978699d6de2a60214b16c42d87f8e9309636b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/50f4a014d14ada987c125e6ea55d4e6e75605313 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/code/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/05d17f791979143cbce20e3e3e811aa19ed8b492 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/4ee978699d6de2a60214b16c42d87f8e9309636b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/50f4a014d14ada987c125e6ea55d4e6e75605313 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/semanticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/05d17f791979143cbce20e3e3e811aa19ed8b492 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/07113f92cc3a9f5dc57b92f54542a63463f1fa9a +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/1ba6467ba06d4bfc0c8581f4ee12c2c0f687214e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/1de1e40928c5c58c4f677d93986cdff01b3d0417 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/47382883a57ad5790d3fd6abd39f33f773726b3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/4d58c1113d07816b1909aaef4395fd8b4d0ee13c +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/4ee978699d6de2a60214b16c42d87f8e9309636b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/50f4a014d14ada987c125e6ea55d4e6e75605313 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/58aa8c228c99b690d3ca1f3b464585c41d1cd4bb +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/592d89407340c5ec6ad006df327e588b3f442eca +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/59783c8cc0cc9d984f5407c218d213bca4c98503 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/61fa6cf725249a1cae9b94b74a8c23aa3efd2ca1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/89f8a81d9d078b69f9fa7fa95251b38ccc394a3b +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/b32ea8d6d3de0c6d8e178eff069fea4e11fa92b1 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/c05be8364ff56aba0298689783666ddb97a31285 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/e23bf49223ba8b7ec926e46c40b27b0353cfc50e +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/syntacticDiagnostics/cache/eec92c105b2694c31bff21903ddc3ef81af8f056 +1 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/20b49cde4def23063b280689e4ff4d5a3803712b +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/3809196a67de680945038f2b4846e2e3b4af35aa +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/4ad5d47b1ce7bf45cc7d9ff8c970e1fc57f446f3 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/5a0816a3c916ff0e4961dc0ec2da48646f2ac5aa +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/6182f5491d41e8f10acfbcf46ee875587904f5a3 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/7ca2e31bcece668dfa5de5e1349ba34a757b5140 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/86a4b0102f5568ac0a5b946d05c55f42c30b472d +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/87fae47dd5b05377c04cfe377699d748414dc1c9 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/a7c23ecebcaf23c9346007731c5796b96c580738 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/ac4d101c3489192db3e0ec98430a2336cba9a741 +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/b1eb441c5b806d06ba6bb36fcfd0cc4746c23a8a +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/b7942903000069a51e317fef1595a8ea1d8b828d +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/cee91236390168fd38b01aaae7bed3099bb4555a +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/d7c87ce194d923e6f02c7e570008e88ade1cbabf +0 -0
- package/.rpt2_cache/rpt2_e52dc086a65136b8064433446ffcd05307935b95/types/cache/fba70878178c036fb4e9e1f19bdb465a1270d258 +0 -0
- package/babel.config.js +6 -0
- package/package.json +7 -10
- package/rollup.config.js +50 -0
- package/scripts/cleanDistFolder.js +9 -0
- package/src/__tests__/utils.test.js +13 -0
- package/src/auth.ts +1514 -0
- package/src/browser/asn1hex.ts +296 -0
- package/src/browser/index.ts +17 -0
- package/src/browser/jsbn.ts +1213 -0
- package/src/browser/platform.ts +434 -0
- package/src/browser/rng.ts +15 -0
- package/src/browser/rsa.ts +262 -0
- package/src/commands.ts +1378 -0
- package/src/company.ts +244 -0
- package/src/configuration.ts +125 -0
- package/src/endpoint.ts +350 -0
- package/src/node/index.ts +17 -0
- package/src/node/platform.ts +283 -0
- package/src/platform.ts +76 -0
- package/{dist → src}/proto.d.ts +0 -0
- package/src/proto.js +136564 -0
- package/src/restMessages.ts +311 -0
- package/src/utils.ts +169 -0
- package/src/vault.ts +844 -0
- package/src/vendorContext.ts +69 -0
- package/src/vendorModel.ts +36 -0
- package/tsconfig.json +14 -0
- package/tsconfig.rollup.json +14 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"code":"// Copyright (c) 2005 Tom Wu\r\n// All Rights Reserved.\r\n// See \"LICENSE\" for details.\r\n// Basic JavaScript BN library - subset useful for RSA encryption.\r\n// Bits per digit\r\nvar dbits;\r\n// JavaScript engine analysis\r\nvar canary = 0xdeadbeefcafe;\r\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\r\n// (public) Constructor\r\nexport function BigInteger(a, b, c) {\r\n if (a != null)\r\n if (\"number\" == typeof a)\r\n this.fromNumber(a, b, c);\r\n else if (b == null && \"string\" != typeof a)\r\n this.fromString(a, 256);\r\n else\r\n this.fromString(a, b);\r\n}\r\n// convert a (hex) string to a bignum object\r\nexport function parseBigInt(str, r) {\r\n return new BigInteger(str, r);\r\n}\r\n// return new, unset BigInteger\r\nfunction nbi() { return new BigInteger(); }\r\n// am: Compute w_j += (x*this_i), propagate carries,\r\n// c is initial carry, returns final carry.\r\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\r\n// We need to select the fastest one that works in this environment.\r\n// am1: use a single mult and divide to get the high bits,\r\n// max digit bits should be 26 because\r\n// max internal value = 2*dvalue^2-2*dvalue (< 2^53)\r\nfunction am1(i, x, w, j, c, n) {\r\n while (--n >= 0) {\r\n var v = x * this[i++] + w[j] + c;\r\n c = Math.floor(v / 0x4000000);\r\n w[j++] = v & 0x3ffffff;\r\n }\r\n return c;\r\n}\r\n// am2 avoids a big mult-and-extract completely.\r\n// Max digit bits should be <= 30 because we do bitwise ops\r\n// on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\r\nfunction am2(i, x, w, j, c, n) {\r\n var xl = x & 0x7fff, xh = x >> 15;\r\n while (--n >= 0) {\r\n var l = this[i] & 0x7fff;\r\n var h = this[i++] >> 15;\r\n var m = xh * l + h * xl;\r\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\r\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\r\n w[j++] = l & 0x3fffffff;\r\n }\r\n return c;\r\n}\r\n// Alternately, set max digit bits to 28 since some\r\n// browsers slow down when dealing with 32-bit numbers.\r\nfunction am3(i, x, w, j, c, n) {\r\n var xl = x & 0x3fff, xh = x >> 14;\r\n while (--n >= 0) {\r\n var l = this[i] & 0x3fff;\r\n var h = this[i++] >> 14;\r\n var m = xh * l + h * xl;\r\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\r\n c = (l >> 28) + (m >> 14) + xh * h;\r\n w[j++] = l & 0xfffffff;\r\n }\r\n return c;\r\n}\r\nif (j_lm && (typeof (navigator) !== 'undefined') && (navigator.appName == \"Microsoft Internet Explorer\")) {\r\n BigInteger.prototype.am = am2;\r\n dbits = 30;\r\n}\r\nelse if (j_lm && (typeof (navigator) !== 'undefined') && (navigator.appName != \"Netscape\")) {\r\n BigInteger.prototype.am = am1;\r\n dbits = 26;\r\n}\r\nelse { // Mozilla/Netscape seems to prefer am3\r\n BigInteger.prototype.am = am3;\r\n dbits = 28;\r\n}\r\nBigInteger.prototype.DB = dbits;\r\nBigInteger.prototype.DM = ((1 << dbits) - 1);\r\nBigInteger.prototype.DV = (1 << dbits);\r\nvar BI_FP = 52;\r\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\r\nBigInteger.prototype.F1 = BI_FP - dbits;\r\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\r\n// Digit conversions\r\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\r\nvar BI_RC = new Array();\r\nvar rr, vv;\r\nrr = \"0\".charCodeAt(0);\r\nfor (vv = 0; vv <= 9; ++vv)\r\n BI_RC[rr++] = vv;\r\nrr = \"a\".charCodeAt(0);\r\nfor (vv = 10; vv < 36; ++vv)\r\n BI_RC[rr++] = vv;\r\nrr = \"A\".charCodeAt(0);\r\nfor (vv = 10; vv < 36; ++vv)\r\n BI_RC[rr++] = vv;\r\nfunction int2char(n) { return BI_RM.charAt(n); }\r\nfunction intAt(s, i) {\r\n var c = BI_RC[s.charCodeAt(i)];\r\n return (c == null) ? -1 : c;\r\n}\r\n// (protected) copy this to r\r\nfunction bnpCopyTo(r) {\r\n for (var i = this.t - 1; i >= 0; --i)\r\n r[i] = this[i];\r\n r.t = this.t;\r\n r.s = this.s;\r\n}\r\n// (protected) set from integer value x, -DV <= x < DV\r\nfunction bnpFromInt(x) {\r\n this.t = 1;\r\n this.s = (x < 0) ? -1 : 0;\r\n if (x > 0)\r\n this[0] = x;\r\n else if (x < -1)\r\n this[0] = x + this.DV;\r\n else\r\n this.t = 0;\r\n}\r\n// return bigint initialized to value\r\nfunction nbv(i) { var r = nbi(); r.fromInt(i); return r; }\r\n// (protected) set from string and radix\r\nfunction bnpFromString(s, b) {\r\n var k;\r\n if (b == 16)\r\n k = 4;\r\n else if (b == 8)\r\n k = 3;\r\n else if (b == 256)\r\n k = 8; // byte array\r\n else if (b == 2)\r\n k = 1;\r\n else if (b == 32)\r\n k = 5;\r\n else if (b == 4)\r\n k = 2;\r\n else {\r\n this.fromRadix(s, b);\r\n return;\r\n }\r\n this.t = 0;\r\n this.s = 0;\r\n var i = s.length, mi = false, sh = 0;\r\n while (--i >= 0) {\r\n var x = (k == 8) ? s[i] & 0xff : intAt(s, i);\r\n if (x < 0) {\r\n if (s.charAt(i) == \"-\")\r\n mi = true;\r\n continue;\r\n }\r\n mi = false;\r\n if (sh == 0)\r\n this[this.t++] = x;\r\n else if (sh + k > this.DB) {\r\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\r\n this[this.t++] = (x >> (this.DB - sh));\r\n }\r\n else\r\n this[this.t - 1] |= x << sh;\r\n sh += k;\r\n if (sh >= this.DB)\r\n sh -= this.DB;\r\n }\r\n if (k == 8 && (s[0] & 0x80) != 0) {\r\n this.s = -1;\r\n if (sh > 0)\r\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\r\n }\r\n this.clamp();\r\n if (mi)\r\n ZERO.subTo(this, this);\r\n}\r\n// (protected) clamp off excess high words\r\nfunction bnpClamp() {\r\n var c = this.s & this.DM;\r\n while (this.t > 0 && this[this.t - 1] == c)\r\n --this.t;\r\n}\r\n// (public) return string representation in given radix\r\nfunction bnToString(b) {\r\n if (this.s < 0)\r\n return \"-\" + this.negate().toString(b);\r\n var k;\r\n if (b == 16)\r\n k = 4;\r\n else if (b == 8)\r\n k = 3;\r\n else if (b == 2)\r\n k = 1;\r\n else if (b == 32)\r\n k = 5;\r\n else if (b == 4)\r\n k = 2;\r\n else\r\n return this.toRadix(b);\r\n var km = (1 << k) - 1, d, m = false, r = \"\", i = this.t;\r\n var p = this.DB - (i * this.DB) % k;\r\n if (i-- > 0) {\r\n if (p < this.DB && (d = this[i] >> p) > 0) {\r\n m = true;\r\n r = int2char(d);\r\n }\r\n while (i >= 0) {\r\n if (p < k) {\r\n d = (this[i] & ((1 << p) - 1)) << (k - p);\r\n d |= this[--i] >> (p += this.DB - k);\r\n }\r\n else {\r\n d = (this[i] >> (p -= k)) & km;\r\n if (p <= 0) {\r\n p += this.DB;\r\n --i;\r\n }\r\n }\r\n if (d > 0)\r\n m = true;\r\n if (m)\r\n r += int2char(d);\r\n }\r\n }\r\n return m ? r : \"0\";\r\n}\r\n// (public) -this\r\nfunction bnNegate() { var r = nbi(); ZERO.subTo(this, r); return r; }\r\n// (public) |this|\r\nfunction bnAbs() { return (this.s < 0) ? this.negate() : this; }\r\n// (public) return + if this > a, - if this < a, 0 if equal\r\nfunction bnCompareTo(a) {\r\n var r = this.s - a.s;\r\n if (r != 0)\r\n return r;\r\n var i = this.t;\r\n r = i - a.t;\r\n if (r != 0)\r\n return (this.s < 0) ? -r : r;\r\n while (--i >= 0)\r\n if ((r = this[i] - a[i]) != 0)\r\n return r;\r\n return 0;\r\n}\r\n// returns bit length of the integer x\r\nfunction nbits(x) {\r\n var r = 1, t;\r\n if ((t = x >>> 16) != 0) {\r\n x = t;\r\n r += 16;\r\n }\r\n if ((t = x >> 8) != 0) {\r\n x = t;\r\n r += 8;\r\n }\r\n if ((t = x >> 4) != 0) {\r\n x = t;\r\n r += 4;\r\n }\r\n if ((t = x >> 2) != 0) {\r\n x = t;\r\n r += 2;\r\n }\r\n if ((t = x >> 1) != 0) {\r\n x = t;\r\n r += 1;\r\n }\r\n return r;\r\n}\r\n// (public) return the number of bits in \"this\"\r\nfunction bnBitLength() {\r\n if (this.t <= 0)\r\n return 0;\r\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\r\n}\r\n// (protected) r = this << n*DB\r\nfunction bnpDLShiftTo(n, r) {\r\n var i;\r\n for (i = this.t - 1; i >= 0; --i)\r\n r[i + n] = this[i];\r\n for (i = n - 1; i >= 0; --i)\r\n r[i] = 0;\r\n r.t = this.t + n;\r\n r.s = this.s;\r\n}\r\n// (protected) r = this >> n*DB\r\nfunction bnpDRShiftTo(n, r) {\r\n for (var i = n; i < this.t; ++i)\r\n r[i - n] = this[i];\r\n r.t = Math.max(this.t - n, 0);\r\n r.s = this.s;\r\n}\r\n// (protected) r = this << n\r\nfunction bnpLShiftTo(n, r) {\r\n var bs = n % this.DB;\r\n var cbs = this.DB - bs;\r\n var bm = (1 << cbs) - 1;\r\n var ds = Math.floor(n / this.DB), c = (this.s << bs) & this.DM, i;\r\n for (i = this.t - 1; i >= 0; --i) {\r\n r[i + ds + 1] = (this[i] >> cbs) | c;\r\n c = (this[i] & bm) << bs;\r\n }\r\n for (i = ds - 1; i >= 0; --i)\r\n r[i] = 0;\r\n r[ds] = c;\r\n r.t = this.t + ds + 1;\r\n r.s = this.s;\r\n r.clamp();\r\n}\r\n// (protected) r = this >> n\r\nfunction bnpRShiftTo(n, r) {\r\n r.s = this.s;\r\n var ds = Math.floor(n / this.DB);\r\n if (ds >= this.t) {\r\n r.t = 0;\r\n return;\r\n }\r\n var bs = n % this.DB;\r\n var cbs = this.DB - bs;\r\n var bm = (1 << bs) - 1;\r\n r[0] = this[ds] >> bs;\r\n for (var i = ds + 1; i < this.t; ++i) {\r\n r[i - ds - 1] |= (this[i] & bm) << cbs;\r\n r[i - ds] = this[i] >> bs;\r\n }\r\n if (bs > 0)\r\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\r\n r.t = this.t - ds;\r\n r.clamp();\r\n}\r\n// (protected) r = this - a\r\nfunction bnpSubTo(a, r) {\r\n var i = 0, c = 0, m = Math.min(a.t, this.t);\r\n while (i < m) {\r\n c += this[i] - a[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n if (a.t < this.t) {\r\n c -= a.s;\r\n while (i < this.t) {\r\n c += this[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n c += this.s;\r\n }\r\n else {\r\n c += this.s;\r\n while (i < a.t) {\r\n c -= a[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n c -= a.s;\r\n }\r\n r.s = (c < 0) ? -1 : 0;\r\n if (c < -1)\r\n r[i++] = this.DV + c;\r\n else if (c > 0)\r\n r[i++] = c;\r\n r.t = i;\r\n r.clamp();\r\n}\r\n// (protected) r = this * a, r != this,a (HAC 14.12)\r\n// \"this\" should be the larger one if appropriate.\r\nfunction bnpMultiplyTo(a, r) {\r\n var x = this.abs(), y = a.abs();\r\n var i = x.t;\r\n r.t = i + y.t;\r\n while (--i >= 0)\r\n r[i] = 0;\r\n for (i = 0; i < y.t; ++i)\r\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\r\n r.s = 0;\r\n r.clamp();\r\n if (this.s != a.s)\r\n ZERO.subTo(r, r);\r\n}\r\n// (protected) r = this^2, r != this (HAC 14.16)\r\nfunction bnpSquareTo(r) {\r\n var x = this.abs();\r\n var i = r.t = 2 * x.t;\r\n while (--i >= 0)\r\n r[i] = 0;\r\n for (i = 0; i < x.t - 1; ++i) {\r\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\r\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\r\n r[i + x.t] -= x.DV;\r\n r[i + x.t + 1] = 1;\r\n }\r\n }\r\n if (r.t > 0)\r\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\r\n r.s = 0;\r\n r.clamp();\r\n}\r\n// (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\r\n// r != q, this != m. q or r may be null.\r\nfunction bnpDivRemTo(m, q, r) {\r\n var pm = m.abs();\r\n if (pm.t <= 0)\r\n return;\r\n var pt = this.abs();\r\n if (pt.t < pm.t) {\r\n if (q != null)\r\n q.fromInt(0);\r\n if (r != null)\r\n this.copyTo(r);\r\n return;\r\n }\r\n if (r == null)\r\n r = nbi();\r\n var y = nbi(), ts = this.s, ms = m.s;\r\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\r\n if (nsh > 0) {\r\n pm.lShiftTo(nsh, y);\r\n pt.lShiftTo(nsh, r);\r\n }\r\n else {\r\n pm.copyTo(y);\r\n pt.copyTo(r);\r\n }\r\n var ys = y.t;\r\n var y0 = y[ys - 1];\r\n if (y0 == 0)\r\n return;\r\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\r\n var d1 = this.FV / yt, d2 = (1 << this.F1) / yt, e = 1 << this.F2;\r\n var i = r.t, j = i - ys, t = (q == null) ? nbi() : q;\r\n y.dlShiftTo(j, t);\r\n if (r.compareTo(t) >= 0) {\r\n r[r.t++] = 1;\r\n r.subTo(t, r);\r\n }\r\n ONE.dlShiftTo(ys, t);\r\n t.subTo(y, y); // \"negative\" y so we can replace sub with am later\r\n while (y.t < ys)\r\n y[y.t++] = 0;\r\n while (--j >= 0) {\r\n // Estimate quotient digit\r\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\r\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\r\n y.dlShiftTo(j, t);\r\n r.subTo(t, r);\r\n while (r[i] < --qd)\r\n r.subTo(t, r);\r\n }\r\n }\r\n if (q != null) {\r\n r.drShiftTo(ys, q);\r\n if (ts != ms)\r\n ZERO.subTo(q, q);\r\n }\r\n r.t = ys;\r\n r.clamp();\r\n if (nsh > 0)\r\n r.rShiftTo(nsh, r); // Denormalize remainder\r\n if (ts < 0)\r\n ZERO.subTo(r, r);\r\n}\r\n// (public) this mod a\r\nfunction bnMod(a) {\r\n var r = nbi();\r\n this.abs().divRemTo(a, null, r);\r\n if (this.s < 0 && r.compareTo(ZERO) > 0)\r\n a.subTo(r, r);\r\n return r;\r\n}\r\n// Modular reduction using \"classic\" algorithm\r\nfunction Classic(m) { this.m = m; }\r\nfunction cConvert(x) {\r\n if (x.s < 0 || x.compareTo(this.m) >= 0)\r\n return x.mod(this.m);\r\n else\r\n return x;\r\n}\r\nfunction cRevert(x) { return x; }\r\nfunction cReduce(x) { x.divRemTo(this.m, null, x); }\r\nfunction cMulTo(x, y, r) { x.multiplyTo(y, r); this.reduce(r); }\r\nfunction cSqrTo(x, r) { x.squareTo(r); this.reduce(r); }\r\nClassic.prototype.convert = cConvert;\r\nClassic.prototype.revert = cRevert;\r\nClassic.prototype.reduce = cReduce;\r\nClassic.prototype.mulTo = cMulTo;\r\nClassic.prototype.sqrTo = cSqrTo;\r\n// (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\r\n// justification:\r\n// xy == 1 (mod m)\r\n// xy = 1+km\r\n// xy(2-xy) = (1+km)(1-km)\r\n// x[y(2-xy)] = 1-k^2m^2\r\n// x[y(2-xy)] == 1 (mod m^2)\r\n// if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\r\n// should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\r\n// JS multiply \"overflows\" differently from C/C++, so care is needed here.\r\nfunction bnpInvDigit() {\r\n if (this.t < 1)\r\n return 0;\r\n var x = this[0];\r\n if ((x & 1) == 0)\r\n return 0;\r\n var y = x & 3; // y == 1/x mod 2^2\r\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\r\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\r\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\r\n // last step - calculate inverse mod DV directly;\r\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\r\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\r\n // we really want the negative inverse, and -DV < y < DV\r\n return (y > 0) ? this.DV - y : -y;\r\n}\r\n// Montgomery reduction\r\nfunction Montgomery(m) {\r\n this.m = m;\r\n this.mp = m.invDigit();\r\n this.mpl = this.mp & 0x7fff;\r\n this.mph = this.mp >> 15;\r\n this.um = (1 << (m.DB - 15)) - 1;\r\n this.mt2 = 2 * m.t;\r\n}\r\n// xR mod m\r\nfunction montConvert(x) {\r\n var r = nbi();\r\n x.abs().dlShiftTo(this.m.t, r);\r\n r.divRemTo(this.m, null, r);\r\n if (x.s < 0 && r.compareTo(ZERO) > 0)\r\n this.m.subTo(r, r);\r\n return r;\r\n}\r\n// x/R mod m\r\nfunction montRevert(x) {\r\n var r = nbi();\r\n x.copyTo(r);\r\n this.reduce(r);\r\n return r;\r\n}\r\n// x = x/R mod m (HAC 14.32)\r\nfunction montReduce(x) {\r\n while (x.t <= this.mt2) // pad x so am has enough room later\r\n x[x.t++] = 0;\r\n for (var i = 0; i < this.m.t; ++i) {\r\n // faster way of calculating u0 = x[i]*mp mod DV\r\n var j = x[i] & 0x7fff;\r\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\r\n // use am to combine the multiply-shift-add into one call\r\n j = i + this.m.t;\r\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\r\n // propagate carry\r\n while (x[j] >= x.DV) {\r\n x[j] -= x.DV;\r\n x[++j]++;\r\n }\r\n }\r\n x.clamp();\r\n x.drShiftTo(this.m.t, x);\r\n if (x.compareTo(this.m) >= 0)\r\n x.subTo(this.m, x);\r\n}\r\n// r = \"x^2/R mod m\"; x != r\r\nfunction montSqrTo(x, r) { x.squareTo(r); this.reduce(r); }\r\n// r = \"xy/R mod m\"; x,y != r\r\nfunction montMulTo(x, y, r) { x.multiplyTo(y, r); this.reduce(r); }\r\nMontgomery.prototype.convert = montConvert;\r\nMontgomery.prototype.revert = montRevert;\r\nMontgomery.prototype.reduce = montReduce;\r\nMontgomery.prototype.mulTo = montMulTo;\r\nMontgomery.prototype.sqrTo = montSqrTo;\r\n// (protected) true iff this is even\r\nfunction bnpIsEven() { return ((this.t > 0) ? (this[0] & 1) : this.s) == 0; }\r\n// (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\r\nfunction bnpExp(e, z) {\r\n if (e > 0xffffffff || e < 1)\r\n return ONE;\r\n var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e) - 1;\r\n g.copyTo(r);\r\n while (--i >= 0) {\r\n z.sqrTo(r, r2);\r\n if ((e & (1 << i)) > 0)\r\n z.mulTo(r2, g, r);\r\n else {\r\n var t = r;\r\n r = r2;\r\n r2 = t;\r\n }\r\n }\r\n return z.revert(r);\r\n}\r\n// (public) this^e % m, 0 <= e < 2^32\r\nfunction bnModPowInt(e, m) {\r\n var z;\r\n if (e < 256 || m.isEven())\r\n z = new Classic(m);\r\n else\r\n z = new Montgomery(m);\r\n return this.exp(e, z);\r\n}\r\n// jsbn2\r\n// Extended JavaScript BN functions, required for RSA private ops.\r\n// Version 1.1: new BigInteger(\"0\", 10) returns \"proper\" zero\r\n// Version 1.2: square() API, isProbablePrime fix\r\n// (public)\r\nfunction bnClone() { var r = nbi(); this.copyTo(r); return r; }\r\n// (public) return value as integer\r\nfunction bnIntValue() {\r\n if (this.s < 0) {\r\n if (this.t == 1)\r\n return this[0] - this.DV;\r\n else if (this.t == 0)\r\n return -1;\r\n }\r\n else if (this.t == 1)\r\n return this[0];\r\n else if (this.t == 0)\r\n return 0;\r\n // assumes 16 < DB < 32\r\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\r\n}\r\n// (public) return value as byte\r\nfunction bnByteValue() { return (this.t == 0) ? this.s : (this[0] << 24) >> 24; }\r\n// (public) return value as short (assumes DB>=16)\r\nfunction bnShortValue() { return (this.t == 0) ? this.s : (this[0] << 16) >> 16; }\r\n// (protected) return x s.t. r^x < DV\r\nfunction bnpChunkSize(r) { return Math.floor(Math.LN2 * this.DB / Math.log(r)); }\r\n// (public) 0 if this == 0, 1 if this > 0\r\nfunction bnSigNum() {\r\n if (this.s < 0)\r\n return -1;\r\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0))\r\n return 0;\r\n else\r\n return 1;\r\n}\r\n// (protected) convert to radix string\r\nfunction bnpToRadix(b) {\r\n if (b == null)\r\n b = 10;\r\n if (this.signum() == 0 || b < 2 || b > 36)\r\n return \"0\";\r\n var cs = this.chunkSize(b);\r\n var a = Math.pow(b, cs);\r\n var d = nbv(a), y = nbi(), z = nbi(), r = \"\";\r\n this.divRemTo(d, y, z);\r\n while (y.signum() > 0) {\r\n r = (a + z.intValue()).toString(b).substr(1) + r;\r\n y.divRemTo(d, y, z);\r\n }\r\n return z.intValue().toString(b) + r;\r\n}\r\n// (protected) convert from radix string\r\nfunction bnpFromRadix(s, b) {\r\n this.fromInt(0);\r\n if (b == null)\r\n b = 10;\r\n var cs = this.chunkSize(b);\r\n var d = Math.pow(b, cs), mi = false, j = 0, w = 0;\r\n for (var i = 0; i < s.length; ++i) {\r\n var x = intAt(s, i);\r\n if (x < 0) {\r\n if (s.charAt(i) == \"-\" && this.signum() == 0)\r\n mi = true;\r\n continue;\r\n }\r\n w = b * w + x;\r\n if (++j >= cs) {\r\n this.dMultiply(d);\r\n this.dAddOffset(w, 0);\r\n j = 0;\r\n w = 0;\r\n }\r\n }\r\n if (j > 0) {\r\n this.dMultiply(Math.pow(b, j));\r\n this.dAddOffset(w, 0);\r\n }\r\n if (mi)\r\n ZERO.subTo(this, this);\r\n}\r\n// (protected) alternate constructor\r\nfunction bnpFromNumber(a, b, c) {\r\n if (\"number\" == typeof b) {\r\n // new BigInteger(int,int,RNG)\r\n if (a < 2)\r\n this.fromInt(1);\r\n else {\r\n this.fromNumber(a, c);\r\n if (!this.testBit(a - 1)) // force MSB set\r\n this.bitwiseTo(ONE.shiftLeft(a - 1), op_or, this);\r\n if (this.isEven())\r\n this.dAddOffset(1, 0); // force odd\r\n while (!this.isProbablePrime(b)) {\r\n this.dAddOffset(2, 0);\r\n if (this.bitLength() > a)\r\n this.subTo(ONE.shiftLeft(a - 1), this);\r\n }\r\n }\r\n }\r\n else {\r\n // new BigInteger(int,RNG)\r\n var x = new Array(), t = a & 7;\r\n x.length = (a >> 3) + 1;\r\n b.nextBytes(x);\r\n if (t > 0)\r\n x[0] &= ((1 << t) - 1);\r\n else\r\n x[0] = 0;\r\n this.fromString(x, 256);\r\n }\r\n}\r\n// (public) convert to bigendian byte array\r\nfunction bnToByteArray() {\r\n var i = this.t, r = new Array();\r\n r[0] = this.s;\r\n var p = this.DB - (i * this.DB) % 8, d, k = 0;\r\n if (i-- > 0) {\r\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p)\r\n r[k++] = d | (this.s << (this.DB - p));\r\n while (i >= 0) {\r\n if (p < 8) {\r\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\r\n d |= this[--i] >> (p += this.DB - 8);\r\n }\r\n else {\r\n d = (this[i] >> (p -= 8)) & 0xff;\r\n if (p <= 0) {\r\n p += this.DB;\r\n --i;\r\n }\r\n }\r\n if ((d & 0x80) != 0)\r\n d |= -256;\r\n if (k == 0 && (this.s & 0x80) != (d & 0x80))\r\n ++k;\r\n if (k > 0 || d != this.s)\r\n r[k++] = d;\r\n }\r\n }\r\n return r;\r\n}\r\nfunction bnEquals(a) { return (this.compareTo(a) == 0); }\r\nfunction bnMin(a) { return (this.compareTo(a) < 0) ? this : a; }\r\nfunction bnMax(a) { return (this.compareTo(a) > 0) ? this : a; }\r\n// (protected) r = this op a (bitwise)\r\nfunction bnpBitwiseTo(a, op, r) {\r\n var i, f, m = Math.min(a.t, this.t);\r\n for (i = 0; i < m; ++i)\r\n r[i] = op(this[i], a[i]);\r\n if (a.t < this.t) {\r\n f = a.s & this.DM;\r\n for (i = m; i < this.t; ++i)\r\n r[i] = op(this[i], f);\r\n r.t = this.t;\r\n }\r\n else {\r\n f = this.s & this.DM;\r\n for (i = m; i < a.t; ++i)\r\n r[i] = op(f, a[i]);\r\n r.t = a.t;\r\n }\r\n r.s = op(this.s, a.s);\r\n r.clamp();\r\n}\r\n// (public) this & a\r\nfunction op_and(x, y) { return x & y; }\r\nfunction bnAnd(a) { var r = nbi(); this.bitwiseTo(a, op_and, r); return r; }\r\n// (public) this | a\r\nfunction op_or(x, y) { return x | y; }\r\nfunction bnOr(a) { var r = nbi(); this.bitwiseTo(a, op_or, r); return r; }\r\n// (public) this ^ a\r\nfunction op_xor(x, y) { return x ^ y; }\r\nfunction bnXor(a) { var r = nbi(); this.bitwiseTo(a, op_xor, r); return r; }\r\n// (public) this & ~a\r\nfunction op_andnot(x, y) { return x & ~y; }\r\nfunction bnAndNot(a) { var r = nbi(); this.bitwiseTo(a, op_andnot, r); return r; }\r\n// (public) ~this\r\nfunction bnNot() {\r\n var r = nbi();\r\n for (var i = 0; i < this.t; ++i)\r\n r[i] = this.DM & ~this[i];\r\n r.t = this.t;\r\n r.s = ~this.s;\r\n return r;\r\n}\r\n// (public) this << n\r\nfunction bnShiftLeft(n) {\r\n var r = nbi();\r\n if (n < 0)\r\n this.rShiftTo(-n, r);\r\n else\r\n this.lShiftTo(n, r);\r\n return r;\r\n}\r\n// (public) this >> n\r\nfunction bnShiftRight(n) {\r\n var r = nbi();\r\n if (n < 0)\r\n this.lShiftTo(-n, r);\r\n else\r\n this.rShiftTo(n, r);\r\n return r;\r\n}\r\n// return index of lowest 1-bit in x, x < 2^31\r\nfunction lbit(x) {\r\n if (x == 0)\r\n return -1;\r\n var r = 0;\r\n if ((x & 0xffff) == 0) {\r\n x >>= 16;\r\n r += 16;\r\n }\r\n if ((x & 0xff) == 0) {\r\n x >>= 8;\r\n r += 8;\r\n }\r\n if ((x & 0xf) == 0) {\r\n x >>= 4;\r\n r += 4;\r\n }\r\n if ((x & 3) == 0) {\r\n x >>= 2;\r\n r += 2;\r\n }\r\n if ((x & 1) == 0)\r\n ++r;\r\n return r;\r\n}\r\n// (public) returns index of lowest 1-bit (or -1 if none)\r\nfunction bnGetLowestSetBit() {\r\n for (var i = 0; i < this.t; ++i)\r\n if (this[i] != 0)\r\n return i * this.DB + lbit(this[i]);\r\n if (this.s < 0)\r\n return this.t * this.DB;\r\n return -1;\r\n}\r\n// return number of 1 bits in x\r\nfunction cbit(x) {\r\n var r = 0;\r\n while (x != 0) {\r\n x &= x - 1;\r\n ++r;\r\n }\r\n return r;\r\n}\r\n// (public) return number of set bits\r\nfunction bnBitCount() {\r\n var r = 0, x = this.s & this.DM;\r\n for (var i = 0; i < this.t; ++i)\r\n r += cbit(this[i] ^ x);\r\n return r;\r\n}\r\n// (public) true iff nth bit is set\r\nfunction bnTestBit(n) {\r\n var j = Math.floor(n / this.DB);\r\n if (j >= this.t)\r\n return (this.s != 0);\r\n return ((this[j] & (1 << (n % this.DB))) != 0);\r\n}\r\n// (protected) this op (1<<n)\r\nfunction bnpChangeBit(n, op) {\r\n var r = ONE.shiftLeft(n);\r\n this.bitwiseTo(r, op, r);\r\n return r;\r\n}\r\n// (public) this | (1<<n)\r\nfunction bnSetBit(n) { return this.changeBit(n, op_or); }\r\n// (public) this & ~(1<<n)\r\nfunction bnClearBit(n) { return this.changeBit(n, op_andnot); }\r\n// (public) this ^ (1<<n)\r\nfunction bnFlipBit(n) { return this.changeBit(n, op_xor); }\r\n// (protected) r = this + a\r\nfunction bnpAddTo(a, r) {\r\n var i = 0, c = 0, m = Math.min(a.t, this.t);\r\n while (i < m) {\r\n c += this[i] + a[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n if (a.t < this.t) {\r\n c += a.s;\r\n while (i < this.t) {\r\n c += this[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n c += this.s;\r\n }\r\n else {\r\n c += this.s;\r\n while (i < a.t) {\r\n c += a[i];\r\n r[i++] = c & this.DM;\r\n c >>= this.DB;\r\n }\r\n c += a.s;\r\n }\r\n r.s = (c < 0) ? -1 : 0;\r\n if (c > 0)\r\n r[i++] = c;\r\n else if (c < -1)\r\n r[i++] = this.DV + c;\r\n r.t = i;\r\n r.clamp();\r\n}\r\n// (public) this + a\r\nfunction bnAdd(a) { var r = nbi(); this.addTo(a, r); return r; }\r\n// (public) this - a\r\nfunction bnSubtract(a) { var r = nbi(); this.subTo(a, r); return r; }\r\n// (public) this * a\r\nfunction bnMultiply(a) { var r = nbi(); this.multiplyTo(a, r); return r; }\r\n// (public) this^2\r\nfunction bnSquare() { var r = nbi(); this.squareTo(r); return r; }\r\n// (public) this / a\r\nfunction bnDivide(a) { var r = nbi(); this.divRemTo(a, r, null); return r; }\r\n// (public) this % a\r\nfunction bnRemainder(a) { var r = nbi(); this.divRemTo(a, null, r); return r; }\r\n// (public) [this/a,this%a]\r\nfunction bnDivideAndRemainder(a) {\r\n var q = nbi(), r = nbi();\r\n this.divRemTo(a, q, r);\r\n return new Array(q, r);\r\n}\r\n// (protected) this *= n, this >= 0, 1 < n < DV\r\nfunction bnpDMultiply(n) {\r\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\r\n ++this.t;\r\n this.clamp();\r\n}\r\n// (protected) this += n << w words, this >= 0\r\nfunction bnpDAddOffset(n, w) {\r\n if (n == 0)\r\n return;\r\n while (this.t <= w)\r\n this[this.t++] = 0;\r\n this[w] += n;\r\n while (this[w] >= this.DV) {\r\n this[w] -= this.DV;\r\n if (++w >= this.t)\r\n this[this.t++] = 0;\r\n ++this[w];\r\n }\r\n}\r\n// A \"null\" reducer\r\nfunction NullExp() { }\r\nfunction nNop(x) { return x; }\r\nfunction nMulTo(x, y, r) { x.multiplyTo(y, r); }\r\nfunction nSqrTo(x, r) { x.squareTo(r); }\r\nNullExp.prototype.convert = nNop;\r\nNullExp.prototype.revert = nNop;\r\nNullExp.prototype.mulTo = nMulTo;\r\nNullExp.prototype.sqrTo = nSqrTo;\r\n// (public) this^e\r\nfunction bnPow(e) { return this.exp(e, new NullExp()); }\r\n// (protected) r = lower n words of \"this * a\", a.t <= n\r\n// \"this\" should be the larger one if appropriate.\r\nfunction bnpMultiplyLowerTo(a, n, r) {\r\n var i = Math.min(this.t + a.t, n);\r\n r.s = 0; // assumes a,this >= 0\r\n r.t = i;\r\n while (i > 0)\r\n r[--i] = 0;\r\n var j;\r\n for (j = r.t - this.t; i < j; ++i)\r\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\r\n for (j = Math.min(a.t, n); i < j; ++i)\r\n this.am(0, a[i], r, i, 0, n - i);\r\n r.clamp();\r\n}\r\n// (protected) r = \"this * a\" without lower n words, n > 0\r\n// \"this\" should be the larger one if appropriate.\r\nfunction bnpMultiplyUpperTo(a, n, r) {\r\n --n;\r\n var i = r.t = this.t + a.t - n;\r\n r.s = 0; // assumes a,this >= 0\r\n while (--i >= 0)\r\n r[i] = 0;\r\n for (i = Math.max(n - this.t, 0); i < a.t; ++i)\r\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\r\n r.clamp();\r\n r.drShiftTo(1, r);\r\n}\r\n// Barrett modular reduction\r\nfunction Barrett(m) {\r\n // setup Barrett\r\n this.r2 = nbi();\r\n this.q3 = nbi();\r\n ONE.dlShiftTo(2 * m.t, this.r2);\r\n this.mu = this.r2.divide(m);\r\n this.m = m;\r\n}\r\nfunction barrettConvert(x) {\r\n if (x.s < 0 || x.t > 2 * this.m.t)\r\n return x.mod(this.m);\r\n else if (x.compareTo(this.m) < 0)\r\n return x;\r\n else {\r\n var r = nbi();\r\n x.copyTo(r);\r\n this.reduce(r);\r\n return r;\r\n }\r\n}\r\nfunction barrettRevert(x) { return x; }\r\n// x = x mod m (HAC 14.42)\r\nfunction barrettReduce(x) {\r\n x.drShiftTo(this.m.t - 1, this.r2);\r\n if (x.t > this.m.t + 1) {\r\n x.t = this.m.t + 1;\r\n x.clamp();\r\n }\r\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\r\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\r\n while (x.compareTo(this.r2) < 0)\r\n x.dAddOffset(1, this.m.t + 1);\r\n x.subTo(this.r2, x);\r\n while (x.compareTo(this.m) >= 0)\r\n x.subTo(this.m, x);\r\n}\r\n// r = x^2 mod m; x != r\r\nfunction barrettSqrTo(x, r) { x.squareTo(r); this.reduce(r); }\r\n// r = x*y mod m; x,y != r\r\nfunction barrettMulTo(x, y, r) { x.multiplyTo(y, r); this.reduce(r); }\r\nBarrett.prototype.convert = barrettConvert;\r\nBarrett.prototype.revert = barrettRevert;\r\nBarrett.prototype.reduce = barrettReduce;\r\nBarrett.prototype.mulTo = barrettMulTo;\r\nBarrett.prototype.sqrTo = barrettSqrTo;\r\n// (public) this^e % m (HAC 14.85)\r\nfunction bnModPow(e, m) {\r\n var i = e.bitLength(), k, r = nbv(1), z;\r\n if (i <= 0)\r\n return r;\r\n else if (i < 18)\r\n k = 1;\r\n else if (i < 48)\r\n k = 3;\r\n else if (i < 144)\r\n k = 4;\r\n else if (i < 768)\r\n k = 5;\r\n else\r\n k = 6;\r\n if (i < 8)\r\n z = new Classic(m);\r\n else if (m.isEven())\r\n z = new Barrett(m);\r\n else\r\n z = new Montgomery(m);\r\n // precomputation\r\n var g = new Array(), n = 3, k1 = k - 1, km = (1 << k) - 1;\r\n g[1] = z.convert(this);\r\n if (k > 1) {\r\n var g2 = nbi();\r\n z.sqrTo(g[1], g2);\r\n while (n <= km) {\r\n g[n] = nbi();\r\n z.mulTo(g2, g[n - 2], g[n]);\r\n n += 2;\r\n }\r\n }\r\n var j = e.t - 1, w, is1 = true, r2 = nbi(), t;\r\n i = nbits(e[j]) - 1;\r\n while (j >= 0) {\r\n if (i >= k1)\r\n w = (e[j] >> (i - k1)) & km;\r\n else {\r\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\r\n if (j > 0)\r\n w |= e[j - 1] >> (this.DB + i - k1);\r\n }\r\n n = k;\r\n while ((w & 1) == 0) {\r\n w >>= 1;\r\n --n;\r\n }\r\n if ((i -= n) < 0) {\r\n i += this.DB;\r\n --j;\r\n }\r\n if (is1) { // ret == 1, don't bother squaring or multiplying it\r\n g[w].copyTo(r);\r\n is1 = false;\r\n }\r\n else {\r\n while (n > 1) {\r\n z.sqrTo(r, r2);\r\n z.sqrTo(r2, r);\r\n n -= 2;\r\n }\r\n if (n > 0)\r\n z.sqrTo(r, r2);\r\n else {\r\n t = r;\r\n r = r2;\r\n r2 = t;\r\n }\r\n z.mulTo(r2, g[w], r);\r\n }\r\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\r\n z.sqrTo(r, r2);\r\n t = r;\r\n r = r2;\r\n r2 = t;\r\n if (--i < 0) {\r\n i = this.DB - 1;\r\n --j;\r\n }\r\n }\r\n }\r\n return z.revert(r);\r\n}\r\n// (public) gcd(this,a) (HAC 14.54)\r\nfunction bnGCD(a) {\r\n var x = (this.s < 0) ? this.negate() : this.clone();\r\n var y = (a.s < 0) ? a.negate() : a.clone();\r\n if (x.compareTo(y) < 0) {\r\n var t = x;\r\n x = y;\r\n y = t;\r\n }\r\n var i = x.getLowestSetBit(), g = y.getLowestSetBit();\r\n if (g < 0)\r\n return x;\r\n if (i < g)\r\n g = i;\r\n if (g > 0) {\r\n x.rShiftTo(g, x);\r\n y.rShiftTo(g, y);\r\n }\r\n while (x.signum() > 0) {\r\n if ((i = x.getLowestSetBit()) > 0)\r\n x.rShiftTo(i, x);\r\n if ((i = y.getLowestSetBit()) > 0)\r\n y.rShiftTo(i, y);\r\n if (x.compareTo(y) >= 0) {\r\n x.subTo(y, x);\r\n x.rShiftTo(1, x);\r\n }\r\n else {\r\n y.subTo(x, y);\r\n y.rShiftTo(1, y);\r\n }\r\n }\r\n if (g > 0)\r\n y.lShiftTo(g, y);\r\n return y;\r\n}\r\n// (protected) this % n, n < 2^26\r\nfunction bnpModInt(n) {\r\n if (n <= 0)\r\n return 0;\r\n var d = this.DV % n, r = (this.s < 0) ? n - 1 : 0;\r\n if (this.t > 0)\r\n if (d == 0)\r\n r = this[0] % n;\r\n else\r\n for (var i = this.t - 1; i >= 0; --i)\r\n r = (d * r + this[i]) % n;\r\n return r;\r\n}\r\n// (public) 1/this % m (HAC 14.61)\r\nfunction bnModInverse(m) {\r\n var ac = m.isEven();\r\n if ((this.isEven() && ac) || m.signum() == 0)\r\n return ZERO;\r\n var u = m.clone(), v = this.clone();\r\n var a = nbv(1), b = nbv(0), c = nbv(0), d = nbv(1);\r\n while (u.signum() != 0) {\r\n while (u.isEven()) {\r\n u.rShiftTo(1, u);\r\n if (ac) {\r\n if (!a.isEven() || !b.isEven()) {\r\n a.addTo(this, a);\r\n b.subTo(m, b);\r\n }\r\n a.rShiftTo(1, a);\r\n }\r\n else if (!b.isEven())\r\n b.subTo(m, b);\r\n b.rShiftTo(1, b);\r\n }\r\n while (v.isEven()) {\r\n v.rShiftTo(1, v);\r\n if (ac) {\r\n if (!c.isEven() || !d.isEven()) {\r\n c.addTo(this, c);\r\n d.subTo(m, d);\r\n }\r\n c.rShiftTo(1, c);\r\n }\r\n else if (!d.isEven())\r\n d.subTo(m, d);\r\n d.rShiftTo(1, d);\r\n }\r\n if (u.compareTo(v) >= 0) {\r\n u.subTo(v, u);\r\n if (ac)\r\n a.subTo(c, a);\r\n b.subTo(d, b);\r\n }\r\n else {\r\n v.subTo(u, v);\r\n if (ac)\r\n c.subTo(a, c);\r\n d.subTo(b, d);\r\n }\r\n }\r\n if (v.compareTo(ONE) != 0)\r\n return ZERO;\r\n if (d.compareTo(m) >= 0)\r\n return d.subtract(m);\r\n if (d.signum() < 0)\r\n d.addTo(m, d);\r\n else\r\n return d;\r\n if (d.signum() < 0)\r\n return d.add(m);\r\n else\r\n return d;\r\n}\r\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\r\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\r\n// (public) test primality with certainty >= 1-.5^t\r\nfunction bnIsProbablePrime(t) {\r\n var i, x = this.abs();\r\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\r\n for (i = 0; i < lowprimes.length; ++i)\r\n if (x[0] == lowprimes[i])\r\n return true;\r\n return false;\r\n }\r\n if (x.isEven())\r\n return false;\r\n i = 1;\r\n while (i < lowprimes.length) {\r\n var m = lowprimes[i], j = i + 1;\r\n while (j < lowprimes.length && m < lplim)\r\n m *= lowprimes[j++];\r\n m = x.modInt(m);\r\n while (i < j)\r\n if (m % lowprimes[i++] == 0)\r\n return false;\r\n }\r\n return x.millerRabin(t);\r\n}\r\n// (protected) true if probably prime (HAC 4.24, Miller-Rabin)\r\nfunction bnpMillerRabin(t) {\r\n var n1 = this.subtract(ONE);\r\n var k = n1.getLowestSetBit();\r\n if (k <= 0)\r\n return false;\r\n var r = n1.shiftRight(k);\r\n t = (t + 1) >> 1;\r\n if (t > lowprimes.length)\r\n t = lowprimes.length;\r\n var a = nbi();\r\n for (var i = 0; i < t; ++i) {\r\n //Pick bases at random, instead of starting at 2\r\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\r\n var y = a.modPow(r, this);\r\n if (y.compareTo(ONE) != 0 && y.compareTo(n1) != 0) {\r\n var j = 1;\r\n while (j++ < k && y.compareTo(n1) != 0) {\r\n y = y.modPowInt(2, this);\r\n if (y.compareTo(ONE) == 0)\r\n return false;\r\n }\r\n if (y.compareTo(n1) != 0)\r\n return false;\r\n }\r\n }\r\n return true;\r\n}\r\n// protected\r\nBigInteger.prototype.copyTo = bnpCopyTo;\r\nBigInteger.prototype.fromInt = bnpFromInt;\r\nBigInteger.prototype.fromString = bnpFromString;\r\nBigInteger.prototype.clamp = bnpClamp;\r\nBigInteger.prototype.dlShiftTo = bnpDLShiftTo;\r\nBigInteger.prototype.drShiftTo = bnpDRShiftTo;\r\nBigInteger.prototype.lShiftTo = bnpLShiftTo;\r\nBigInteger.prototype.rShiftTo = bnpRShiftTo;\r\nBigInteger.prototype.subTo = bnpSubTo;\r\nBigInteger.prototype.multiplyTo = bnpMultiplyTo;\r\nBigInteger.prototype.squareTo = bnpSquareTo;\r\nBigInteger.prototype.divRemTo = bnpDivRemTo;\r\nBigInteger.prototype.invDigit = bnpInvDigit;\r\nBigInteger.prototype.isEven = bnpIsEven;\r\nBigInteger.prototype.exp = bnpExp;\r\n// public\r\nBigInteger.prototype.toString = bnToString;\r\nBigInteger.prototype.negate = bnNegate;\r\nBigInteger.prototype.abs = bnAbs;\r\nBigInteger.prototype.compareTo = bnCompareTo;\r\nBigInteger.prototype.bitLength = bnBitLength;\r\nBigInteger.prototype.mod = bnMod;\r\nBigInteger.prototype.modPowInt = bnModPowInt;\r\nconst ZERO = nbv(0);\r\nconst ONE = nbv(1);\r\n// jsbn2\r\n// protected\r\nBigInteger.prototype.chunkSize = bnpChunkSize;\r\nBigInteger.prototype.toRadix = bnpToRadix;\r\nBigInteger.prototype.fromRadix = bnpFromRadix;\r\nBigInteger.prototype.fromNumber = bnpFromNumber;\r\nBigInteger.prototype.bitwiseTo = bnpBitwiseTo;\r\nBigInteger.prototype.changeBit = bnpChangeBit;\r\nBigInteger.prototype.addTo = bnpAddTo;\r\nBigInteger.prototype.dMultiply = bnpDMultiply;\r\nBigInteger.prototype.dAddOffset = bnpDAddOffset;\r\nBigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\r\nBigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\r\nBigInteger.prototype.modInt = bnpModInt;\r\nBigInteger.prototype.millerRabin = bnpMillerRabin;\r\n// public\r\nBigInteger.prototype.clone = bnClone;\r\nBigInteger.prototype.intValue = bnIntValue;\r\nBigInteger.prototype.byteValue = bnByteValue;\r\nBigInteger.prototype.shortValue = bnShortValue;\r\nBigInteger.prototype.signum = bnSigNum;\r\nBigInteger.prototype.toByteArray = bnToByteArray;\r\nBigInteger.prototype.equals = bnEquals;\r\nBigInteger.prototype.min = bnMin;\r\nBigInteger.prototype.max = bnMax;\r\nBigInteger.prototype.and = bnAnd;\r\nBigInteger.prototype.or = bnOr;\r\nBigInteger.prototype.xor = bnXor;\r\nBigInteger.prototype.andNot = bnAndNot;\r\nBigInteger.prototype.not = bnNot;\r\nBigInteger.prototype.shiftLeft = bnShiftLeft;\r\nBigInteger.prototype.shiftRight = bnShiftRight;\r\nBigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\r\nBigInteger.prototype.bitCount = bnBitCount;\r\nBigInteger.prototype.testBit = bnTestBit;\r\nBigInteger.prototype.setBit = bnSetBit;\r\nBigInteger.prototype.clearBit = bnClearBit;\r\nBigInteger.prototype.flipBit = bnFlipBit;\r\nBigInteger.prototype.add = bnAdd;\r\nBigInteger.prototype.subtract = bnSubtract;\r\nBigInteger.prototype.multiply = bnMultiply;\r\nBigInteger.prototype.divide = bnDivide;\r\nBigInteger.prototype.remainder = bnRemainder;\r\nBigInteger.prototype.divideAndRemainder = bnDivideAndRemainder;\r\nBigInteger.prototype.modPow = bnModPow;\r\nBigInteger.prototype.modInverse = bnModInverse;\r\nBigInteger.prototype.pow = bnPow;\r\nBigInteger.prototype.gcd = bnGCD;\r\nBigInteger.prototype.isProbablePrime = bnIsProbablePrime;\r\n// JSBN-specific extension\r\nBigInteger.prototype.square = bnSquare;\r\n//# sourceMappingURL=jsbn.js.map","references":[],"map":"{\"version\":3,\"file\":\"jsbn.js\",\"sourceRoot\":\"\",\"sources\":[\"../../../src/browser/jsbn.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/browser/jsbn.d.ts","writeByteOrderMark":false,"text":"export declare function BigInteger(a?: any, b?: any, c?: any): void;\r\nexport declare function parseBigInt(str: any, r: any): any;\r\n"}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"code":"import { __awaiter } from \"tslib\";\r\nimport { DeleteCommand, FolderAddCommand, PreDeleteCommand, PublicKeysCommand, PurgeDeletedRecordsCommand, RecordAddCommand, RecordShareUpdateCommand, RequestUploadCommand, SharedFolderUpdateCommand, SyncDownCommand, RecordUpdateCommand } from './commands';\r\nimport { platform } from './platform';\r\nimport { decryptFromStorage, decryptFromStorageGcm, decryptKey, encryptForStorage, encryptObjectForStorage, encryptObjectForStorageGCM, generateEncryptionKey, generateUid, normal64, normal64Bytes, shareKey, shareKeyEC, webSafe64FromBytes } from './utils';\r\nimport { applicationAddMessage, fileAddMessage, fileDownloadMessage, getEnterprisePublicKeyMessage, recordsAddMessage, recordsUpdateMessage } from './restMessages';\r\nimport { Records } from './proto';\r\nvar RecordFolderType = Records.RecordFolderType;\r\nvar FileAddResult = Records.FileAddResult;\r\nfunction decryptRecord(record) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n try {\r\n const dataBytes = record.recordData.version < 3\r\n ? yield decryptFromStorage(record.recordData.data, record.key)\r\n : yield decryptFromStorageGcm(record.recordData.data, record.key);\r\n record.data = JSON.parse(platform.bytesToString(dataBytes));\r\n if (record.recordData.extra) {\r\n record.extra = JSON.parse(platform.bytesToString(yield decryptFromStorage(record.recordData.extra, record.key)));\r\n }\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n });\r\n}\r\nexport class Vault {\r\n constructor(auth) {\r\n this.auth = auth;\r\n this._includes = ['folders', 'non_shared_data', 'record', 'shared_folder', 'sfheaders', 'sfrecords', 'sfusers'];\r\n this._records = {};\r\n this._sharedFolders = {};\r\n this._revision = 0;\r\n this.noTypedRecords = false;\r\n }\r\n getRecord(recordUid) {\r\n let record = this._records[recordUid];\r\n let isNew = false;\r\n if (!record) {\r\n record = {};\r\n this._records[recordUid] = record;\r\n isNew = true;\r\n }\r\n return { record, isNew };\r\n }\r\n get includes() {\r\n return this._includes;\r\n }\r\n get revision() {\r\n return this._revision;\r\n }\r\n get records() {\r\n return Object.values(this._records);\r\n }\r\n get sharedFolders() {\r\n return Object.values(this._sharedFolders);\r\n }\r\n get recordUids() {\r\n return Object.keys(this._records);\r\n }\r\n get sharedFolderUids() {\r\n return Object.keys(this._sharedFolders);\r\n }\r\n recordByUid(record_uid) {\r\n return this._records[record_uid];\r\n }\r\n recordByUidBytes(record_uid) {\r\n return this.recordByUid(webSafe64FromBytes(record_uid));\r\n }\r\n decryptKey(encryptedKey, keyType) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n switch (keyType) {\r\n case 1:\r\n return decryptFromStorage(encryptedKey, this.auth.dataKey);\r\n case 2:\r\n return platform.privateDecrypt(normal64Bytes(encryptedKey), this.auth.privateKey);\r\n case 3:\r\n return decryptKey(encryptedKey, this.auth.dataKey);\r\n case 4:\r\n return platform.privateDecryptEC(normal64Bytes(encryptedKey), this.auth.eccPrivateKey);\r\n default:\r\n throw new Error(`Unknown key type: ${keyType}`);\r\n }\r\n });\r\n }\r\n setIncludes(includes) {\r\n this._includes = includes;\r\n }\r\n // todo: remove logResponse in favor of a unified log levels solution\r\n syncDown(revision, logResponse) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n if (typeof revision === 'number') {\r\n this._revision = revision;\r\n }\r\n console.log(`syncing revision ${this._revision} for ${this.auth.username}`);\r\n let syncDownCommand = new SyncDownCommand(this._revision);\r\n syncDownCommand.include = [...this._includes];\r\n if (!this.noTypedRecords) {\r\n syncDownCommand.include.push('typed_record', 'app_record');\r\n }\r\n let syncDownResponse = yield this.auth.executeCommand(syncDownCommand);\r\n if (logResponse) {\r\n console.log(syncDownResponse);\r\n // console.log(syncDownResponse.shared_folders[0].records)\r\n }\r\n this._revision = syncDownResponse.revision;\r\n if (syncDownResponse.full_sync) {\r\n this._records = {};\r\n }\r\n let added = 0;\r\n let updated = 0;\r\n let removed = 0;\r\n for (let recordData of syncDownResponse.records || []) {\r\n let { record, isNew } = this.getRecord(recordData.record_uid);\r\n record.recordData = recordData;\r\n if (isNew) {\r\n added++;\r\n }\r\n else {\r\n updated++;\r\n }\r\n }\r\n for (let meta of syncDownResponse.record_meta_data || []) {\r\n let { record } = this.getRecord(meta.record_uid);\r\n record.metaData = meta;\r\n try {\r\n record.key = yield this.decryptKey(meta.record_key, meta.record_key_type);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n yield decryptRecord(record);\r\n }\r\n for (let sharedFolder of syncDownResponse.shared_folders || []) {\r\n let vaultFolder = {\r\n sharedFolder: sharedFolder\r\n };\r\n this._sharedFolders[sharedFolder.shared_folder_uid] = vaultFolder;\r\n if (!(sharedFolder.shared_folder_key && sharedFolder.key_type)) {\r\n continue;\r\n }\r\n try {\r\n vaultFolder.key = yield this.decryptKey(sharedFolder.shared_folder_key, sharedFolder.key_type);\r\n for (let sfRecord of sharedFolder.records || []) {\r\n let recordKey;\r\n try {\r\n recordKey = sfRecord.record_key.length === 80\r\n ? yield decryptKey(sfRecord.record_key, vaultFolder.key) // GCM\r\n : decryptFromStorage(sfRecord.record_key, vaultFolder.key); // CBC\r\n let { record } = this.getRecord(sfRecord.record_uid);\r\n record.key = recordKey;\r\n record.sharedFolderUid = sharedFolder.shared_folder_uid;\r\n yield decryptRecord(record);\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n for (let team of syncDownResponse.teams || []) {\r\n const teamKey = yield this.decryptKey(team.team_key, team.team_key_type);\r\n for (let folderKey of team.shared_folder_keys || []) {\r\n let decryptedFolderKey;\r\n switch (folderKey.key_type) {\r\n case 1:\r\n decryptedFolderKey = decryptFromStorage(folderKey.shared_folder_key, teamKey);\r\n break;\r\n case 2:\r\n const teamPrivateKey = yield decryptFromStorage(team.team_private_key, teamKey);\r\n decryptedFolderKey = platform.privateDecrypt(normal64Bytes(folderKey.shared_folder_key), teamPrivateKey);\r\n break;\r\n default:\r\n throw new Error(`Unknown key type: ${folderKey.key_type}`);\r\n }\r\n this._sharedFolders[folderKey.shared_folder_uid].key = decryptedFolderKey;\r\n }\r\n }\r\n for (let sffRecord of syncDownResponse.shared_folder_folder_records || []) {\r\n let { record } = this.getRecord(sffRecord.record_uid);\r\n record.sharedFolderFolderUid = sffRecord.folder_uid;\r\n }\r\n for (let uid of syncDownResponse.removed_records || []) {\r\n if (this.records[uid]) {\r\n removed++;\r\n delete this.records[uid];\r\n }\r\n }\r\n for (let non_shared_data of syncDownResponse.non_shared_data || []) {\r\n let { record } = this.getRecord(non_shared_data.record_uid);\r\n try {\r\n const nonSharedData = record.recordData.version > 2\r\n ? yield decryptFromStorageGcm(non_shared_data.data, this.auth.dataKey)\r\n : yield decryptFromStorage(non_shared_data.data, this.auth.dataKey);\r\n record.nonSharedData = JSON.parse(platform.bytesToString(nonSharedData));\r\n }\r\n catch (e) {\r\n console.log(e);\r\n }\r\n }\r\n for (let record of this.records.filter(x => { var _a; return !!((_a = x.recordData) === null || _a === void 0 ? void 0 : _a.owner_uid); })) {\r\n const owner = this._records[record.recordData.owner_uid];\r\n if (!owner.links) {\r\n owner.links = [];\r\n }\r\n owner.links.push(record.recordData.record_uid);\r\n record.key = yield decryptKey(record.recordData.link_key, owner.key);\r\n yield decryptRecord(record);\r\n }\r\n if (added > 0)\r\n console.log(`${added} records added.`);\r\n if (updated > 0)\r\n console.log(`${updated} records updated.`);\r\n if (removed > 0)\r\n console.log(`${removed} records removed.`);\r\n console.log(`Synced to the revision ${syncDownResponse.revision}`);\r\n console.log(`${Object.keys(this._records).length} records are in the vault.`);\r\n });\r\n }\r\n addRecord(recordData, sharedFolderUid, files) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let recordAddCommand = new RecordAddCommand();\r\n recordAddCommand.record_uid = generateUid();\r\n let recordKey = generateEncryptionKey();\r\n recordAddCommand.record_key = yield encryptForStorage(recordKey, this.auth.dataKey);\r\n recordAddCommand.record_type = 'password';\r\n recordAddCommand.data = yield encryptForStorage(platform.stringToBytes(JSON.stringify(recordData)), recordKey);\r\n recordAddCommand.how_long_ago = 0;\r\n if (sharedFolderUid) {\r\n recordAddCommand.folder_type = 'shared_folder';\r\n recordAddCommand.folder_uid = sharedFolderUid;\r\n recordAddCommand.folder_key = yield encryptForStorage(recordKey, this._sharedFolders[sharedFolderUid].key);\r\n }\r\n else {\r\n recordAddCommand.folder_type = 'user_folder';\r\n }\r\n if (files) {\r\n let extra = {\r\n fields: [],\r\n files: files\r\n };\r\n recordAddCommand.extra = yield encryptForStorage(platform.stringToBytes(JSON.stringify(extra)), recordKey);\r\n recordAddCommand.file_ids = files.map(x => x.id);\r\n }\r\n yield this.auth.executeCommand(recordAddCommand);\r\n return recordAddCommand.record_uid;\r\n });\r\n }\r\n addRecordNew(recordData, sharedFolderUid, linkedRecords) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const recordKey = generateEncryptionKey();\r\n const encryptedKey = yield platform.aesGcmEncrypt(recordKey, this.auth.dataKey);\r\n const encryptedData = yield encryptObjectForStorageGCM(recordData, recordKey);\r\n let recordAdd = {\r\n recordUid: platform.getRandomBytes(16),\r\n recordKey: encryptedKey,\r\n data: encryptedData,\r\n clientModifiedTime: new Date().getTime()\r\n };\r\n if (sharedFolderUid) {\r\n recordAdd.folderType = RecordFolderType.shared_folder;\r\n recordAdd.folderUid = normal64Bytes(sharedFolderUid);\r\n recordAdd.folderKey = yield platform.aesGcmEncrypt(recordKey, this._sharedFolders[sharedFolderUid].key);\r\n }\r\n if (linkedRecords) {\r\n let links = [];\r\n for (const linkedRecord of linkedRecords) {\r\n const linkedRecordKey = generateEncryptionKey();\r\n // const linkedRecordKey = await platform.aesGcmEncrypt(this._records[linkedRecord].key, recordKey)\r\n links.push({\r\n recordUid: normal64Bytes(linkedRecord),\r\n recordKey: linkedRecordKey\r\n });\r\n }\r\n recordAdd.recordLinks = links;\r\n }\r\n const recordAddResponse = yield this.auth.executeRest(recordsAddMessage({\r\n clientTime: new Date().getTime(),\r\n records: [recordAdd]\r\n }));\r\n const recordUid = webSafe64FromBytes(recordAdd.recordUid);\r\n this._records[recordUid] = {\r\n recordData: {\r\n record_uid: recordUid,\r\n version: 3\r\n },\r\n key: recordKey\r\n };\r\n return recordAddResponse;\r\n });\r\n }\r\n addRecordsNew(recordsData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const now = new Date().getTime();\r\n let records = [];\r\n let keys = {};\r\n for (const recordData of recordsData) {\r\n const recordKey = generateEncryptionKey();\r\n const encryptedKey = yield platform.aesGcmEncrypt(recordKey, this.auth.dataKey);\r\n const encryptedData = yield encryptObjectForStorageGCM(recordData, recordKey);\r\n let recordAdd = {\r\n recordUid: platform.getRandomBytes(16),\r\n recordKey: encryptedKey,\r\n data: encryptedData,\r\n clientModifiedTime: now\r\n };\r\n records.push(recordAdd);\r\n keys[webSafe64FromBytes(recordAdd.recordUid)] = recordKey;\r\n }\r\n const recordsAddResponse = yield this.auth.executeRest(recordsAddMessage({\r\n clientTime: now,\r\n records: records\r\n }));\r\n for (const recordResponse of recordsAddResponse.records) {\r\n const recordUid = webSafe64FromBytes(recordResponse.recordUid);\r\n this._records[recordUid] = {\r\n recordData: {\r\n record_uid: recordUid,\r\n version: 3\r\n },\r\n key: keys[recordUid]\r\n };\r\n }\r\n return recordsAddResponse;\r\n });\r\n }\r\n uploadFile(fileName, fileData, thumbnailData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const fileMetaData = {\r\n name: fileName,\r\n hasThumbnail: !!thumbnailData\r\n };\r\n const recordKey = generateEncryptionKey();\r\n const encryptedKey = yield platform.aesGcmEncrypt(recordKey, this.auth.dataKey);\r\n const encryptedData = yield encryptObjectForStorageGCM(fileMetaData, recordKey);\r\n const encryptedFile = yield platform.aesGcmEncrypt(fileData, recordKey);\r\n const encryptedThumbnail = thumbnailData\r\n ? yield platform.aesGcmEncrypt(thumbnailData, recordKey)\r\n : undefined;\r\n const fileRequest = {\r\n clientTime: new Date().getTime(),\r\n files: [\r\n {\r\n recordUid: platform.getRandomBytes(16),\r\n recordKey: encryptedKey,\r\n data: encryptedData,\r\n fileSize: encryptedFile.length,\r\n thumbSize: encryptedThumbnail ? encryptedThumbnail.length : undefined\r\n }\r\n ]\r\n };\r\n console.log(fileRequest);\r\n const rq = fileAddMessage(fileRequest);\r\n const fileAddResponse = yield this.auth.executeRest(rq);\r\n const file = fileAddResponse.files[0];\r\n if (file.status !== FileAddResult.FA_SUCCESS)\r\n throw new Error(`Error adding a file record for ${fileName}`);\r\n console.log(file.url);\r\n yield this.uploadFileData(file.url, file.parameters, file.successStatusCode, encryptedFile);\r\n if (encryptedThumbnail) {\r\n yield this.uploadFileData(file.url, file.thumbnailParameters, file.successStatusCode, encryptedThumbnail);\r\n }\r\n const fileUid = webSafe64FromBytes(file.recordUid);\r\n this._records[fileUid] = {\r\n recordData: {\r\n record_uid: fileUid,\r\n version: 4\r\n },\r\n key: recordKey\r\n };\r\n return fileUid;\r\n });\r\n }\r\n uploadFileData(url, parameters, successStatusCode, encryptedData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const res = yield platform.fileUpload(url, JSON.parse(parameters), encryptedData);\r\n if (res.statusCode !== successStatusCode) {\r\n throw new Error(`Upload failed (${res.statusMessage}), code ${res.statusCode}`);\r\n }\r\n });\r\n }\r\n downloadFile(recordUid, thumbNail) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const rq = fileDownloadMessage({\r\n recordUids: [\r\n normal64Bytes(recordUid)\r\n ],\r\n forThumbnails: thumbNail\r\n });\r\n let resp = yield this.auth.executeRest(rq);\r\n let file = resp.files[0];\r\n console.log(resp);\r\n console.log(file);\r\n const fileResponse = yield platform.get(file.url, {});\r\n console.log(fileResponse);\r\n switch (file.fileKeyType) {\r\n case Records.RecordKeyType.ENCRYPTED_BY_DATA_KEY:\r\n return platform.aesCbcDecrypt(fileResponse.data, this._records[recordUid].key, false);\r\n case Records.RecordKeyType.ENCRYPTED_BY_DATA_KEY_GCM:\r\n return platform.aesGcmDecrypt(fileResponse.data, this._records[recordUid].key);\r\n default:\r\n throw Error(`Unsupported kile key type: ${file.fileKeyType}`);\r\n }\r\n });\r\n }\r\n addApplication(appData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const recordKey = generateEncryptionKey();\r\n const encryptedKey = yield platform.aesGcmEncrypt(recordKey, this.auth.dataKey);\r\n const encryptedData = yield encryptObjectForStorageGCM(appData, recordKey);\r\n let applicationAdd = {\r\n appUid: platform.getRandomBytes(16),\r\n recordKey: encryptedKey,\r\n data: encryptedData,\r\n clientModifiedTime: new Date().getTime()\r\n };\r\n yield this.auth.executeRest(applicationAddMessage(applicationAdd));\r\n return webSafe64FromBytes(applicationAdd.appUid);\r\n });\r\n }\r\n updateRecordV2(update) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const record = this._records[update.record_uid];\r\n const encryptedData = update.data\r\n ? yield encryptObjectForStorage(update.data, record.key)\r\n : undefined;\r\n const encryptedExtra = yield encryptObjectForStorage(record.extra, record.key);\r\n let nonSharedData = undefined;\r\n if (update.nonSharedData || update.nonSharedData === null) {\r\n if (update.nonSharedData == null) {\r\n nonSharedData = Uint8Array.of(0);\r\n }\r\n else {\r\n nonSharedData = encryptObjectForStorage(update.nonSharedData, this.auth.dataKey);\r\n }\r\n }\r\n const updateCommand = new RecordUpdateCommand();\r\n updateCommand.client_time = new Date().getTime();\r\n updateCommand.update_records = [\r\n {\r\n record_uid: update.record_uid,\r\n client_modified_time: new Date().getTime(),\r\n data: encryptedData,\r\n extra: encryptedExtra,\r\n non_shared_data: nonSharedData,\r\n revision: record.recordData.revision,\r\n version: 2,\r\n udata: update.udata,\r\n }\r\n ];\r\n const resp = yield this.auth.executeCommand(updateCommand);\r\n console.log(resp);\r\n });\r\n }\r\n updateRecord(update) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.updateRecords([update]);\r\n });\r\n }\r\n updateRecords(updates) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const request = {\r\n clientTime: new Date().getTime(),\r\n records: []\r\n };\r\n for (const update of updates) {\r\n const record = this._records[update.record_uid];\r\n const encryptedData = update.data\r\n ? yield encryptObjectForStorageGCM(update.data, record.key)\r\n : undefined;\r\n let nonSharedData = undefined;\r\n if (update.nonSharedData || update.nonSharedData === null) {\r\n if (update.nonSharedData == null) {\r\n nonSharedData = Uint8Array.of(0);\r\n }\r\n else {\r\n nonSharedData = yield encryptObjectForStorageGCM(update.nonSharedData, this.auth.dataKey, false);\r\n }\r\n }\r\n let recordAudit = undefined;\r\n if (update.audit) {\r\n const pubKeyResponse = yield this.auth.executeRest(getEnterprisePublicKeyMessage());\r\n const auditBytes = platform.stringToBytes(JSON.stringify(update.audit.data));\r\n const auditData = yield platform.publicEncryptEC(auditBytes, pubKeyResponse.enterpriseECCPublicKey);\r\n recordAudit = {\r\n version: update.audit.version,\r\n data: auditData\r\n };\r\n }\r\n let addedLinks = undefined;\r\n if (update.add_links) {\r\n addedLinks = [];\r\n for (const linkedRecord of update.add_links) {\r\n const linkedRecordKey = yield platform.aesGcmEncrypt(this._records[linkedRecord].key, record.key);\r\n addedLinks.push({\r\n recordUid: normal64Bytes(linkedRecord),\r\n recordKey: linkedRecordKey\r\n });\r\n }\r\n }\r\n let removedLinks = update.remove_links\r\n ? update.remove_links.map(x => normal64Bytes(x))\r\n : undefined;\r\n request.records.push({\r\n recordUid: normal64Bytes(update.record_uid),\r\n data: encryptedData,\r\n nonSharedData: nonSharedData,\r\n audit: recordAudit,\r\n recordLinksAdd: addedLinks,\r\n recordLinksRemove: removedLinks,\r\n clientModifiedTime: new Date().getTime(),\r\n revision: record.recordData.revision\r\n });\r\n console.log(`Updating record ${update.record_uid} revision ${record.recordData.revision}`);\r\n }\r\n const updateMsg = recordsUpdateMessage(request);\r\n const response = yield this.auth.executeRest(updateMsg);\r\n const revision = response.revision;\r\n for (const record of response.records) {\r\n this._records[webSafe64FromBytes(record.recordUid)].recordData.revision = revision;\r\n }\r\n return response;\r\n });\r\n }\r\n deleteRecords(recordUids) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const preDeleteCommand = new PreDeleteCommand();\r\n preDeleteCommand.objects = recordUids.map(x => {\r\n return {\r\n object_uid: x,\r\n object_type: 'record',\r\n from_type: 'user_folder',\r\n delete_resolution: 'unlink'\r\n };\r\n });\r\n const preDeleteResult = yield this.auth.executeCommand(preDeleteCommand);\r\n const deleteCommand = new DeleteCommand();\r\n deleteCommand.pre_delete_token = preDeleteResult.pre_delete_response.pre_delete_token;\r\n return this.auth.executeCommand(deleteCommand);\r\n });\r\n }\r\n cleanTrash() {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n yield this.auth.executeCommand(new PurgeDeletedRecordsCommand());\r\n });\r\n }\r\n createSharedFolder(folderName) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let folderKey = generateEncryptionKey();\r\n let folderUid = generateUid();\r\n const faCommand = new FolderAddCommand();\r\n faCommand.name = yield encryptForStorage(platform.stringToBytes(folderName), folderKey);\r\n faCommand.folder_uid = folderUid;\r\n faCommand.folder_type = 'shared_folder';\r\n faCommand.key = yield encryptForStorage(folderKey, this.auth.dataKey);\r\n faCommand.data = yield encryptObjectForStorage({ name: folderName + '1', color: '#FF0000' }, folderKey);\r\n const addFolderResponse = yield this.auth.executeCommand(faCommand);\r\n this._revision = addFolderResponse.revision;\r\n this._sharedFolders[folderUid] = {\r\n key: folderKey\r\n };\r\n return folderUid;\r\n });\r\n }\r\n addUserToSharedFolder(sharedFolderUid, user) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const sharedFolder = this._sharedFolders[sharedFolderUid];\r\n const userPublicKey = yield this.fetchUserPublicKey(user);\r\n const sfuCommand = new SharedFolderUpdateCommand();\r\n sfuCommand.operation = 'update';\r\n sfuCommand.name = yield encryptForStorage(platform.stringToBytes('sftest2'), sharedFolder.key);\r\n sfuCommand.shared_folder_uid = sharedFolderUid;\r\n sfuCommand.revision = this._revision;\r\n sfuCommand.add_users = [{\r\n username: user,\r\n manage_records: false,\r\n manage_users: false,\r\n shared_folder_key: shareKey(sharedFolder.key, userPublicKey)\r\n }];\r\n yield this.auth.executeCommand(sfuCommand);\r\n });\r\n }\r\n deleteSharedFolders(sharedFolderUids) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n for (let sharedFolderUid of sharedFolderUids) {\r\n const sfuCommand = new SharedFolderUpdateCommand();\r\n sfuCommand.operation = 'delete';\r\n sfuCommand.shared_folder_uid = sharedFolderUid;\r\n yield this.auth.executeCommand(sfuCommand);\r\n }\r\n // only can leave shared folders if not the owner\r\n // {\"command\":\"shared_folder_update\",\"pt\":\"-n4s_eSHBZzOMRZQtX0gDg\",\"operation\":\"update\",\"shared_folder_uid\":\"PFe3TzKS6wq3YtXivxR6oA\",\"revision\":944012,\r\n // \"remove_users\":[{\"username\":\"saldoukhov@gmail.com\"}],\"locale\":\"en_US\",\"username\":\"saldoukhov@gmail.com\",\"session_token\":\"6X8lJLgDecS2IKTwErliMX0UKYkhznDWS59asu4kVeN3GMidq--T1kyBJ1YSJ9hxm67qsMkXeG5egEGaAQ_YjVc6CrhyFJovS4mOIZ3APLVdiylEroLQbsttCgkF\",\"client_version\":\"w14.13.0\"}\r\n });\r\n }\r\n fetchUserPublicKey(user) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const publicKeysCommand = new PublicKeysCommand();\r\n publicKeysCommand.key_owners = [user];\r\n const publicKeys = yield this.auth.executeCommand(publicKeysCommand);\r\n if (!publicKeys.public_keys[0].public_key) {\r\n throw new Error(publicKeys.public_keys[0].message);\r\n }\r\n return normal64(publicKeys.public_keys[0].public_key);\r\n });\r\n }\r\n fetchUserPublicKeyEC(user) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const publicKeysCommand = new PublicKeysCommand();\r\n publicKeysCommand.key_owners = [user];\r\n const publicKeys = yield this.auth.executeCommand(publicKeysCommand);\r\n if (!publicKeys.public_keys[0].public_key) {\r\n throw new Error(publicKeys.public_keys[0].message);\r\n }\r\n return null;\r\n // return normal64(publicKeys.public_keys[0].public_key)\r\n });\r\n }\r\n shareRecords(recordUids, share) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const userPublicKey = yield this.fetchUserPublicKey(share.to_user);\r\n const shareCommand = new RecordShareUpdateCommand();\r\n let shareObjects = [];\r\n for (const recordUid of recordUids) {\r\n const recordKey = shareKey(this._records[recordUid].key, userPublicKey);\r\n const so = {\r\n record_uid: recordUid,\r\n record_key: recordKey,\r\n to_username: share.to_user,\r\n shareable: share.shareable,\r\n editable: share.editable\r\n };\r\n shareObjects.push(so);\r\n }\r\n shareCommand.add_shares = shareObjects;\r\n return this.auth.executeCommand(shareCommand);\r\n });\r\n }\r\n shareRecordsEC(recordUids, share) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const userPublicKey = yield this.fetchUserPublicKeyEC(share.to_user);\r\n const shareCommand = new RecordShareUpdateCommand();\r\n let shareObjects = [];\r\n for (const recordUid of recordUids) {\r\n const recordKey = yield shareKeyEC(this._records[recordUid].key, userPublicKey);\r\n const so = {\r\n record_uid: recordUid,\r\n record_key: recordKey,\r\n to_username: share.to_user,\r\n shareable: share.shareable,\r\n editable: share.editable\r\n };\r\n shareObjects.push(so);\r\n }\r\n shareCommand.add_shares = shareObjects;\r\n return this.auth.executeCommand(shareCommand);\r\n });\r\n }\r\n uploadFileOld(fileName, fileData, thumbnailData) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n const uploadCommand = new RequestUploadCommand();\r\n uploadCommand.file_count = 1;\r\n uploadCommand.thumbnail_count = thumbnailData ? 1 : 0;\r\n const resp = yield this.auth.executeCommand(uploadCommand);\r\n const uploadInfo = resp.file_uploads[0];\r\n console.log(uploadInfo);\r\n const fileKey = generateEncryptionKey();\r\n // const encryptedFile = await platform.aesGcmEncrypt(fileData, fileKey)\r\n const encryptedFile = yield platform.aesCbcEncrypt(fileData, fileKey, true);\r\n const res = yield platform.fileUpload(uploadInfo.url, uploadInfo.parameters, encryptedFile);\r\n if (res.statusCode !== uploadInfo.success_status_code) {\r\n throw new Error(`Upload failed (${res.statusMessage}), code ${res.statusCode}`);\r\n }\r\n return {\r\n id: uploadInfo.file_id,\r\n name: fileName,\r\n title: fileName,\r\n key: webSafe64FromBytes(fileKey),\r\n lastModified: new Date().getTime(),\r\n size: encryptedFile.length,\r\n type: '',\r\n };\r\n });\r\n }\r\n}\r\n//# sourceMappingURL=vault.js.map","references":["/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/auth.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/commands.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/platform.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/utils.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/restMessages.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/proto.d.ts"],"map":"{\"version\":3,\"file\":\"vault.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/vault.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/vault.d.ts","writeByteOrderMark":false,"text":"import { Auth } from './auth';\r\nimport { RecordData, RecordMetaData, RecordShareUpdateResponse, SharedFolder, SyncDataInclude, DeleteResponse } from './commands';\r\nimport { Records } from './proto';\r\nexport declare class Vault {\r\n private auth;\r\n private _includes;\r\n private _records;\r\n private _sharedFolders;\r\n private _revision;\r\n noTypedRecords: boolean;\r\n constructor(auth: Auth);\r\n private getRecord;\r\n get includes(): SyncDataInclude[];\r\n get revision(): number;\r\n get records(): VaultRecord[];\r\n get sharedFolders(): VaultSharedFolder[];\r\n get recordUids(): string[];\r\n get sharedFolderUids(): string[];\r\n recordByUid(record_uid: string): VaultRecord;\r\n recordByUidBytes(record_uid: Uint8Array): VaultRecord;\r\n decryptKey(encryptedKey: string, keyType: number): Promise<Uint8Array>;\r\n setIncludes(includes: SyncDataInclude[]): void;\r\n syncDown(revision?: number, logResponse?: boolean): Promise<void>;\r\n addRecord(recordData: KeeperRecordData, sharedFolderUid?: string, files?: [ExtraFile]): Promise<string>;\r\n addRecordNew(recordData: any, sharedFolderUid?: string, linkedRecords?: string[]): Promise<Records.IRecordsModifyResponse>;\r\n addRecordsNew(recordsData: any[]): Promise<Records.IRecordsModifyResponse>;\r\n uploadFile(fileName: string, fileData: Uint8Array, thumbnailData?: Uint8Array): Promise<string>;\r\n uploadFileData(url: string, parameters: string, successStatusCode: number, encryptedData: Uint8Array): Promise<void>;\r\n downloadFile(recordUid: string, thumbNail: boolean): Promise<Uint8Array>;\r\n addApplication(appData: any): Promise<string>;\r\n updateRecordV2(update: RecordUpdateV2): Promise<void>;\r\n updateRecord(update: RecordUpdate): Promise<Records.IRecordsModifyResponse>;\r\n updateRecords(updates: RecordUpdate[]): Promise<Records.IRecordsModifyResponse>;\r\n deleteRecords(recordUids: string[]): Promise<DeleteResponse>;\r\n cleanTrash(): Promise<void>;\r\n createSharedFolder(folderName: string): Promise<string>;\r\n addUserToSharedFolder(sharedFolderUid: string, user: string): Promise<void>;\r\n deleteSharedFolders(sharedFolderUids: string[]): Promise<void>;\r\n fetchUserPublicKey(user: string): Promise<string>;\r\n fetchUserPublicKeyEC(user: string): Promise<Uint8Array>;\r\n shareRecords(recordUids: string[], share: RecordShare): Promise<RecordShareUpdateResponse>;\r\n shareRecordsEC(recordUids: string[], share: RecordShare): Promise<RecordShareUpdateResponse>;\r\n uploadFileOld(fileName: string, fileData: Uint8Array, thumbnailData?: Uint8Array): Promise<ExtraFile>;\r\n}\r\nexport interface VaultRecord {\r\n recordData?: RecordData;\r\n metaData?: RecordMetaData;\r\n key?: Uint8Array;\r\n data?: KeeperRecordData;\r\n extra?: KeeperRecordExtra;\r\n sharedFolderUid?: string;\r\n sharedFolderFolderUid?: string;\r\n nonSharedData?: any;\r\n audit?: KeeperRecordAudit;\r\n links?: string[];\r\n}\r\nexport interface VaultSharedFolder {\r\n sharedFolder?: SharedFolder;\r\n key?: Uint8Array;\r\n}\r\nexport interface KeeperRecordData {\r\n title?: string;\r\n secret1?: string;\r\n secret2?: string;\r\n link?: string;\r\n notes?: string;\r\n custom?: {\r\n name?: string;\r\n value?: string;\r\n }[];\r\n}\r\nexport interface KeeperRecordExtra {\r\n fields: ExtraField[];\r\n files: ExtraFile[];\r\n}\r\nexport interface KeeperRecordAudit {\r\n version: number;\r\n data: any;\r\n}\r\nexport interface RecordShare {\r\n to_user: string;\r\n shareable: boolean;\r\n editable: boolean;\r\n}\r\nexport interface RecordUpdateV2 {\r\n record_uid: string;\r\n data?: KeeperRecordData;\r\n nonSharedData?: any;\r\n udata?: {\r\n file_ids: string[];\r\n };\r\n}\r\nexport interface RecordUpdate {\r\n record_uid: string;\r\n data?: KeeperRecordData;\r\n nonSharedData?: any;\r\n audit?: KeeperRecordAudit;\r\n add_links?: string[];\r\n remove_links?: string[];\r\n}\r\nexport interface ExtraField {\r\n id: string;\r\n field_type: 'totp';\r\n field_title: string;\r\n type: number;\r\n data: string;\r\n}\r\nexport interface ExtraFile {\r\n id: string;\r\n name?: string;\r\n lastModified?: number;\r\n size?: number;\r\n type?: string;\r\n title?: string;\r\n key?: string;\r\n thumbs?: FileThumb[];\r\n}\r\nexport interface FileThumb {\r\n id: string;\r\n size: number;\r\n type: 'image/jpg';\r\n}\r\n"}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"code":"import { __awaiter } from \"tslib\";\r\nimport { platform } from './platform';\r\nimport { generateTransmissionKey, getKeeperUrl } from './utils';\r\nexport class VendorContext {\r\n constructor(configuration) {\r\n this.configuration = configuration;\r\n this.updateTransmissionKey(1);\r\n }\r\n updateTransmissionKey(keyNumber) {\r\n this.transmissionKey = generateTransmissionKey(keyNumber);\r\n }\r\n getEnterprise(enterpriseID) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.executeVendorRequest(`${this.configuration.vendorId}/enterprise/${enterpriseID}`, this.configuration.privateKey);\r\n });\r\n }\r\n postEnterprise(enterprise) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.executeVendorRequest(`${this.configuration.vendorId}/enterprise/`, this.configuration.privateKey, enterprise);\r\n });\r\n }\r\n postLicenseAdjustment(enterpriseID, adjustment) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n return this.executeVendorRequest(`${this.configuration.vendorId}/license/${enterpriseID}`, this.configuration.privateKey, adjustment);\r\n });\r\n }\r\n executeVendorRequest(vendorPath, privateKey, payload) {\r\n return __awaiter(this, void 0, void 0, function* () {\r\n let url = getKeeperUrl(this.configuration.host, `msp/v1/${vendorPath}`);\r\n let urlBytes = platform.stringToBytes(url.slice(url.indexOf('/rest/msp/v1/')));\r\n while (true) {\r\n let encryptedPayloadBytes = payload\r\n ? yield platform.aesGcmEncrypt(Buffer.from(JSON.stringify(payload)), this.transmissionKey.key)\r\n : new Uint8Array();\r\n let signatureBase = Uint8Array.of(...urlBytes, ...this.transmissionKey.encryptedKey, ...encryptedPayloadBytes);\r\n let signature = yield platform.privateSign(signatureBase, privateKey);\r\n let response;\r\n try {\r\n let headers = {\r\n Authorization: `Signature ${platform.bytesToBase64(signature)}`,\r\n TransmissionKey: platform.bytesToBase64(this.transmissionKey.encryptedKey),\r\n PublicKeyId: this.transmissionKey.publicKeyId,\r\n };\r\n response = payload\r\n ? yield platform.post(url, encryptedPayloadBytes, headers)\r\n : yield platform.get(url, headers);\r\n }\r\n catch (e) {\r\n console.log('ERR:' + e);\r\n }\r\n let decrypted;\r\n try {\r\n decrypted = yield platform.aesGcmDecrypt(response.data, this.transmissionKey.key);\r\n let json = JSON.parse(platform.bytesToString(decrypted));\r\n return json;\r\n }\r\n catch (e) {\r\n let error = platform.bytesToString(response.data);\r\n let errorObj = JSON.parse(error);\r\n if (errorObj.error === 'key') {\r\n this.updateTransmissionKey(errorObj.key_id);\r\n }\r\n else {\r\n throw (`Unable to decrypt response: ${error}`);\r\n }\r\n }\r\n }\r\n });\r\n }\r\n}\r\n//# sourceMappingURL=vendorContext.js.map","references":["/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/endpoint.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/vendorModel.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/configuration.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/platform.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/utils.ts"],"map":"{\"version\":3,\"file\":\"vendorContext.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/vendorContext.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/vendorContext.d.ts","writeByteOrderMark":false,"text":"import { MSPEnterprise, EnterpriseBase, LicenseAdjustment } from \"./vendorModel\";\r\nimport { VendorConfiguration } from \"./configuration\";\r\nexport declare class VendorContext {\r\n private configuration;\r\n private transmissionKey;\r\n constructor(configuration: VendorConfiguration);\r\n private updateTransmissionKey;\r\n getEnterprise(enterpriseID: number): Promise<MSPEnterprise>;\r\n postEnterprise(enterprise: EnterpriseBase): Promise<MSPEnterprise>;\r\n postLicenseAdjustment(enterpriseID: number, adjustment: LicenseAdjustment): Promise<MSPEnterprise>;\r\n executeVendorRequest<T>(vendorPath: string, privateKey: string, payload?: any): Promise<T>;\r\n}\r\n"}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"code":"import { AccountSummary, Authentication, BreachWatch, Automator, Enterprise, Records, ServiceLogger, SsoCloud } from './proto';\r\nfunction createMessage(data, path, encoder, decoder) {\r\n return {\r\n path: path,\r\n toBytes() {\r\n return encoder ? encoder.encode(data).finish() : null;\r\n },\r\n fromBytes(data) {\r\n return decoder.decode(data);\r\n }\r\n };\r\n}\r\n// new login\r\nexport const registerDeviceMessage = (data) => createMessage(data, 'authentication/register_device', Authentication.DeviceRegistrationRequest, Authentication.Device);\r\nexport const registerDeviceInRegionMessage = (data) => createMessage(data, 'authentication/register_device_in_region', Authentication.RegisterDeviceInRegionRequest, null);\r\nexport const updateDeviceMessage = (data) => createMessage(data, 'authentication/update_device', Authentication.DeviceUpdateRequest, null);\r\nexport const requestDeviceVerificationMessage = (data) => createMessage(data, 'authentication/request_device_verification', Authentication.DeviceVerificationRequest, null);\r\nexport const requestCreateUserMessage = (data, isSso) => createMessage(data, isSso ? 'authentication/create_user_sso' : 'authentication/request_create_user', Authentication.CreateUserRequest, null);\r\nexport const startLoginMessage = (data) => createMessage(data, 'authentication/start_login', Authentication.StartLoginRequest, Authentication.LoginResponse);\r\nexport const validateAuthHashMessage = (data) => createMessage(data, 'authentication/validate_auth_hash', Authentication.ValidateAuthHashRequest, Authentication.LoginResponse);\r\nexport const twoFactorValidateMessage = (data) => createMessage(data, 'authentication/2fa_validate', Authentication.TwoFactorValidateRequest, Authentication.TwoFactorValidateResponse);\r\nexport const twoFactorSend2FAPushMessage = (data) => createMessage(data, 'authentication/2fa_send_push', Authentication.TwoFactorSendPushRequest, null);\r\nexport const twoFactorAdd = (data) => createMessage(data, 'authentication/2fa_add', Authentication.TwoFactorAddRequest, Authentication.TwoFactorAddResponse);\r\nexport const twoFactorAddValidate = (data) => createMessage(data, 'authentication/2fa_add_validate', Authentication.TwoFactorValidateRequest, Authentication.TwoFactorAddResponse);\r\nexport const twoFactorList = (data) => createMessage(data, 'authentication/2fa_list', Authentication.TwoFactorChannelInfo, Authentication.TwoFactorListResponse);\r\nexport const twoFactorRename = (data) => createMessage(data, 'authentication/2fa_rename', Authentication.TwoFactorRenameRequest, null);\r\nexport const twoFactorDelete = (data) => createMessage(data, 'authentication/2fa_delete', Authentication.TwoFactorDeleteRequest, null);\r\nexport const twoFactorDuoStatus = (data) => createMessage(data, 'authentication/2fa_duo_status', Authentication.TwoFactorDuoStatus, null);\r\nexport const approveDeviceMessage = (data) => createMessage(data, 'authentication/approve_device', Authentication.ApproveDeviceRequest, null);\r\nexport const approveDeviceInstantMessage = (data) => createMessage(data, 'authentication/approve_device_instant', Authentication.ApproveDeviceRequest, null);\r\nexport const validateDeviceVerificationCodeMessage = (data) => createMessage(data, 'authentication/validate_device_verification_code', Authentication.ValidateDeviceVerificationCodeRequest, null);\r\nexport const validateCreateUserVerificationCodeMessage = (data) => createMessage(data, 'authentication/validate_create_user_verification_code', Authentication.ValidateCreateUserVerificationCodeRequest, null);\r\nexport const approveUserDevicesMessage = (data) => createMessage(data, 'enterprise/approve_user_devices', Enterprise.ApproveUserDevicesRequest, Enterprise.ApproveUserDevicesResponse);\r\nexport const registerEncryptedDataKeyForDeviceMessage = (data) => createMessage(data, 'authentication/register_encrypted_data_key_for_device', Authentication.RegisterDeviceDataKeyRequest, null);\r\nexport const setUserSettingMessage = (data) => createMessage(data, 'setting/set_user_setting', Authentication.UserSettingRequest, null);\r\nexport const requestDeviceAdminApprovalMessage = (data) => createMessage(data, 'authentication/request_device_admin_approval', Authentication.DeviceVerificationRequest, null);\r\nexport const requestSaltAndIterations = () => createMessage({}, 'authentication/get_salt_and_iterations', null, Authentication.Salt);\r\nexport const validateMasterPasswordMessage = (data) => createMessage(data, 'authentication/validate_master_password', Authentication.MasterPasswordReentryRequest, null);\r\nexport const startLoginMessageFromSessionToken = (data) => createMessage(data, 'authentication/login_from_existing_session_token', Authentication.StartLoginRequest, Authentication.LoginResponse);\r\nexport const keepAliveMessage = () => createMessage({}, 'keep_alive', null, null);\r\nexport const logoutV3Message = () => createMessage({}, 'vault/logout_v3', null, null);\r\n// end new login\r\nexport const deviceMessage = (data) => createMessage(data, 'authentication/get_device_token', Authentication.DeviceRequest, Authentication.DeviceResponse);\r\nexport const preLoginMessage = (data) => createMessage(data, 'authentication/pre_login', Authentication.PreLoginRequest, Authentication.PreLoginResponse);\r\nexport const securityReportMessage = (data) => createMessage(data, 'enterprise/get_security_report_data', Authentication.SecurityReportRequest, Authentication.SecurityReportResponse);\r\nexport const enterpriseNodeToManagedCompanyMessage = (data) => createMessage(data, 'enterprise/node_to_managed_company', Enterprise.NodeToManagedCompanyRequest, null);\r\nexport const recordTypesGetMessage = (data) => createMessage(data, 'vault/get_record_types', Records.RecordTypesRequest, Records.RecordTypesResponse);\r\nexport const recordTypeAddMessage = (data) => createMessage(data, 'vault/record_type_add', Records.RecordType, Records.RecordTypeModifyResponse);\r\nexport const recordTypeUpdateMessage = (data) => createMessage(data, 'vault/record_type_update', Records.RecordType, Records.RecordTypeModifyResponse);\r\nexport const recordTypeDeleteMessage = (data) => createMessage(data, 'vault/record_type_delete', Records.RecordType, Records.RecordTypeModifyResponse);\r\nexport const recordsGetMessage = (data) => createMessage(data, 'vault/records_get', Records.RecordsGetRequest, Records.RecordsGetResponse);\r\nexport const recordsAddMessage = (data) => createMessage(data, 'vault/records_add', Records.RecordsAddRequest, Records.RecordsModifyResponse);\r\nexport const recordsUpdateMessage = (data) => createMessage(data, 'vault/records_update', Records.RecordsUpdateRequest, Records.RecordsModifyResponse);\r\nexport const fileDownloadMessage = (data) => createMessage(data, 'vault/files_download', Records.FilesGetRequest, Records.FilesGetResponse);\r\nexport const fileAddMessage = (data) => createMessage(data, 'vault/files_add', Records.FilesAddRequest, Records.FilesAddResponse);\r\nexport const recordsConvert3Message = (data) => createMessage(data, 'vault/records_convert3', Records.RecordsConvertToV3Request, Records.RecordsModifyResponse);\r\nexport const recordAddAuditData = (data) => createMessage(data, 'vault/record_add_audit_data', Records.AddAuditDataRequest, null);\r\nexport const accountSummaryMessage = (data) => createMessage(data, 'login/account_summary', AccountSummary.AccountSummaryRequest, AccountSummary.AccountSummaryElements);\r\nexport const sendSessionMessage = (data) => createMessage(data, 'pushserver/send_session_message', Authentication.SendSessionMessageRequest, null);\r\nexport const setEncryptedTeamKeyMessage = (data) => createMessage(data, 'enterprise/set_encrypted_team_key', Enterprise.EncryptedTeamKeyRequest, null);\r\nexport const getBackupMessage = (data) => createMessage(data, 'enterprise/get_backup', Enterprise.BackupRequest, Enterprise.BackupResponse);\r\nexport const getEnterprisePublicKeyMessage = () => createMessage({}, 'enterprise/get_enterprise_public_key', null, BreachWatch.EnterprisePublicKeyResponse);\r\nexport const getEnterpriseDataForUserMessage = (data) => createMessage(data, 'enterprise/get_enterprise_data_for_user', Enterprise.EnterpriseDataRequest, Enterprise.EnterpriseDataResponse);\r\nexport const setEnterpriseDataKeyMessage = (data) => createMessage(data, 'enterprise/set_enterprise_user_data_key', Enterprise.EnterpriseUserDataKey, null);\r\nexport const setV2AlternatePasswordMessage = (data) => createMessage(data, 'authentication/set_v2_alternate_password', Authentication.UserAuthRequest, null);\r\nexport const getMasterPasswordSaltMessage = () => createMessage({}, 'setting/get_master_password_salt', null, Authentication.Salt);\r\nexport const getPublicKeysMessage = (data) => createMessage(data, 'vault/get_public_keys', Authentication.GetPublicKeysRequest, Authentication.GetPublicKeysResponse);\r\nexport const setEccKeyPairMessage = (data) => createMessage(data, 'vault/set_ecc_key_pair', Authentication.SetEccKeyPairRequest, null);\r\nexport const applicationAddMessage = (data) => createMessage(data, 'vault/application_add', Records.ApplicationAddRequest, null);\r\nexport const addAppShareMessage = (data) => createMessage(data, 'vault/app_share_add', Authentication.AddAppSharesRequest, null);\r\nexport const removeAppShareMessage = (data) => createMessage(data, 'vault/app_share_remove', Authentication.RemoveAppSharesRequest, null);\r\nexport const addAppClientMessage = (data) => createMessage(data, 'vault/app_client_add', Authentication.AddAppClientRequest, Authentication.Device);\r\nexport const addExternalShareMessage = (data) => createMessage(data, 'vault/external_share_add', Authentication.AddExternalShareRequest, Authentication.Device);\r\nexport const removeExternalShareMessage = (data) => createMessage(data, 'vault/external_share_remove', Authentication.RemoveAppClientsRequest, null);\r\nexport const removeAppClientMessage = (data) => createMessage(data, 'vault/app_client_remove', Authentication.RemoveAppClientsRequest, null);\r\nexport const getAppInfoMessage = (data) => createMessage(data, 'vault/get_app_info', Authentication.GetAppInfoRequest, Authentication.GetAppInfoResponse);\r\nexport const getApplicationsSummaryMessage = () => createMessage({}, 'vault/get_applications_summary', null, Authentication.GetApplicationsSummaryResponse);\r\nexport const sendShareInviteMessage = (data) => createMessage(data, 'vault/send_share_invite', Authentication.SendShareInviteRequest, null);\r\nexport const updateSecurityData = (data) => createMessage(data, 'enterprise/update_security_data', Authentication.SecurityDataRequest, Authentication.RevisionResponse);\r\nexport const setReusedPasswords = (data) => createMessage(data, 'enterprise/set_reused_passwords', Authentication.ReusedPasswordsRequest, null);\r\n/* -- SERVICE LOGGER -- */\r\nexport const serviceLoggerGetMessage = (data) => createMessage(data, 'logger/get', ServiceLogger.ServiceLogGetRequest, ServiceLogger.ServiceLogResponse);\r\n/* -- Cloud SSO Connect -- */\r\nexport const ssoSamlMessage = (endpoint) => createMessage(null, 'sso/saml/' + endpoint, null, null);\r\nexport const ssoConfigMessage = (endpoint) => createMessage(null, 'sso/config/' + endpoint, null, null);\r\nexport const ssoLoginMessageWithUrl = (url) => createMessage(null, url, null, null);\r\nexport const ssoLogoutMessage = (serviceProviderId, data) => createMessage(null, 'sso/saml/logout/' + serviceProviderId, null, null);\r\nexport const ssoGetMetadataMessage = (serviceProviderId) => createMessage(null, 'sso/saml/metadata/' + serviceProviderId, null, null);\r\nexport const ssoUploadIdpMetadataMessage = (data) => createMessage(data, 'sso/config/sso_cloud_upload_idp_metadata', SsoCloud.SsoCloudIdpMetadataRequest, SsoCloud.SsoCloudConfigurationValidationResponse);\r\nexport const ssoCloudServiceProviderUpdateRequestMessage = (data) => createMessage(data, 'sso/config/sso_cloud_sp_configuration_set', SsoCloud.SsoCloudServiceProviderUpdateRequest, SsoCloud.SsoCloudConfigurationResponse);\r\nexport const ssoCloudConfigurationRequestMessage = (data, url) => createMessage(data, url, SsoCloud.SsoCloudConfigurationRequest, SsoCloud.SsoCloudConfigurationResponse);\r\nexport const ssoCloudLogRequestMessage = (data, url) => createMessage(data, url, SsoCloud.SsoCloudLogRequest, ServiceLogger.ServiceLogResponse);\r\nexport const ssoCloudSAMLLogRequestMessage = (data, url) => createMessage(data, url, SsoCloud.SsoCloudSAMLLogRequest, SsoCloud.SsoCloudSAMLLogResponse);\r\nexport const ssoCloudServiceProviderConfigurationListRequestMessage = (data) => createMessage(data, 'sso/config/sso_cloud_sp_configuration_get', SsoCloud.SsoCloudServiceProviderConfigurationListRequest, SsoCloud.SsoCloudServiceProviderConfigurationListResponse);\r\nexport const ssoServiceProviderRequestMessage = (data) => createMessage(data, 'enterprise/get_sso_service_provider', Authentication.SsoServiceProviderRequest, Authentication.SsoServiceProviderResponse);\r\nexport const ssoCloudRequestMessage = (data) => createMessage(data, null, SsoCloud.SsoCloudRequest, null);\r\nexport const ssoCloudValidationRequestMessage = (data, url) => createMessage(data, url, SsoCloud.SsoCloudConfigurationValidationRequest, SsoCloud.SsoCloudConfigurationValidationResponse);\r\n/* -- Keeper Automator -- */\r\nexport const automatorApproveDeviceMessage = (data, url) => createMessage(data, url, Automator.ApproveDeviceRequest, Automator.AutomatorResponse);\r\nexport const automatorAdminCreateMessage = (data, url) => createMessage(data, url, Automator.AdminCreateAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminDeleteMessage = (data, url) => createMessage(data, url, Automator.AdminDeleteAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminEditMessage = (data, url) => createMessage(data, url, Automator.AdminEditAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminEnableMessage = (data, url) => createMessage(data, url, Automator.AdminEnableAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminGetMessage = (data, url) => createMessage(data, url, Automator.AdminGetAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminGetAllOnNodeMessage = (data, url) => createMessage(data, url, Automator.AdminGetAutomatorsOnNodeRequest, Automator.AdminResponse);\r\nexport const automatorAdminGetAllForEnterpriseMessage = (data, url) => createMessage(data, url, Automator.AdminGetAutomatorsForEnterpriseRequest, Automator.AdminResponse);\r\nexport const automatorAdminInitializeMessage = (data, url) => createMessage(data, url, Automator.AdminInitializeAutomatorRequest, Automator.AdminResponse);\r\nexport const automatorAdminResetMessage = (data, url) => createMessage(data, url, Automator.AdminResetAutomatorRequest, Automator.AdminResponse);\r\n//# sourceMappingURL=restMessages.js.map","references":["/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/node_modules/protobufjs/index.d.ts","/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/src/proto.d.ts"],"map":"{\"version\":3,\"file\":\"restMessages.js\",\"sourceRoot\":\"\",\"sources\":[\"../../src/restMessages.ts\"],\"names\":[],\"mappings\":\"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\"}","dts":{"name":"/home/runner/work/keeper-sdk-javascript/keeper-sdk-javascript/keeperapi/restMessages.d.ts","writeByteOrderMark":false,"text":"import { AccountSummary, Authentication, BreachWatch, Automator, Enterprise, Records, ServiceLogger, SsoCloud } from './proto';\r\nexport interface RestMessage<TIn, TOut> {\r\n path: string;\r\n toBytes(): Uint8Array;\r\n fromBytes(data: Uint8Array): TOut;\r\n}\r\nexport declare const registerDeviceMessage: (data: Authentication.IDeviceRegistrationRequest) => RestMessage<Authentication.IDeviceRegistrationRequest, Authentication.IDevice>;\r\nexport declare const registerDeviceInRegionMessage: (data: Authentication.IRegisterDeviceInRegionRequest) => RestMessage<Authentication.IRegisterDeviceInRegionRequest, {}>;\r\nexport declare const updateDeviceMessage: (data: Authentication.IDeviceUpdateRequest) => RestMessage<Authentication.IDeviceUpdateRequest, {}>;\r\nexport declare const requestDeviceVerificationMessage: (data: Authentication.IDeviceVerificationRequest) => RestMessage<Authentication.IDeviceVerificationRequest, {}>;\r\nexport declare const requestCreateUserMessage: (data: Authentication.ICreateUserRequest, isSso: boolean) => RestMessage<Authentication.ICreateUserRequest, {}>;\r\nexport declare const startLoginMessage: (data: Authentication.IStartLoginRequest) => RestMessage<Authentication.IStartLoginRequest, Authentication.ILoginResponse>;\r\nexport declare const validateAuthHashMessage: (data: Authentication.IValidateAuthHashRequest) => RestMessage<Authentication.IValidateAuthHashRequest, Authentication.ILoginResponse>;\r\nexport declare const twoFactorValidateMessage: (data: Authentication.ITwoFactorValidateRequest) => RestMessage<Authentication.ITwoFactorValidateRequest, Authentication.ITwoFactorValidateResponse>;\r\nexport declare const twoFactorSend2FAPushMessage: (data: Authentication.ITwoFactorSendPushRequest) => RestMessage<Authentication.ITwoFactorSendPushRequest, {}>;\r\nexport declare const twoFactorAdd: (data: Authentication.ITwoFactorAddRequest) => RestMessage<Authentication.ITwoFactorAddRequest, Authentication.ITwoFactorAddResponse>;\r\nexport declare const twoFactorAddValidate: (data: Authentication.ITwoFactorValidateRequest) => RestMessage<Authentication.ITwoFactorValidateRequest, Authentication.ITwoFactorAddResponse>;\r\nexport declare const twoFactorList: (data: Authentication.ITwoFactorChannelInfo) => RestMessage<Authentication.ITwoFactorChannelInfo, Authentication.ITwoFactorListResponse>;\r\nexport declare const twoFactorRename: (data: Authentication.ITwoFactorRenameRequest) => RestMessage<Authentication.ITwoFactorRenameRequest, {}>;\r\nexport declare const twoFactorDelete: (data: Authentication.ITwoFactorDeleteRequest) => RestMessage<Authentication.ITwoFactorDeleteRequest, {}>;\r\nexport declare const twoFactorDuoStatus: (data: Authentication.ITwoFactorDuoStatus) => RestMessage<Authentication.ITwoFactorDuoStatus, {}>;\r\nexport declare const approveDeviceMessage: (data: Authentication.IApproveDeviceRequest) => RestMessage<Authentication.IApproveDeviceRequest, {}>;\r\nexport declare const approveDeviceInstantMessage: (data: Authentication.IApproveDeviceRequest) => RestMessage<Authentication.IApproveDeviceRequest, {}>;\r\nexport declare const validateDeviceVerificationCodeMessage: (data: Authentication.IValidateDeviceVerificationCodeRequest) => RestMessage<Authentication.IValidateDeviceVerificationCodeRequest, {}>;\r\nexport declare const validateCreateUserVerificationCodeMessage: (data: Authentication.IValidateCreateUserVerificationCodeRequest) => RestMessage<Authentication.IValidateCreateUserVerificationCodeRequest, {}>;\r\nexport declare const approveUserDevicesMessage: (data: Enterprise.IApproveUserDevicesRequest) => RestMessage<Enterprise.IApproveUserDevicesRequest, Enterprise.IApproveUserDevicesResponse>;\r\nexport declare const registerEncryptedDataKeyForDeviceMessage: (data: Authentication.IRegisterDeviceDataKeyRequest) => RestMessage<Authentication.IRegisterDeviceDataKeyRequest, {}>;\r\nexport declare const setUserSettingMessage: (data: Authentication.IUserSettingRequest) => RestMessage<Authentication.IUserSettingRequest, {}>;\r\nexport declare const requestDeviceAdminApprovalMessage: (data: Authentication.IDeviceVerificationRequest) => RestMessage<Authentication.IDeviceVerificationRequest, {}>;\r\nexport declare const requestSaltAndIterations: () => RestMessage<{}, Authentication.Salt>;\r\nexport declare const validateMasterPasswordMessage: (data: Authentication.IMasterPasswordReentryRequest) => RestMessage<Authentication.IMasterPasswordReentryRequest, {}>;\r\nexport declare const startLoginMessageFromSessionToken: (data: Authentication.IStartLoginRequest) => RestMessage<Authentication.IStartLoginRequest, Authentication.ILoginResponse>;\r\nexport declare const keepAliveMessage: () => RestMessage<{}, {}>;\r\nexport declare const logoutV3Message: () => RestMessage<{}, {}>;\r\nexport declare const deviceMessage: (data: Authentication.IDeviceRequest) => RestMessage<Authentication.IDeviceRequest, Authentication.IDeviceResponse>;\r\nexport declare const preLoginMessage: (data: Authentication.IPreLoginRequest) => RestMessage<Authentication.IPreLoginRequest, Authentication.IPreLoginResponse>;\r\nexport declare const securityReportMessage: (data: Authentication.ISecurityReportRequest) => RestMessage<Authentication.ISecurityReportRequest, Authentication.ISecurityReportResponse>;\r\nexport declare const enterpriseNodeToManagedCompanyMessage: (data: Enterprise.INodeToManagedCompanyRequest) => RestMessage<Enterprise.INodeToManagedCompanyRequest, {}>;\r\nexport declare const recordTypesGetMessage: (data: Records.IRecordTypesRequest) => RestMessage<Records.IRecordTypesRequest, Records.IRecordTypesResponse>;\r\nexport declare const recordTypeAddMessage: (data: Records.IRecordType) => RestMessage<Records.IRecordType, Records.IRecordTypeModifyResponse>;\r\nexport declare const recordTypeUpdateMessage: (data: Records.IRecordType) => RestMessage<Records.IRecordType, Records.IRecordTypeModifyResponse>;\r\nexport declare const recordTypeDeleteMessage: (data: Records.IRecordType) => RestMessage<Records.IRecordType, Records.IRecordTypeModifyResponse>;\r\nexport declare const recordsGetMessage: (data: Records.IRecordsGetRequest) => RestMessage<Records.IRecordsGetRequest, Records.IRecordsGetResponse>;\r\nexport declare const recordsAddMessage: (data: Records.IRecordsAddRequest) => RestMessage<Records.IRecordsAddRequest, Records.IRecordsModifyResponse>;\r\nexport declare const recordsUpdateMessage: (data: Records.IRecordsUpdateRequest) => RestMessage<Records.IRecordsUpdateRequest, Records.IRecordsModifyResponse>;\r\nexport declare const fileDownloadMessage: (data: Records.IFilesGetRequest) => RestMessage<Records.IFilesGetRequest, Records.IFilesGetResponse>;\r\nexport declare const fileAddMessage: (data: Records.IFilesAddRequest) => RestMessage<Records.IFilesAddRequest, Records.IFilesAddResponse>;\r\nexport declare const recordsConvert3Message: (data: Records.RecordsConvertToV3Request) => RestMessage<Records.IRecordsConvertToV3Request, Records.RecordsModifyResponse>;\r\nexport declare const recordAddAuditData: (data: Records.AddAuditDataRequest) => RestMessage<Records.IAddAuditDataRequest, {}>;\r\nexport declare const accountSummaryMessage: (data: AccountSummary.IAccountSummaryRequest) => RestMessage<AccountSummary.IAccountSummaryRequest, AccountSummary.IAccountSummaryElements>;\r\nexport declare const sendSessionMessage: (data: Authentication.ISendSessionMessageRequest) => RestMessage<Authentication.ISendSessionMessageRequest, {}>;\r\nexport declare const setEncryptedTeamKeyMessage: (data: Enterprise.IEncryptedTeamKeyRequest) => RestMessage<Enterprise.IEncryptedTeamKeyRequest, {}>;\r\nexport declare const getBackupMessage: (data: Enterprise.IBackupRequest) => RestMessage<Enterprise.IBackupRequest, Enterprise.IBackupResponse>;\r\nexport declare const getEnterprisePublicKeyMessage: () => RestMessage<{}, BreachWatch.IEnterprisePublicKeyResponse>;\r\nexport declare const getEnterpriseDataForUserMessage: (data: Enterprise.IEnterpriseDataRequest) => RestMessage<Enterprise.IEnterpriseDataRequest, Enterprise.IEnterpriseDataResponse>;\r\nexport declare const setEnterpriseDataKeyMessage: (data: Enterprise.IEnterpriseUserDataKey) => RestMessage<Enterprise.IEnterpriseUserDataKey, {}>;\r\nexport declare const setV2AlternatePasswordMessage: (data: Authentication.IUserAuthRequest) => RestMessage<Authentication.IUserAuthRequest, {}>;\r\nexport declare const getMasterPasswordSaltMessage: () => RestMessage<{}, Authentication.ISalt>;\r\nexport declare const getPublicKeysMessage: (data: Authentication.IGetPublicKeysRequest) => RestMessage<Authentication.IGetPublicKeysRequest, Authentication.IGetPublicKeysResponse>;\r\nexport declare const setEccKeyPairMessage: (data: Authentication.ISetEccKeyPairRequest) => RestMessage<Authentication.ISetEccKeyPairRequest, {}>;\r\nexport declare const applicationAddMessage: (data: Records.IApplicationAddRequest) => RestMessage<Records.IApplicationAddRequest, {}>;\r\nexport declare const addAppShareMessage: (data: Authentication.IAddAppSharesRequest) => RestMessage<Authentication.IAddAppSharesRequest, {}>;\r\nexport declare const removeAppShareMessage: (data: Authentication.IRemoveAppSharesRequest) => RestMessage<Authentication.IRemoveAppSharesRequest, {}>;\r\nexport declare const addAppClientMessage: (data: Authentication.IAddAppClientRequest) => RestMessage<Authentication.IAddAppClientRequest, Authentication.IDevice>;\r\nexport declare const addExternalShareMessage: (data: Authentication.IAddExternalShareRequest) => RestMessage<Authentication.IAddExternalShareRequest, Authentication.IDevice>;\r\nexport declare const removeExternalShareMessage: (data: Authentication.IRemoveAppClientsRequest) => RestMessage<Authentication.IRemoveAppClientsRequest, {}>;\r\nexport declare const removeAppClientMessage: (data: Authentication.IRemoveAppClientsRequest) => RestMessage<Authentication.IRemoveAppClientsRequest, {}>;\r\nexport declare const getAppInfoMessage: (data: Authentication.IGetAppInfoRequest) => RestMessage<Authentication.IGetAppInfoRequest, Authentication.IGetAppInfoResponse>;\r\nexport declare const getApplicationsSummaryMessage: () => RestMessage<{}, Authentication.IGetApplicationsSummaryResponse>;\r\nexport declare const sendShareInviteMessage: (data: Authentication.ISendShareInviteRequest) => RestMessage<Authentication.ISendShareInviteRequest, {}>;\r\nexport declare const updateSecurityData: (data: Authentication.ISecurityDataRequest) => RestMessage<Authentication.ISecurityDataRequest, Authentication.RevisionResponse>;\r\nexport declare const setReusedPasswords: (data: Authentication.IReusedPasswordsRequest) => RestMessage<Authentication.IReusedPasswordsRequest, {}>;\r\nexport declare const serviceLoggerGetMessage: (data: ServiceLogger.IServiceLogGetRequest) => RestMessage<ServiceLogger.IServiceLogGetRequest, ServiceLogger.IServiceLogResponse>;\r\nexport declare const ssoSamlMessage: (endpoint: string) => RestMessage<null, null>;\r\nexport declare const ssoConfigMessage: (endpoint: string) => RestMessage<null, null>;\r\nexport declare const ssoLoginMessageWithUrl: (url: any) => RestMessage<null, null>;\r\nexport declare const ssoLogoutMessage: (serviceProviderId: any, data: any) => RestMessage<null, null>;\r\nexport declare const ssoGetMetadataMessage: (serviceProviderId: any) => RestMessage<null, null>;\r\nexport declare const ssoUploadIdpMetadataMessage: (data: SsoCloud.ISsoCloudIdpMetadataRequest) => RestMessage<SsoCloud.ISsoCloudIdpMetadataRequest, SsoCloud.ISsoCloudConfigurationValidationResponse>;\r\nexport declare const ssoCloudServiceProviderUpdateRequestMessage: (data: SsoCloud.ISsoCloudServiceProviderUpdateRequest) => RestMessage<SsoCloud.ISsoCloudServiceProviderUpdateRequest, SsoCloud.ISsoCloudConfigurationResponse>;\r\nexport declare const ssoCloudConfigurationRequestMessage: (data: SsoCloud.ISsoCloudConfigurationRequest, url: string) => RestMessage<SsoCloud.ISsoCloudConfigurationRequest, SsoCloud.ISsoCloudConfigurationResponse>;\r\nexport declare const ssoCloudLogRequestMessage: (data: SsoCloud.ISsoCloudLogRequest, url: string) => RestMessage<SsoCloud.ISsoCloudLogRequest, ServiceLogger.IServiceLogResponse>;\r\nexport declare const ssoCloudSAMLLogRequestMessage: (data: SsoCloud.ISsoCloudSAMLLogRequest, url: string) => RestMessage<SsoCloud.ISsoCloudSAMLLogRequest, SsoCloud.ISsoCloudSAMLLogResponse>;\r\nexport declare const ssoCloudServiceProviderConfigurationListRequestMessage: (data: SsoCloud.ISsoCloudServiceProviderConfigurationListRequest) => RestMessage<SsoCloud.ISsoCloudServiceProviderConfigurationListRequest, SsoCloud.ISsoCloudServiceProviderConfigurationListResponse>;\r\nexport declare const ssoServiceProviderRequestMessage: (data: Authentication.ISsoServiceProviderRequest) => RestMessage<Authentication.ISsoServiceProviderRequest, Authentication.ISsoServiceProviderResponse>;\r\nexport declare const ssoCloudRequestMessage: (data: SsoCloud.ISsoCloudRequest) => RestMessage<SsoCloud.ISsoCloudRequest, null>;\r\nexport declare const ssoCloudValidationRequestMessage: (data: SsoCloud.ISsoCloudConfigurationValidationRequest, url: string) => RestMessage<SsoCloud.ISsoCloudConfigurationValidationRequest, SsoCloud.ISsoCloudConfigurationValidationResponse>;\r\nexport declare const automatorApproveDeviceMessage: (data: Automator.ApproveDeviceRequest, url: string) => RestMessage<Automator.IApproveDeviceRequest, Automator.IAutomatorResponse>;\r\nexport declare const automatorAdminCreateMessage: (data: Automator.AdminCreateAutomatorRequest, url: string) => RestMessage<Automator.IAdminCreateAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminDeleteMessage: (data: Automator.AdminDeleteAutomatorRequest, url: string) => RestMessage<Automator.IAdminDeleteAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminEditMessage: (data: Automator.AdminEditAutomatorRequest, url: string) => RestMessage<Automator.IAdminEditAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminEnableMessage: (data: Automator.AdminEnableAutomatorRequest, url: string) => RestMessage<Automator.IAdminEnableAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminGetMessage: (data: Automator.AdminGetAutomatorRequest, url: string) => RestMessage<Automator.IAdminGetAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminGetAllOnNodeMessage: (data: Automator.AdminGetAutomatorsOnNodeRequest, url: string) => RestMessage<Automator.IAdminGetAutomatorsOnNodeRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminGetAllForEnterpriseMessage: (data: Automator.AdminGetAutomatorsForEnterpriseRequest, url: string) => RestMessage<Automator.IAdminGetAutomatorsForEnterpriseRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminInitializeMessage: (data: Automator.AdminInitializeAutomatorRequest, url: string) => RestMessage<Automator.IAdminInitializeAutomatorRequest, Automator.IAdminResponse>;\r\nexport declare const automatorAdminResetMessage: (data: Automator.AdminResetAutomatorRequest, url: string) => RestMessage<Automator.IAdminResetAutomatorRequest, Automator.IAdminResponse>;\r\n"}}
|