lemon-core 3.0.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (189) hide show
  1. package/README.md +13 -21
  2. package/dist/common/test-helper.js +19 -11
  3. package/dist/common/test-helper.js.map +1 -1
  4. package/dist/controllers/dummy-controller.d.ts +1 -1
  5. package/dist/controllers/dummy-controller.js +2 -2
  6. package/dist/controllers/dummy-controller.js.map +1 -1
  7. package/dist/controllers/general-api-controller.d.ts +1 -1
  8. package/dist/controllers/general-api-controller.js +5 -5
  9. package/dist/controllers/general-api-controller.js.map +1 -1
  10. package/dist/controllers/general-controller.js +2 -1
  11. package/dist/controllers/general-controller.js.map +1 -1
  12. package/dist/controllers/index.js +6 -2
  13. package/dist/controllers/index.js.map +1 -1
  14. package/dist/cores/api/api-service.d.ts +239 -0
  15. package/dist/cores/api/api-service.js +674 -0
  16. package/dist/cores/api/api-service.js.map +1 -0
  17. package/dist/cores/api/index.d.ts +10 -0
  18. package/dist/cores/api/index.js +27 -0
  19. package/dist/cores/api/index.js.map +1 -0
  20. package/dist/cores/api-service.js +19 -18
  21. package/dist/cores/api-service.js.map +1 -1
  22. package/dist/cores/aws/aws-kms-service.d.ts +53 -2
  23. package/dist/cores/aws/aws-kms-service.js +112 -29
  24. package/dist/cores/aws/aws-kms-service.js.map +1 -1
  25. package/dist/cores/aws/aws-s3-service.js +19 -18
  26. package/dist/cores/aws/aws-s3-service.js.map +1 -1
  27. package/dist/cores/aws/aws-sns-service.js +10 -10
  28. package/dist/cores/aws/aws-sns-service.js.map +1 -1
  29. package/dist/cores/aws/aws-sqs-service.js +12 -12
  30. package/dist/cores/aws/aws-sqs-service.js.map +1 -1
  31. package/dist/cores/aws/index.js +1 -1
  32. package/dist/cores/cache/cache-service.d.ts +440 -0
  33. package/dist/cores/cache/cache-service.js +967 -0
  34. package/dist/cores/cache/cache-service.js.map +1 -0
  35. package/dist/cores/cache/index.d.ts +10 -0
  36. package/dist/cores/cache/index.js +27 -0
  37. package/dist/cores/cache/index.js.map +1 -0
  38. package/dist/cores/cache-service.d.ts +54 -18
  39. package/dist/cores/cache-service.js +56 -45
  40. package/dist/cores/cache-service.js.map +1 -1
  41. package/dist/cores/config/config-service.js +11 -10
  42. package/dist/cores/config/config-service.js.map +1 -1
  43. package/dist/cores/core-services.js +6 -2
  44. package/dist/cores/core-services.js.map +1 -1
  45. package/dist/cores/core-types.d.ts +42 -12
  46. package/dist/cores/dynamo/dynamo-query-service.d.ts +52 -0
  47. package/dist/cores/dynamo/dynamo-query-service.js +127 -0
  48. package/dist/cores/dynamo/dynamo-query-service.js.map +1 -0
  49. package/dist/cores/dynamo/dynamo-scan-service.d.ts +70 -0
  50. package/dist/cores/dynamo/dynamo-scan-service.js +164 -0
  51. package/dist/cores/dynamo/dynamo-scan-service.js.map +1 -0
  52. package/dist/cores/dynamo/dynamo-service.d.ts +192 -0
  53. package/dist/cores/dynamo/dynamo-service.js +525 -0
  54. package/dist/cores/dynamo/dynamo-service.js.map +1 -0
  55. package/dist/cores/dynamo/index.d.ts +12 -0
  56. package/dist/cores/dynamo/index.js +29 -0
  57. package/dist/cores/dynamo/index.js.map +1 -0
  58. package/dist/cores/dynamo-query-service.js +7 -7
  59. package/dist/cores/dynamo-query-service.js.map +1 -1
  60. package/dist/cores/dynamo-scan-service.js +8 -8
  61. package/dist/cores/dynamo-scan-service.js.map +1 -1
  62. package/dist/cores/dynamo-service.js +19 -19
  63. package/dist/cores/dynamo-service.js.map +1 -1
  64. package/dist/cores/elastic/elastic6-query-service.d.ts +104 -0
  65. package/dist/cores/elastic/elastic6-query-service.js +510 -0
  66. package/dist/cores/elastic/elastic6-query-service.js.map +1 -0
  67. package/dist/cores/elastic/elastic6-service.d.ts +273 -0
  68. package/dist/cores/elastic/elastic6-service.js +903 -0
  69. package/dist/cores/elastic/elastic6-service.js.map +1 -0
  70. package/dist/cores/elastic/hangul-service.d.ts +102 -0
  71. package/dist/cores/elastic/hangul-service.js +205 -0
  72. package/dist/cores/elastic/hangul-service.js.map +1 -0
  73. package/dist/cores/elastic/index.d.ts +12 -0
  74. package/dist/cores/elastic/index.js +29 -0
  75. package/dist/cores/elastic/index.js.map +1 -0
  76. package/dist/cores/elastic6-query-service.js +7 -7
  77. package/dist/cores/elastic6-query-service.js.map +1 -1
  78. package/dist/cores/elastic6-service.js +57 -65
  79. package/dist/cores/elastic6-service.js.map +1 -1
  80. package/dist/cores/hangul-service.d.ts +17 -3
  81. package/dist/cores/hangul-service.js +17 -8
  82. package/dist/cores/hangul-service.js.map +1 -1
  83. package/dist/cores/http-storage-service.js +1 -1
  84. package/dist/cores/http-storage-service.js.map +1 -1
  85. package/dist/cores/index.d.ts +9 -15
  86. package/dist/cores/index.js +14 -15
  87. package/dist/cores/index.js.map +1 -1
  88. package/dist/cores/lambda/index.js +8 -4
  89. package/dist/cores/lambda/index.js.map +1 -1
  90. package/dist/cores/lambda/lambda-cognito-handler.js +2 -2
  91. package/dist/cores/lambda/lambda-cognito-handler.js.map +1 -1
  92. package/dist/cores/lambda/lambda-cron-handler.js +2 -2
  93. package/dist/cores/lambda/lambda-cron-handler.js.map +1 -1
  94. package/dist/cores/lambda/lambda-dynamo-stream-handler.d.ts +2 -2
  95. package/dist/cores/lambda/lambda-dynamo-stream-handler.js +20 -20
  96. package/dist/cores/lambda/lambda-dynamo-stream-handler.js.map +1 -1
  97. package/dist/cores/lambda/lambda-handler.js +12 -11
  98. package/dist/cores/lambda/lambda-handler.js.map +1 -1
  99. package/dist/cores/lambda/lambda-notification-handler.js +10 -10
  100. package/dist/cores/lambda/lambda-notification-handler.js.map +1 -1
  101. package/dist/cores/lambda/lambda-sns-handler.js +13 -13
  102. package/dist/cores/lambda/lambda-sns-handler.js.map +1 -1
  103. package/dist/cores/lambda/lambda-sqs-handler.js +13 -13
  104. package/dist/cores/lambda/lambda-sqs-handler.js.map +1 -1
  105. package/dist/cores/lambda/lambda-web-handler.d.ts +158 -8
  106. package/dist/cores/lambda/lambda-web-handler.js +330 -119
  107. package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
  108. package/dist/cores/lambda/lambda-wss-handler.js +16 -12
  109. package/dist/cores/lambda/lambda-wss-handler.js.map +1 -1
  110. package/dist/cores/model-manager.js +11 -11
  111. package/dist/cores/model-manager.js.map +1 -1
  112. package/dist/cores/protocol/protocol-service.d.ts +4 -0
  113. package/dist/cores/protocol/protocol-service.js +46 -40
  114. package/dist/cores/protocol/protocol-service.js.map +1 -1
  115. package/dist/cores/proxy-storage-service.js +7 -10
  116. package/dist/cores/proxy-storage-service.js.map +1 -1
  117. package/dist/cores/redis-storage-service.js +13 -13
  118. package/dist/cores/redis-storage-service.js.map +1 -1
  119. package/dist/cores/storage/http-storage-service.d.ts +22 -0
  120. package/dist/cores/storage/http-storage-service.js +129 -0
  121. package/dist/cores/storage/http-storage-service.js.map +1 -0
  122. package/dist/cores/storage/index.d.ts +14 -0
  123. package/dist/cores/storage/index.js +31 -0
  124. package/dist/cores/storage/index.js.map +1 -0
  125. package/dist/cores/storage/model-manager.d.ts +93 -0
  126. package/dist/cores/storage/model-manager.js +192 -0
  127. package/dist/cores/storage/model-manager.js.map +1 -0
  128. package/dist/cores/storage/proxy-storage-service.d.ts +573 -0
  129. package/dist/cores/storage/proxy-storage-service.js +913 -0
  130. package/dist/cores/storage/proxy-storage-service.js.map +1 -0
  131. package/dist/cores/storage/redis-storage-service.d.ts +183 -0
  132. package/dist/cores/storage/redis-storage-service.js +391 -0
  133. package/dist/cores/storage/redis-storage-service.js.map +1 -0
  134. package/dist/cores/storage/storage-service.d.ts +169 -0
  135. package/dist/cores/storage/storage-service.js +374 -0
  136. package/dist/cores/storage/storage-service.js.map +1 -0
  137. package/dist/cores/storage-service.d.ts +1 -1
  138. package/dist/cores/storage-service.js +10 -8
  139. package/dist/cores/storage-service.js.map +1 -1
  140. package/dist/engine/builder.js +27 -20
  141. package/dist/engine/builder.js.map +1 -1
  142. package/dist/engine/engine.js +53 -44
  143. package/dist/engine/engine.js.map +1 -1
  144. package/dist/engine/index.js +8 -4
  145. package/dist/engine/index.js.map +1 -1
  146. package/dist/engine/utilities.d.ts +4 -3
  147. package/dist/engine/utilities.js +32 -37
  148. package/dist/engine/utilities.js.map +1 -1
  149. package/dist/environ.d.ts +2 -2
  150. package/dist/environ.js +20 -10
  151. package/dist/environ.js.map +1 -1
  152. package/dist/exec-cli.js +26 -26
  153. package/dist/exec-cli.js.map +1 -1
  154. package/dist/extended/abstract-service.d.ts +533 -0
  155. package/dist/extended/abstract-service.js +915 -0
  156. package/dist/extended/abstract-service.js.map +1 -0
  157. package/dist/extended/index.d.ts +10 -0
  158. package/dist/extended/index.js +27 -0
  159. package/dist/extended/index.js.map +1 -0
  160. package/dist/helpers/helpers.d.ts +273 -0
  161. package/dist/helpers/helpers.js +613 -0
  162. package/dist/helpers/helpers.js.map +1 -0
  163. package/dist/helpers/index.d.ts +10 -0
  164. package/dist/helpers/index.js +27 -0
  165. package/dist/helpers/index.js.map +1 -0
  166. package/dist/index.d.ts +7 -5
  167. package/dist/index.js +11 -4
  168. package/dist/index.js.map +1 -1
  169. package/dist/lib/dynamo/expressions.js +35 -27
  170. package/dist/lib/dynamo/expressions.js.map +1 -1
  171. package/dist/lib/dynamo/query.js +24 -20
  172. package/dist/lib/dynamo/query.js.map +1 -1
  173. package/dist/lib/dynamo/scan.js +17 -13
  174. package/dist/lib/dynamo/scan.js.map +1 -1
  175. package/dist/lib/dynamo/serializer.js +11 -7
  176. package/dist/lib/dynamo/serializer.js.map +1 -1
  177. package/dist/lib/dynamo/utils.js +19 -14
  178. package/dist/lib/dynamo/utils.js.map +1 -1
  179. package/dist/lib/dynamodb-value.js +3 -3
  180. package/dist/lib/dynamodb-value.js.map +1 -1
  181. package/dist/lib/index.js +6 -2
  182. package/dist/lib/index.js.map +1 -1
  183. package/dist/tools/express.js +21 -15
  184. package/dist/tools/express.js.map +1 -1
  185. package/dist/tools/index.js +6 -2
  186. package/dist/tools/index.js.map +1 -1
  187. package/dist/tools/shared.js +12 -6
  188. package/dist/tools/shared.js.map +1 -1
  189. package/package.json +16 -15
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-service.js","sourceRoot":"","sources":["../../../src/cores/api/api-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * `cores/api/index.tx`
3
+ * - default index to export all for api-service
4
+ *
5
+ * @author Steve Jung <steve@lemoncloud.io>
6
+ * @date 2022-05-13 initial file to group
7
+ *
8
+ * @copyright (C) lemoncloud.io 2022 - All Rights Reserved.
9
+ */
10
+ export * from './api-service';
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * `cores/api/index.tx`
19
+ * - default index to export all for api-service
20
+ *
21
+ * @author Steve Jung <steve@lemoncloud.io>
22
+ * @date 2022-05-13 initial file to group
23
+ *
24
+ * @copyright (C) lemoncloud.io 2022 - All Rights Reserved.
25
+ */
26
+ __exportStar(require("./api-service"), exports);
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cores/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;GAQG;AACH,gDAA8B"}
@@ -144,7 +144,7 @@ class APIService {
144
144
  * @param backbone backbone address like 'http://localhost:8081'
145
145
  */
146
146
  static buildClient(type, endpoint, headers, backbone, proxy) {
147
- engine_1._log(NS, `buildClient(${type || ''})...`);
147
+ (0, engine_1._log)(NS, `buildClient(${type || ''})...`);
148
148
  if (!endpoint)
149
149
  throw new Error('@endpoint (url) is required');
150
150
  const host = `${endpoint || ''}`.split('/')[2];
@@ -161,12 +161,12 @@ class APIService {
161
161
  const relayHeaderKey = 'x-lemon-';
162
162
  const resultKey = 'result';
163
163
  //! use default backbone's web-proxy service.
164
- proxy = exports.createHttpWebProxy(NAME, `${backbone}/web`, headers, encoder, relayHeaderKey, resultKey);
164
+ proxy = (0, exports.createHttpWebProxy)(NAME, `${backbone}/web`, headers, encoder, relayHeaderKey, resultKey);
165
165
  }
166
166
  else {
167
167
  //! use direct web request.. (only read `type` + `id/cmd` later)
168
168
  const NAME = `API:${host}-${type || ''}`;
169
- proxy = exports.createHttpWebProxy(NAME, endpoint, headers, (n, s) => s, '');
169
+ proxy = (0, exports.createHttpWebProxy)(NAME, endpoint, headers, (n, s) => s, '');
170
170
  }
171
171
  /**
172
172
  * create internal client to translate of full url path with `host`+`path`
@@ -458,7 +458,7 @@ const query_string_1 = __importDefault(require("query-string"));
458
458
  * @param relayHeaderKey relay-key in headers for proxy.
459
459
  * @param resultKey resultKey in response
460
460
  */
461
- exports.createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey, resultKey) => {
461
+ const createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey, resultKey) => {
462
462
  if (!endpoint)
463
463
  throw new Error('@endpoint (url) is required!');
464
464
  const NS = engine_1.$U.NS(`X${name}`, 'magenta'); // NAMESPACE TO BE PRINTED.
@@ -476,11 +476,11 @@ exports.createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey,
476
476
  // const _log = console.info;
477
477
  if (!method)
478
478
  throw new Error('@method is required!');
479
- engine_1._log(NS, `doProxy(${method})..`);
479
+ (0, engine_1._log)(NS, `doProxy(${method})..`);
480
480
  const _isNa = (a) => a === undefined || a === null;
481
- engine_1._log(NS, '> endpoint =', endpoint);
482
- _isNa(path1) && engine_1._log(NS, `> host(id) =`, typeof path1, path1);
483
- _isNa(path2) && engine_1._log(NS, `> path(cmd) =`, typeof path2, path2);
481
+ (0, engine_1._log)(NS, '> endpoint =', endpoint);
482
+ _isNa(path1) && (0, engine_1._log)(NS, `> host(id) =`, typeof path1, path1);
483
+ _isNa(path2) && (0, engine_1._log)(NS, `> path(cmd) =`, typeof path2, path2);
484
484
  //! prepare request parameters
485
485
  // eslint-disable-next-line prettier/prettier
486
486
  const query_string = _isNa($param) ? '' : (typeof $param == 'object' ? query_string_1.default.stringify($param) : `${$param}`);
@@ -506,29 +506,29 @@ exports.createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey,
506
506
  return H;
507
507
  }, options.headers);
508
508
  }
509
- engine_1._log(NS, ' url :=', options.method, url);
510
- engine_1._log(NS, '*', options.method, url, options.json ? 'json' : 'plain');
511
- engine_1._log(NS, '> options =', engine_1.$U.json(options));
509
+ (0, engine_1._log)(NS, ' url :=', options.method, url);
510
+ (0, engine_1._log)(NS, '*', options.method, url, options.json ? 'json' : 'plain');
511
+ (0, engine_1._log)(NS, '> options =', engine_1.$U.json(options));
512
512
  //! returns promise
513
513
  return new Promise((resolve, reject) => {
514
514
  //! start request..
515
515
  request(options, function (error, response, body) {
516
- error && engine_1._err(NS, '>>>>> requested! err=', error);
516
+ error && (0, engine_1._err)(NS, '>>>>> requested! err=', error);
517
517
  if (error)
518
- return reject(error instanceof Error ? error : new Error(test_helper_1.GETERR(error)));
518
+ return reject(error instanceof Error ? error : new Error((0, test_helper_1.GETERR)(error)));
519
519
  //! detecte trouble.
520
520
  const statusCode = response.statusCode;
521
521
  const statusMessage = response.statusMessage;
522
522
  //! if not in success
523
523
  if (statusCode !== 200 && statusCode !== 201) {
524
- const msg = body ? test_helper_1.GETERR(body) : `${statusMessage || ''}`;
524
+ const msg = body ? (0, test_helper_1.GETERR)(body) : `${statusMessage || ''}`;
525
525
  if (statusCode === 400 || statusCode === 404) {
526
526
  const title = `${(statusCode == 404 ? '' : statusMessage) || 'NOT FOUND'}`.toUpperCase();
527
527
  const message = msg.startsWith('404 NOT FOUND') ? msg : `${statusCode} ${title} - ${msg}`;
528
528
  return reject(new Error(message));
529
529
  }
530
- statusMessage && engine_1._log(NS, `> statusMessage[${statusCode}] =`, statusMessage);
531
- body && engine_1._log(NS, `> body[${statusCode}] =`, engine_1.$U.json(body));
530
+ statusMessage && (0, engine_1._log)(NS, `> statusMessage[${statusCode}] =`, statusMessage);
531
+ body && (0, engine_1._log)(NS, `> body[${statusCode}] =`, engine_1.$U.json(body));
532
532
  return reject(new Error(`${statusCode} ${statusMessage || 'FAILURE'} - ${msg}`));
533
533
  }
534
534
  //! try to parse body.
@@ -541,7 +541,7 @@ exports.createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey,
541
541
  }
542
542
  }
543
543
  catch (e) {
544
- engine_1._err(NS, '!WARN! parse(body) =', e instanceof Error ? e : engine_1.$U.json(e));
544
+ (0, engine_1._err)(NS, '!WARN! parse(body) =', e instanceof Error ? e : engine_1.$U.json(e));
545
545
  }
546
546
  //! ok! successed.
547
547
  resolve(body);
@@ -554,6 +554,7 @@ exports.createHttpWebProxy = (name, endpoint, headers, encoder, relayHeaderKey,
554
554
  }
555
555
  })();
556
556
  };
557
+ exports.createHttpWebProxy = createHttpWebProxy;
557
558
  /** ********************************************************************************************************************
558
559
  * MOCKS API-SERVICE
559
560
  ** ********************************************************************************************************************/
@@ -597,7 +598,7 @@ class MocksAPIService {
597
598
  // console.log(NS, '> files =', files);
598
599
  const $map = files
599
600
  .sort()
600
- .map(file => ({ file, json: shared_1.loadJsonSync(`${PATH}${file}`) }))
601
+ .map(file => ({ file, json: (0, shared_1.loadJsonSync)(`${PATH}${file}`) }))
601
602
  .reduce((M, F) => {
602
603
  const file = F.file || '';
603
604
  const data = F.json;
@@ -1 +1 @@
1
- {"version":3,"file":"api-service.js","sourceRoot":"","sources":["../../src/cores/api-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api-service.js","sourceRoot":"","sources":["../../src/cores/api-service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,26 @@
1
+ /// <reference types="node" />
2
+ import AWS from 'aws-sdk';
3
+ import { SigningAlgorithmSpec } from 'aws-sdk/clients/kms';
1
4
  import { CoreKmsService } from '../core-services';
5
+ declare type MySigningAlgorithm = SigningAlgorithmSpec;
6
+ /**
7
+ * check if base64 string.
8
+ */
9
+ export declare const isBase64: (text: string) => boolean;
10
+ /**
11
+ * normal base64 to url encoded.
12
+ */
13
+ export declare const fromBase64: (base64: string) => string;
14
+ /**
15
+ * additional options for KMS signing.
16
+ */
17
+ export interface AWSKMSSignOption {
18
+ /**
19
+ * algorithm used to sign and verify.
20
+ * (default RSASSA_PKCS1_V1_5_SHA_256)
21
+ */
22
+ algorithm?: MySigningAlgorithm;
23
+ }
2
24
  /**
3
25
  * class: `AWSKMSService`
4
26
  * - shared Key Management Service to encrypt/decrypt message.
@@ -10,7 +32,8 @@ export declare class AWSKMSService implements CoreKmsService {
10
32
  static ENV_KMS_KEY_ID: string;
11
33
  static DEF_KMS_TARGET: string;
12
34
  private _keyId;
13
- constructor(keyId?: string);
35
+ private _options;
36
+ constructor(keyId?: string, options?: AWSKMSSignOption);
14
37
  /**
15
38
  * get name of this
16
39
  */
@@ -23,11 +46,15 @@ export declare class AWSKMSService implements CoreKmsService {
23
46
  * get key-id to encrypt.
24
47
  */
25
48
  keyId: () => string;
49
+ protected _instance: AWS.KMS;
50
+ /**
51
+ * get KMS instance in stock
52
+ */
53
+ instance(): AWS.KMS;
26
54
  /**
27
55
  * Encrypt message
28
56
  *
29
57
  * @param {*} message
30
- * @param {*} keyId
31
58
  */
32
59
  encrypt: (message: string) => Promise<string>;
33
60
  /**
@@ -36,6 +63,29 @@ export declare class AWSKMSService implements CoreKmsService {
36
63
  * @param {*} encryptedSecret
37
64
  */
38
65
  decrypt: (encryptedSecret: string) => Promise<string>;
66
+ /**
67
+ * make signature by message
68
+ *
69
+ * @param {*} message any string
70
+ * @param forJwtSignature (option) flag to get JWT signature format.
71
+ */
72
+ sign: (message: string, forJwtSignature?: boolean) => Promise<string>;
73
+ /**
74
+ * verify signature in asymetric way
75
+ * - it tooks around `30ms`
76
+ *
77
+ * @param {*} message any string
78
+ * @param {*} signature signature of Buffer or string(in base64)
79
+ */
80
+ verify: (message: string, signature: Buffer | string) => Promise<boolean>;
81
+ /**
82
+ * retrieve public-key for asymetric verification.
83
+ * - used to verify signature with JWT library w/o making request to AWS KMS.
84
+ * - in general, cache this `public-key` to verify locally.
85
+ *
86
+ * @param encoding (optional) encoding type
87
+ */
88
+ getPublicKey: (encoding?: BufferEncoding) => Promise<string>;
39
89
  /**
40
90
  * it should be 'hello lemon'
41
91
  *
@@ -53,3 +103,4 @@ export declare class AWSKMSService implements CoreKmsService {
53
103
  decrypted: string;
54
104
  }>;
55
105
  }
106
+ export {};