@kensio/yulin 1.10.5 → 1.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/dist/config/lint/cff-js2-lint.fixture.d.ts.map +1 -1
  2. package/dist/config/lint/cff-js2-lint.fixture.js +23 -0
  3. package/dist/config/lint/cff-js2-lint.fixture.js.map +1 -1
  4. package/dist/config/lint/cff-js2-restriction.d.ts +5 -5
  5. package/dist/config/lint/cff-js2-restriction.d.ts.map +1 -1
  6. package/dist/config/lint/cff-js2-restriction.js +11 -5
  7. package/dist/config/lint/cff-js2-restriction.js.map +1 -1
  8. package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
  9. package/dist/sdk/router/resolve-sim-sdk-command-router.js +3 -0
  10. package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
  11. package/dist/service/aws/sim-aws-account-region-scope.d.ts +9 -0
  12. package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
  13. package/dist/service/aws/sim-aws-account-region-scope.js +10 -0
  14. package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
  15. package/dist/service/aws/sim-aws-account.d.ts +5 -0
  16. package/dist/service/aws/sim-aws-account.d.ts.map +1 -1
  17. package/dist/service/aws/sim-aws-account.js +6 -0
  18. package/dist/service/aws/sim-aws-account.js.map +1 -1
  19. package/dist/service/aws/sim-aws-region.d.ts +5 -0
  20. package/dist/service/aws/sim-aws-region.d.ts.map +1 -1
  21. package/dist/service/aws/sim-aws-region.js +6 -0
  22. package/dist/service/aws/sim-aws-region.js.map +1 -1
  23. package/dist/service/aws/sim-aws-service-accessors.d.ts +5 -0
  24. package/dist/service/aws/sim-aws-service-accessors.d.ts.map +1 -1
  25. package/dist/service/aws/sim-aws-service-accessors.js +6 -0
  26. package/dist/service/aws/sim-aws-service-accessors.js.map +1 -1
  27. package/dist/service/cloudfront/command/key-value-store/sim-cf-create-key-value-store.d.ts +24 -0
  28. package/dist/service/cloudfront/command/key-value-store/sim-cf-create-key-value-store.d.ts.map +1 -0
  29. package/dist/service/cloudfront/command/key-value-store/sim-cf-create-key-value-store.js +43 -0
  30. package/dist/service/cloudfront/command/key-value-store/sim-cf-create-key-value-store.js.map +1 -0
  31. package/dist/service/cloudfront/command/key-value-store/sim-cf-delete-key-value-store.d.ts +26 -0
  32. package/dist/service/cloudfront/command/key-value-store/sim-cf-delete-key-value-store.d.ts.map +1 -0
  33. package/dist/service/cloudfront/command/key-value-store/sim-cf-delete-key-value-store.js +40 -0
  34. package/dist/service/cloudfront/command/key-value-store/sim-cf-delete-key-value-store.js.map +1 -0
  35. package/dist/service/cloudfront/command/key-value-store/sim-cf-describe-key-value-store.d.ts +24 -0
  36. package/dist/service/cloudfront/command/key-value-store/sim-cf-describe-key-value-store.d.ts.map +1 -0
  37. package/dist/service/cloudfront/command/key-value-store/sim-cf-describe-key-value-store.js +32 -0
  38. package/dist/service/cloudfront/command/key-value-store/sim-cf-describe-key-value-store.js.map +1 -0
  39. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-command.types.d.ts +109 -0
  40. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-command.types.d.ts.map +1 -0
  41. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-command.types.js +12 -0
  42. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-command.types.js.map +1 -0
  43. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-summary.d.ts +10 -0
  44. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-summary.d.ts.map +1 -0
  45. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-summary.js +17 -0
  46. package/dist/service/cloudfront/command/key-value-store/sim-cf-key-value-store-summary.js.map +1 -0
  47. package/dist/service/cloudfront/command/key-value-store/sim-cf-list-key-value-stores.d.ts +20 -0
  48. package/dist/service/cloudfront/command/key-value-store/sim-cf-list-key-value-stores.d.ts.map +1 -0
  49. package/dist/service/cloudfront/command/key-value-store/sim-cf-list-key-value-stores.js +34 -0
  50. package/dist/service/cloudfront/command/key-value-store/sim-cf-list-key-value-stores.js.map +1 -0
  51. package/dist/service/cloudfront/command/key-value-store/sim-cf-update-key-value-store.d.ts +24 -0
  52. package/dist/service/cloudfront/command/key-value-store/sim-cf-update-key-value-store.d.ts.map +1 -0
  53. package/dist/service/cloudfront/command/key-value-store/sim-cf-update-key-value-store.js +35 -0
  54. package/dist/service/cloudfront/command/key-value-store/sim-cf-update-key-value-store.js.map +1 -0
  55. package/dist/service/cloudfront/command/key-value-store-data/sim-cf-key-value-store-data-command.types.d.ts +116 -0
  56. package/dist/service/cloudfront/command/key-value-store-data/sim-cf-key-value-store-data-command.types.d.ts.map +1 -0
  57. package/dist/service/cloudfront/command/key-value-store-data/sim-cf-key-value-store-data-command.types.js +12 -0
  58. package/dist/service/cloudfront/command/key-value-store-data/sim-cf-key-value-store-data-command.types.js.map +1 -0
  59. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-batch.d.ts +22 -0
  60. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-batch.d.ts.map +1 -0
  61. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-batch.js +26 -0
  62. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-batch.js.map +1 -0
  63. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-reads.d.ts +37 -0
  64. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-reads.d.ts.map +1 -0
  65. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-reads.js +67 -0
  66. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-reads.js.map +1 -0
  67. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-writes.d.ts +43 -0
  68. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-writes.d.ts.map +1 -0
  69. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-writes.js +81 -0
  70. package/dist/service/cloudfront/command/key-value-store-data/sim-kvs-key-writes.js.map +1 -0
  71. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts +63 -0
  72. package/dist/service/cloudfront/error/sim-cloudfront.error.d.ts.map +1 -1
  73. package/dist/service/cloudfront/error/sim-cloudfront.error.js +75 -0
  74. package/dist/service/cloudfront/error/sim-cloudfront.error.js.map +1 -1
  75. package/dist/service/cloudfront/index.d.ts +3 -0
  76. package/dist/service/cloudfront/index.d.ts.map +1 -1
  77. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-access.d.ts +57 -0
  78. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-access.d.ts.map +1 -0
  79. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-access.js +72 -0
  80. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-access.js.map +1 -0
  81. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-commands.d.ts +51 -0
  82. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-commands.d.ts.map +1 -0
  83. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-commands.js +65 -0
  84. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-commands.js.map +1 -0
  85. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-keys.d.ts +72 -0
  86. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-keys.d.ts.map +1 -0
  87. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-keys.js +94 -0
  88. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-keys.js.map +1 -0
  89. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-registry.d.ts +59 -0
  90. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-registry.d.ts.map +1 -0
  91. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-registry.js +92 -0
  92. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-registry.js.map +1 -0
  93. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-users.d.ts +22 -0
  94. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-users.d.ts.map +1 -0
  95. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-users.js +7 -0
  96. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store-users.js.map +1 -0
  97. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store.d.ts +141 -0
  98. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store.d.ts.map +1 -0
  99. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store.js +180 -0
  100. package/dist/service/cloudfront/key-value-store/sim-cf-key-value-store.js.map +1 -0
  101. package/dist/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.d.ts +24 -0
  102. package/dist/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.d.ts.map +1 -0
  103. package/dist/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.js +54 -0
  104. package/dist/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.js.map +1 -0
  105. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.d.ts.map +1 -1
  106. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js +30 -0
  107. package/dist/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.js.map +1 -1
  108. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +10 -0
  109. package/dist/service/cloudfront/sim-cloudfront-commands.d.ts.map +1 -1
  110. package/dist/service/cloudfront/sim-cloudfront-commands.js +22 -0
  111. package/dist/service/cloudfront/sim-cloudfront-commands.js.map +1 -1
  112. package/dist/service/cloudfront/sim-cloudfront-key-value-store.d.ts +58 -0
  113. package/dist/service/cloudfront/sim-cloudfront-key-value-store.d.ts.map +1 -0
  114. package/dist/service/cloudfront/sim-cloudfront-key-value-store.js +68 -0
  115. package/dist/service/cloudfront/sim-cloudfront-key-value-store.js.map +1 -0
  116. package/dist/service/cloudfront/sim-cloudfront.d.ts +13 -0
  117. package/dist/service/cloudfront/sim-cloudfront.d.ts.map +1 -1
  118. package/dist/service/cloudfront/sim-cloudfront.js +15 -0
  119. package/dist/service/cloudfront/sim-cloudfront.js.map +1 -1
  120. package/package.json +2 -1
@@ -0,0 +1,180 @@
1
+ import { faker } from "@faker-js/faker";
2
+ import { makeSimAwsAccountId, } from "../../aws/sim-aws-account.js";
3
+ import { SimCloudFrontPreconditionFailed } from "../error/sim-cloudfront.error.js";
4
+ import { SimCloudFrontKeyValueStoreKeys, } from "./sim-cf-key-value-store-keys.js";
5
+ /**
6
+ * Simulated CloudFront key value store.
7
+ *
8
+ * A key value store holds data a CloudFront Function reads at request time,
9
+ * which is how a Function gets a redirect table or a feature flag without
10
+ * having the value baked into its code. The Function reads it and never writes
11
+ * to it: writes come from the separate key value store data API.
12
+ *
13
+ * The store is reached through two different SDK clients in AWS, and both are
14
+ * simulated. The CloudFront client owns the resource, so it creates, describes,
15
+ * renames and deletes the store. The key value store client owns the data, so
16
+ * it reads and writes the keys, addressing the store by ARN.
17
+ *
18
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/kvs-with-functions.html
19
+ */
20
+ export class SimCloudFrontKeyValueStore {
21
+ id;
22
+ accountId;
23
+ keys = new SimCloudFrontKeyValueStoreKeys();
24
+ /**
25
+ * When this key value store was created, which the data API reports and the
26
+ * CloudFront client does not.
27
+ */
28
+ createdTime;
29
+ #name;
30
+ #comment;
31
+ #status;
32
+ #lastModifiedTime;
33
+ #resourceETag;
34
+ #dataETag;
35
+ constructor(properties) {
36
+ this.id = properties.id ?? makeKeyValueStoreId();
37
+ this.accountId = properties.accountId ?? makeSimAwsAccountId();
38
+ this.#name = properties.name;
39
+ this.#comment = properties.comment;
40
+ this.#status = properties.status ?? "PROVISIONING";
41
+ this.#lastModifiedTime = properties.lastModifiedTime ?? new Date();
42
+ this.createdTime = this.#lastModifiedTime;
43
+ this.#resourceETag = makeKeyValueStoreETag();
44
+ this.#dataETag = makeKeyValueStoreETag();
45
+ }
46
+ /**
47
+ * The name this key value store is known by, which is unique per Account.
48
+ */
49
+ get name() {
50
+ return this.#name;
51
+ }
52
+ /**
53
+ * The comment stored with this key value store, if it has one.
54
+ */
55
+ get comment() {
56
+ return this.#comment;
57
+ }
58
+ /**
59
+ * The current status of this key value store.
60
+ */
61
+ get status() {
62
+ return this.#status;
63
+ }
64
+ /**
65
+ * When this key value store was last changed, by either API.
66
+ */
67
+ get lastModifiedTime() {
68
+ return this.#lastModifiedTime;
69
+ }
70
+ /**
71
+ * The ETag of the resource, which the CloudFront client works against.
72
+ *
73
+ * A store has two ETags and they are not interchangeable, which is what AWS
74
+ * has: each of the two DescribeKeyValueStore operations returns its own, and
75
+ * a write has to carry the one belonging to the API it is calling. This one
76
+ * versions the store's configuration, so a key write does not move it and a
77
+ * comment change does.
78
+ *
79
+ * https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/kvs-with-functions-get-reference.html
80
+ */
81
+ get resourceETag() {
82
+ return this.#resourceETag;
83
+ }
84
+ /**
85
+ * The ETag of the data, which the key value store client works against.
86
+ *
87
+ * This one versions the keys, so a key write moves it and a comment change
88
+ * does not. See resourceETag for why there are two.
89
+ */
90
+ get dataETag() {
91
+ return this.#dataETag;
92
+ }
93
+ /**
94
+ * The ARN for this key value store.
95
+ *
96
+ * CloudFront is a global service, so the Region is empty, the same way a
97
+ * Distribution and a Function ARN have no Region.
98
+ */
99
+ get arn() {
100
+ return `arn:aws:cloudfront::${this.accountId}:key-value-store/${this.id}`;
101
+ }
102
+ /**
103
+ * Move this key value store to the READY status.
104
+ */
105
+ ready() {
106
+ this.#status = "READY";
107
+ return Promise.resolve();
108
+ }
109
+ /**
110
+ * Rename this key value store, or change its comment.
111
+ */
112
+ update(properties) {
113
+ this.#name = properties.name ?? this.#name;
114
+ this.#comment = properties.comment ?? this.#comment;
115
+ this.touchResource();
116
+ }
117
+ /**
118
+ * Refuse a CloudFront client write whose ETag is not the resource's.
119
+ *
120
+ * CloudFront takes IfMatch on every write and refuses a stale one, which is
121
+ * what stops two writers overwriting each other. Yulin enforces it here
122
+ * rather than accepting and ignoring it, so a caller that does not thread the
123
+ * ETag through fails the way it would fail against CloudFront.
124
+ */
125
+ assertResourceETag(ifMatch) {
126
+ this.assertETag(ifMatch, this.#resourceETag, "resource");
127
+ }
128
+ /**
129
+ * Refuse a data API write whose ETag is not the data's.
130
+ */
131
+ assertDataETag(ifMatch) {
132
+ this.assertETag(ifMatch, this.#dataETag, "data");
133
+ }
134
+ /**
135
+ * Record that this store's configuration changed.
136
+ */
137
+ touchResource(lastModifiedTime = new Date()) {
138
+ this.#lastModifiedTime = lastModifiedTime;
139
+ this.#resourceETag = makeKeyValueStoreETag();
140
+ }
141
+ /**
142
+ * Record that this store's keys changed.
143
+ */
144
+ touchData(lastModifiedTime = new Date()) {
145
+ this.#lastModifiedTime = lastModifiedTime;
146
+ this.#dataETag = makeKeyValueStoreETag();
147
+ }
148
+ /**
149
+ * Every key and value this store holds.
150
+ */
151
+ listKeys() {
152
+ return this.keys.list();
153
+ }
154
+ /**
155
+ * Refuse a write against the wrong version of one side of the store.
156
+ *
157
+ * The side is named in the message because the two ETags are not
158
+ * interchangeable, and reaching for the other API's ETag is the mistake this
159
+ * is most likely to be catching.
160
+ */
161
+ assertETag(ifMatch, current, side) {
162
+ if (ifMatch !== current) {
163
+ throw new SimCloudFrontPreconditionFailed(`Sim CloudFront key value store ${this.name} has ${side} ETag ` +
164
+ `${current}, not ${ifMatch}`);
165
+ }
166
+ }
167
+ }
168
+ /**
169
+ * Generate a fake key value store ID, in the shape CloudFront gives one.
170
+ */
171
+ export function makeKeyValueStoreId() {
172
+ return faker.string.uuid();
173
+ }
174
+ /**
175
+ * Generate a fake ETag, in the shape CloudFront gives one.
176
+ */
177
+ export function makeKeyValueStoreETag() {
178
+ return faker.helpers.fromRegExp(/E[0-9A-Z]{13}/);
179
+ }
180
+ //# sourceMappingURL=sim-cf-key-value-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-key-value-store.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/key-value-store/sim-cf-key-value-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { type SimSdkCommandRoute, type SimSdkCommandRouter } from "../../../sdk/index.js";
2
+ import type { SimCloudFrontKeyValueStoreApi } from "../sim-cloudfront-key-value-store.js";
3
+ /**
4
+ * Routes intercepted key value store SDK Commands to one scoped simulated
5
+ * CloudFront's stores.
6
+ *
7
+ * DescribeKeyValueStore is a command name both this client and the CloudFront
8
+ * client have, answering with different things. They do not collide because
9
+ * interception resolves the router by the client's AWS service first, and only
10
+ * then looks up the command name.
11
+ */
12
+ export declare class SimCloudFrontKeyValueStoreSdkCommandRouter implements SimSdkCommandRouter {
13
+ private readonly routes;
14
+ constructor(keyValueStore: SimCloudFrontKeyValueStoreApi);
15
+ /**
16
+ * The SDK Command names the simulated key value store data API can handle.
17
+ */
18
+ supportedCommandNames(): readonly string[];
19
+ /**
20
+ * Get the route for an SDK Command name, if the data API supports it.
21
+ */
22
+ route(commandName: string): SimSdkCommandRoute | undefined;
23
+ }
24
+ //# sourceMappingURL=sim-cf-key-value-store-sdk-command-router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-key-value-store-sdk-command-router.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAS/B,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,sCAAsC,CAAC;AAE1F;;;;;;;;GAQG;AACH,qBAAa,0CAA2C,YAAW,mBAAmB;IACpF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IAEjE,YAAY,aAAa,EAAE,6BAA6B,EAmDvD;IAED;;OAEG;IACH,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEzD;CACF"}
@@ -0,0 +1,54 @@
1
+ import { simSdkCallerOptions, } from "../../../sdk/index.js";
2
+ /**
3
+ * Routes intercepted key value store SDK Commands to one scoped simulated
4
+ * CloudFront's stores.
5
+ *
6
+ * DescribeKeyValueStore is a command name both this client and the CloudFront
7
+ * client have, answering with different things. They do not collide because
8
+ * interception resolves the router by the client's AWS service first, and only
9
+ * then looks up the command name.
10
+ */
11
+ export class SimCloudFrontKeyValueStoreSdkCommandRouter {
12
+ routes;
13
+ constructor(keyValueStore) {
14
+ this.routes = new Map([
15
+ [
16
+ "DescribeKeyValueStoreCommand",
17
+ async (command, context) => await keyValueStore.describeKeyValueStore(command, simSdkCallerOptions(context)),
18
+ ],
19
+ [
20
+ "GetKeyCommand",
21
+ async (command, context) => await keyValueStore.getKey(command, simSdkCallerOptions(context)),
22
+ ],
23
+ [
24
+ "ListKeysCommand",
25
+ async (command, context) => await keyValueStore.listKeys(command, simSdkCallerOptions(context)),
26
+ ],
27
+ [
28
+ "PutKeyCommand",
29
+ async (command, context) => await keyValueStore.putKey(command, simSdkCallerOptions(context)),
30
+ ],
31
+ [
32
+ "DeleteKeyCommand",
33
+ async (command, context) => await keyValueStore.deleteKey(command, simSdkCallerOptions(context)),
34
+ ],
35
+ [
36
+ "UpdateKeysCommand",
37
+ async (command, context) => await keyValueStore.updateKeys(command, simSdkCallerOptions(context)),
38
+ ],
39
+ ]);
40
+ }
41
+ /**
42
+ * The SDK Command names the simulated key value store data API can handle.
43
+ */
44
+ supportedCommandNames() {
45
+ return this.routes.keys().toArray();
46
+ }
47
+ /**
48
+ * Get the route for an SDK Command name, if the data API supports it.
49
+ */
50
+ route(commandName) {
51
+ return this.routes.get(commandName);
52
+ }
53
+ }
54
+ //# sourceMappingURL=sim-cf-key-value-store-sdk-command-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cf-key-value-store-sdk-command-router.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cf-key-value-store-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAGpB,MAAM,uBAAuB,CAAC;AAW/B;;;;;;;;GAQG;AACH,MAAM,OAAO,0CAA0C;IACpC,MAAM,CAA0C;IAEjE,YAAY,aAA4C;QACtD,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAA6B;YAChD;gBACE,8BAA8B;gBAC9B,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,qBAAqB,CACvC,OAA6C,EAC7C,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,eAAe;gBACf,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,MAAM,CACxB,OAA8B,EAC9B,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,iBAAiB;gBACjB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,QAAQ,CAC1B,OAAgC,EAChC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,eAAe;gBACf,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,MAAM,CACxB,OAA8B,EAC9B,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,kBAAkB;gBAClB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,SAAS,CAC3B,OAAiC,EACjC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,mBAAmB;gBACnB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,UAAU,CAC5B,OAAkC,EAClC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAmB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront-sdk-command-router.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,qBAAa,6BAA8B,YAAW,mBAAmB;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IAEjE,YAAY,aAAa,EAAE,aAAa,EAmDvC;IAED;;OAEG;IACH,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEzD;CACF"}
1
+ {"version":3,"file":"sim-cloudfront-sdk-command-router.d.ts","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,uBAAuB,CAAC;AAc/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;GAGG;AACH,qBAAa,6BAA8B,YAAW,mBAAmB;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;IAEjE,YAAY,aAAa,EAAE,aAAa,EAqGvC;IAED;;OAEG;IACH,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEzD;CACF"}
@@ -27,6 +27,36 @@ export class SimCloudFrontSdkCommandRouter {
27
27
  "GetDistributionCommand",
28
28
  async (command, context) => await simCloudFront.getDistribution(command, simSdkCallerOptions(context)),
29
29
  ],
30
+ [
31
+ "CreateKeyValueStoreCommand",
32
+ async (command, context) => await simCloudFront
33
+ .keyValueStores()
34
+ .createKeyValueStore(command, simSdkCallerOptions(context)),
35
+ ],
36
+ [
37
+ "DescribeKeyValueStoreCommand",
38
+ async (command, context) => await simCloudFront
39
+ .keyValueStores()
40
+ .describeKeyValueStore(command, simSdkCallerOptions(context)),
41
+ ],
42
+ [
43
+ "ListKeyValueStoresCommand",
44
+ async (command, context) => await simCloudFront
45
+ .keyValueStores()
46
+ .listKeyValueStores(command, simSdkCallerOptions(context)),
47
+ ],
48
+ [
49
+ "UpdateKeyValueStoreCommand",
50
+ async (command, context) => await simCloudFront
51
+ .keyValueStores()
52
+ .updateKeyValueStore(command, simSdkCallerOptions(context)),
53
+ ],
54
+ [
55
+ "DeleteKeyValueStoreCommand",
56
+ async (command, context) => await simCloudFront
57
+ .keyValueStores()
58
+ .deleteKeyValueStore(command, simSdkCallerOptions(context)),
59
+ ],
30
60
  [
31
61
  "UpdateDistributionCommand",
32
62
  async (command, context) => await simCloudFront.updateDistribution(command, simSdkCallerOptions(context)),
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront-sdk-command-router.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,GAGpB,MAAM,uBAAuB,CAAC;AAS/B;;;GAGG;AACH,MAAM,OAAO,6BAA6B;IACvB,MAAM,CAA0C;IAEjE,YAAY,aAA4B;QACtC,IAAI,CAAC,MAAM,GAAG,IAAI,GAAG,CAA6B;YAChD;gBACE,2BAA2B;gBAC3B,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,kBAAkB,CACpC,OAAuC,EACvC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,uBAAuB;gBACvB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,cAAc,CAChC,OAAmC,EACnC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,2BAA2B;gBAC3B,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,kBAAkB,CACpC,OAAuC,EACvC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,uBAAuB;gBACvB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,cAAc,CAChC,OAAmC,EACnC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,wBAAwB;gBACxB,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,eAAe,CACjC,OAAoC,EACpC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;YACD;gBACE,2BAA2B;gBAC3B,KAAK,EAAE,OAAO,EAAE,OAAO,EAAoB,EAAE,CAC3C,MAAM,aAAa,CAAC,kBAAkB,CACpC,OAAuC,EACvC,mBAAmB,CAAC,OAAO,CAAC,CAC7B;aACJ;SACF,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IACtC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAmB;QACvB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cloudfront-sdk-command-router.js","sourceRoot":"","sources":["../../../../src/service/cloudfront/sdk/sim-cloudfront-sdk-command-router.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,8 @@ import { type SimCloudFrontS3OriginResolver } from "./origin/s3/sim-cloudfront-s
17
17
  import type { SimCloudFrontOriginAccessControlRegistry } from "./origin-access-control/sim-cf-origin-access-control-registry.js";
18
18
  import type { SimCloudFrontResponseHeadersPolicyRegistry } from "./response-headers-policy/sim-cf-response-headers-policy-registry.js";
19
19
  import { SimCloudFrontRegistry } from "./registry/sim-cloud-front-registry.js";
20
+ import { SimCfKeyValueStoreCommands } from "./key-value-store/sim-cf-key-value-store-commands.js";
21
+ import { SimCloudFrontKeyValueStoreApi } from "./sim-cloudfront-key-value-store.js";
20
22
  /**
21
23
  * How one simulated CloudFront is put together.
22
24
  */
@@ -52,6 +54,14 @@ export type SimCloudFrontDistributionMap = Map<SimCloudFrontDistributionId, SimC
52
54
  * what it should be: state plus delegation.
53
55
  */
54
56
  export declare class SimCloudFrontCommands {
57
+ /**
58
+ * The key value store commands on the CloudFront client.
59
+ */
60
+ readonly keyValueStores: SimCfKeyValueStoreCommands;
61
+ /**
62
+ * The key value store data API over those same stores.
63
+ */
64
+ readonly keyValueStoreApi: SimCloudFrontKeyValueStoreApi;
55
65
  private readonly distributionState;
56
66
  private readonly functionState;
57
67
  private readonly s3OriginResolver;
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront-commands.d.ts","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-cloudfront-commands.d.ts","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;AAC1D,OAAO,KAAK,EACV,4BAA4B,EAC5B,kCAAkC,EACnC,MAAM,8DAA8D,CAAC;AAEtE,OAAO,KAAK,EACV,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,sDAAsD,CAAC;AAC9D,OAAO,KAAK,EACV,4BAA4B,EAC5B,kCAAkC,EACnC,MAAM,8DAA8D,CAAC;AAEtE,OAAO,KAAK,EACV,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,sDAAsD,CAAC;AAE9D,OAAO,KAAK,EACV,yBAAyB,EACzB,+BAA+B,EAChC,MAAM,wDAAwD,CAAC;AAEhE,OAAO,KAAK,EACV,4BAA4B,EAC5B,kCAAkC,EACnC,MAAM,8DAA8D,CAAC;AAEtE,OAAO,KAAK,EACV,yBAAyB,EACzB,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oDAAoD,CAAC;AACtG,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,kEAAkE,CAAC;AACjI,OAAO,KAAK,EAAE,0CAA0C,EAAE,MAAM,sEAAsE,CAAC;AACvI,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAE/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAElG,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,qBAAqB,CAAC;IACpD,QAAQ,CAAC,gBAAgB,CAAC,EAAE,6BAA6B,CAAC;IAC1D,QAAQ,CAAC,sBAAsB,CAAC,EAAE,2BAA2B,GAAG,SAAS,CAAC;IAC1E,QAAQ,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;IAClD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED,UAAU,+BAAgC,SAAQ,uBAAuB;IACvE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,aAAa,EAAE,4BAA4B,CAAC;IACrD,QAAQ,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,oBAAoB,EAAE,wCAAwC,CAAC;IACxE,QAAQ,CAAC,uBAAuB,EAAE,0CAA0C,CAAC;CAC9E;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED,MAAM,MAAM,4BAA4B,GAAG,GAAG,CAC5C,2BAA2B,EAC3B,yBAAyB,CAC1B,CAAC;AAuBF;;;;;;;GAOG;AACH,qBAAa,qBAAqB;IAChC;;OAEG;IACH,SAAgB,cAAc,EAAE,0BAA0B,CAAC;IAE3D;;OAEG;IACH,SAAgB,gBAAgB,EAAE,6BAA6B,CAAC;IAEhE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAiC;IACnE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA6B;IAC3D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgC;IACjE,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAEzB;IACd,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA6B;IACzD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAA2C;IAChF,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA6C;IAErF,YAAY,UAAU,EAAE,+BAA+B,EA4CtD;IAED;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,kCAAkC,CAAC,CAK7C;IAED;;OAEG;IACG,eAAe,CACnB,OAAO,EAAE,yBAAyB,EAClC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,+BAA+B,CAAC,CAI1C;IAED;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,kCAAkC,CAAC,CAK7C;IAED;;OAEG;IACG,kBAAkB,CACtB,OAAO,EAAE,4BAA4B,EACrC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,kCAAkC,CAAC,CAI7C;IAED;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,8BAA8B,CAAC,CAKzC;IAED;;OAEG;IACG,cAAc,CAClB,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,2BAA2B,GACpC,OAAO,CAAC,8BAA8B,CAAC,CAKzC;IAED;;OAEG;IACH,OAAO,CAAC,WAAW;CAepB"}
@@ -8,6 +8,10 @@ import { GetDistributionCommandHandler } from "./command/get-distribution/get-di
8
8
  import { UpdateDistributionCommandHandler } from "./command/update-distribution/update-distribution.handler.js";
9
9
  import { emptyCloudFrontS3OriginResolver, } from "./origin/s3/sim-cloudfront-s3-origin.js";
10
10
  import { SimCloudFrontRegistry } from "./registry/sim-cloud-front-registry.js";
11
+ import { SimCfKeyValueStoreAccess } from "./key-value-store/sim-cf-key-value-store-access.js";
12
+ import { SimCfKeyValueStoreCommands } from "./key-value-store/sim-cf-key-value-store-commands.js";
13
+ import { SimCloudFrontKeyValueStoreRegistry } from "./key-value-store/sim-cf-key-value-store-registry.js";
14
+ import { SimCloudFrontKeyValueStoreApi } from "./sim-cloudfront-key-value-store.js";
11
15
  /**
12
16
  * The commands of one simulated CloudFront, and the state they share.
13
17
  *
@@ -17,6 +21,14 @@ import { SimCloudFrontRegistry } from "./registry/sim-cloud-front-registry.js";
17
21
  * what it should be: state plus delegation.
18
22
  */
19
23
  export class SimCloudFrontCommands {
24
+ /**
25
+ * The key value store commands on the CloudFront client.
26
+ */
27
+ keyValueStores;
28
+ /**
29
+ * The key value store data API over those same stores.
30
+ */
31
+ keyValueStoreApi;
20
32
  distributionState;
21
33
  functionState;
22
34
  s3OriginResolver;
@@ -44,6 +56,16 @@ export class SimCloudFrontCommands {
44
56
  this.acmRegistry = acmRegistry;
45
57
  this.originAccessControls = properties.originAccessControls;
46
58
  this.responseHeadersPolicies = properties.responseHeadersPolicies;
59
+ const keyValueStoreAccess = new SimCfKeyValueStoreAccess({
60
+ accountId,
61
+ stores: new SimCloudFrontKeyValueStoreRegistry(),
62
+ iam,
63
+ background,
64
+ });
65
+ // Nothing can be associated with a store yet, so the delete command's
66
+ // in-use guard is left on its default. See SimCfKeyValueStoreUsers.
67
+ this.keyValueStores = new SimCfKeyValueStoreCommands(keyValueStoreAccess);
68
+ this.keyValueStoreApi = new SimCloudFrontKeyValueStoreApi(keyValueStoreAccess);
47
69
  }
48
70
  /**
49
71
  * Handle a Create Distribution Command from the SDK.
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront-commands.js","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAK7C,OAAO,EACL,kBAAkB,GAEnB,MAAM,kDAAkD,CAAC;AAK1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAKhH,OAAO,EACL,4BAA4B,GAE7B,MAAM,sDAAsD,CAAC;AAK9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAKhH,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AAKpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AAKvG,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAMhH,OAAO,EACL,+BAA+B,GAEhC,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAwD/E;;;;;;;GAOG;AACH,MAAM,OAAO,qBAAqB;IACf,iBAAiB,CAAiC;IAClD,aAAa,CAA6B;IAC1C,gBAAgB,CAAgC;IAChD,sBAAsB,CAEzB;IACG,WAAW,CAA6B;IACxC,oBAAoB,CAA2C;IAC/D,uBAAuB,CAA6C;IAErF,YAAY,UAA2C;QACrD,MAAM,EACJ,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,EAChD,gBAAgB,GAAG,+BAA+B,EAClD,sBAAsB,EACtB,GAAG,GAAG,IAAI,kBAAkB,EAAE,EAC9B,WAAW,EACX,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,UAAU,CAAC;QAEf,IAAI,CAAC,iBAAiB,GAAG;YACvB,SAAS;YACT,aAAa;YACb,kBAAkB;YAClB,GAAG;YACH,UAAU;SACX,CAAC;QACF,IAAI,CAAC,aAAa,GAAG;YACnB,SAAS;YACT,mBAAmB;YACnB,GAAG;YACH,UAAU;SACX,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,CAAC;QAC5D,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAAC;YAChD,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,IAAI,CAAC,WAAW,EAAE;SACtB,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,OAAkC,EAClC,OAAqC;QAErC,OAAO,MAAM,IAAI,6BAA6B,CAC5C,IAAI,CAAC,iBAAiB,CACvB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAAC;YAChD,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,IAAI,CAAC,WAAW,EAAE;SACtB,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAC/C,IAAI,CAAC,iBAAiB,CACvB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,OAAiC,EACjC,OAAqC;QAErC,OAAO,MAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACtE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,OAAiC,EACjC,OAAqC;QAErC,OAAO,MAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACtE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,WAAW;QAOjB,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;SACtD,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"sim-cloudfront-commands.js","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAK7C,OAAO,EACL,kBAAkB,GAEnB,MAAM,kDAAkD,CAAC;AAK1D,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAKhH,OAAO,EACL,4BAA4B,GAE7B,MAAM,sDAAsD,CAAC;AAK9D,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAKhH,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AAKpG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wDAAwD,CAAC;AAKvG,OAAO,EAAE,gCAAgC,EAAE,MAAM,8DAA8D,CAAC;AAMhH,OAAO,EACL,+BAA+B,GAEhC,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAC9F,OAAO,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAClG,OAAO,EAAE,kCAAkC,EAAE,MAAM,sDAAsD,CAAC;AAC1G,OAAO,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AAwDpF;;;;;;;GAOG;AACH,MAAM,OAAO,qBAAqB;IAChC;;OAEG;IACa,cAAc,CAA6B;IAE3D;;OAEG;IACa,gBAAgB,CAAgC;IAE/C,iBAAiB,CAAiC;IAClD,aAAa,CAA6B;IAC1C,gBAAgB,CAAgC;IAChD,sBAAsB,CAEzB;IACG,WAAW,CAA6B;IACxC,oBAAoB,CAA2C;IAC/D,uBAAuB,CAA6C;IAErF,YAAY,UAA2C;QACrD,MAAM,EACJ,SAAS,EACT,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,EAChD,gBAAgB,GAAG,+BAA+B,EAClD,sBAAsB,EACtB,GAAG,GAAG,IAAI,kBAAkB,EAAE,EAC9B,WAAW,EACX,UAAU,GAAG,IAAI,eAAe,EAAE,GACnC,GAAG,UAAU,CAAC;QAEf,IAAI,CAAC,iBAAiB,GAAG;YACvB,SAAS;YACT,aAAa;YACb,kBAAkB;YAClB,GAAG;YACH,UAAU;SACX,CAAC;QACF,IAAI,CAAC,aAAa,GAAG;YACnB,SAAS;YACT,mBAAmB;YACnB,GAAG;YACH,UAAU;SACX,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,CAAC;QAC5D,IAAI,CAAC,uBAAuB,GAAG,UAAU,CAAC,uBAAuB,CAAC;QAClE,MAAM,mBAAmB,GAAG,IAAI,wBAAwB,CAAC;YACvD,SAAS;YACT,MAAM,EAAE,IAAI,kCAAkC,EAAE;YAChD,GAAG;YACH,UAAU;SACX,CAAC,CAAC;QAEH,sEAAsE;QACtE,oEAAoE;QACpE,IAAI,CAAC,cAAc,GAAG,IAAI,0BAA0B,CAAC,mBAAmB,CAAC,CAAC;QAC1E,IAAI,CAAC,gBAAgB,GAAG,IAAI,6BAA6B,CACvD,mBAAmB,CACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAAC;YAChD,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,IAAI,CAAC,WAAW,EAAE;SACtB,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,OAAkC,EAClC,OAAqC;QAErC,OAAO,MAAM,IAAI,6BAA6B,CAC5C,IAAI,CAAC,iBAAiB,CACvB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAAC;YAChD,GAAG,IAAI,CAAC,iBAAiB;YACzB,GAAG,IAAI,CAAC,WAAW,EAAE;SACtB,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CACtB,OAAqC,EACrC,OAAqC;QAErC,OAAO,MAAM,IAAI,gCAAgC,CAC/C,IAAI,CAAC,iBAAiB,CACvB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,OAAiC,EACjC,OAAqC;QAErC,OAAO,MAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACtE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc,CAClB,OAAiC,EACjC,OAAqC;QAErC,OAAO,MAAM,IAAI,4BAA4B,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CACtE,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,WAAW;QAOjB,OAAO;YACL,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;YACnD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;SACtD,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,58 @@
1
+ import type { SimSdkCommandRouter } from "../../sdk/router/sim-sdk-command-router.type.js";
2
+ import type { SimAwsCaller } from "../aws/caller/sim-aws-caller.js";
3
+ import type { SimCfKeyValueStoreWriteOutput, SimKvsDeleteKeyCommand, SimKvsDescribeKeyValueStoreCommand, SimKvsDescribeKeyValueStoreCommandOutput, SimKvsGetKeyCommand, SimKvsGetKeyCommandOutput, SimKvsListKeysCommand, SimKvsListKeysCommandOutput, SimKvsPutKeyCommand, SimKvsUpdateKeysCommand } from "./command/key-value-store-data/sim-cf-key-value-store-data-command.types.js";
4
+ import type { SimCfKeyValueStoreAccess } from "./key-value-store/sim-cf-key-value-store-access.js";
5
+ /**
6
+ * Options carried by any simulated key value store data request.
7
+ */
8
+ export interface SimCfKeyValueStoreRequestOptions {
9
+ readonly caller?: SimAwsCaller;
10
+ }
11
+ /**
12
+ * Simulated CloudFront key value store data API.
13
+ *
14
+ * This is a second API over one simulated CloudFront's stores rather than a
15
+ * service of its own, which is what AWS has too: the stores here are the ones
16
+ * this Account's CloudFront created, and the resource is owned by the
17
+ * CloudFront client while the data is written through this one.
18
+ *
19
+ * It exists separately because the AWS SDK splits it that way. Application code
20
+ * and deploy scripts that populate a store import
21
+ * `@aws-sdk/client-cloudfront-keyvaluestore`, so a test exercising that code
22
+ * needs the same split rather than the writes hanging off `cloudFront()`.
23
+ */
24
+ export declare class SimCloudFrontKeyValueStoreApi {
25
+ private readonly reads;
26
+ private readonly writes;
27
+ private readonly sdkRouter;
28
+ constructor(access: SimCfKeyValueStoreAccess);
29
+ /**
30
+ * Handle a DescribeKeyValueStore Command from the key value store SDK.
31
+ */
32
+ describeKeyValueStore(command: SimKvsDescribeKeyValueStoreCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimKvsDescribeKeyValueStoreCommandOutput>;
33
+ /**
34
+ * Handle a GetKey Command from the SDK.
35
+ */
36
+ getKey(command: SimKvsGetKeyCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimKvsGetKeyCommandOutput>;
37
+ /**
38
+ * Handle a ListKeys Command from the SDK.
39
+ */
40
+ listKeys(command: SimKvsListKeysCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimKvsListKeysCommandOutput>;
41
+ /**
42
+ * Handle a PutKey Command from the SDK.
43
+ */
44
+ putKey(command: SimKvsPutKeyCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimCfKeyValueStoreWriteOutput>;
45
+ /**
46
+ * Handle a DeleteKey Command from the SDK.
47
+ */
48
+ deleteKey(command: SimKvsDeleteKeyCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimCfKeyValueStoreWriteOutput>;
49
+ /**
50
+ * Handle an UpdateKeys Command from the SDK.
51
+ */
52
+ updateKeys(command: SimKvsUpdateKeysCommand, options?: SimCfKeyValueStoreRequestOptions): Promise<SimCfKeyValueStoreWriteOutput>;
53
+ /**
54
+ * Get this service's SDK Command router for SDK client interception.
55
+ */
56
+ sdkCommandRouter(): SimSdkCommandRouter;
57
+ }
58
+ //# sourceMappingURL=sim-cloudfront-key-value-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cloudfront-key-value-store.d.ts","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-key-value-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAGpE,OAAO,KAAK,EACV,6BAA6B,EAC7B,sBAAsB,EACtB,kCAAkC,EAClC,wCAAwC,EACxC,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,6EAA6E,CAAC;AACrF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAGnG;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAExB;IAEF,YAAY,MAAM,EAAE,wBAAwB,EAG3C;IAED;;OAEG;IACG,qBAAqB,CACzB,OAAO,EAAE,kCAAkC,EAC3C,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,wCAAwC,CAAC,CAEnD;IAED;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,yBAAyB,CAAC,CAEpC;IAED;;OAEG;IACG,QAAQ,CACZ,OAAO,EAAE,qBAAqB,EAC9B,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,2BAA2B,CAAC,CAEtC;IAED;;OAEG;IACG,MAAM,CACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,6BAA6B,CAAC,CAExC;IAED;;OAEG;IACG,SAAS,CACb,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,6BAA6B,CAAC,CAExC;IAED;;OAEG;IACG,UAAU,CACd,OAAO,EAAE,uBAAuB,EAChC,OAAO,CAAC,EAAE,gCAAgC,GACzC,OAAO,CAAC,6BAA6B,CAAC,CAExC;IAED;;OAEG;IACH,gBAAgB,IAAI,mBAAmB,CAEtC;CACF"}
@@ -0,0 +1,68 @@
1
+ import { SimKvsKeyReads } from "./command/key-value-store-data/sim-kvs-key-reads.js";
2
+ import { SimKvsKeyWrites } from "./command/key-value-store-data/sim-kvs-key-writes.js";
3
+ import { SimCloudFrontKeyValueStoreSdkCommandRouter } from "./sdk/sim-cf-key-value-store-sdk-command-router.js";
4
+ /**
5
+ * Simulated CloudFront key value store data API.
6
+ *
7
+ * This is a second API over one simulated CloudFront's stores rather than a
8
+ * service of its own, which is what AWS has too: the stores here are the ones
9
+ * this Account's CloudFront created, and the resource is owned by the
10
+ * CloudFront client while the data is written through this one.
11
+ *
12
+ * It exists separately because the AWS SDK splits it that way. Application code
13
+ * and deploy scripts that populate a store import
14
+ * `@aws-sdk/client-cloudfront-keyvaluestore`, so a test exercising that code
15
+ * needs the same split rather than the writes hanging off `cloudFront()`.
16
+ */
17
+ export class SimCloudFrontKeyValueStoreApi {
18
+ reads;
19
+ writes;
20
+ sdkRouter = new SimCloudFrontKeyValueStoreSdkCommandRouter(this);
21
+ constructor(access) {
22
+ this.reads = new SimKvsKeyReads(access);
23
+ this.writes = new SimKvsKeyWrites(access);
24
+ }
25
+ /**
26
+ * Handle a DescribeKeyValueStore Command from the key value store SDK.
27
+ */
28
+ async describeKeyValueStore(command, options) {
29
+ return await this.reads.describeKeyValueStore(command, options);
30
+ }
31
+ /**
32
+ * Handle a GetKey Command from the SDK.
33
+ */
34
+ async getKey(command, options) {
35
+ return await this.reads.getKey(command, options);
36
+ }
37
+ /**
38
+ * Handle a ListKeys Command from the SDK.
39
+ */
40
+ async listKeys(command, options) {
41
+ return await this.reads.listKeys(command, options);
42
+ }
43
+ /**
44
+ * Handle a PutKey Command from the SDK.
45
+ */
46
+ async putKey(command, options) {
47
+ return await this.writes.putKey(command, options);
48
+ }
49
+ /**
50
+ * Handle a DeleteKey Command from the SDK.
51
+ */
52
+ async deleteKey(command, options) {
53
+ return await this.writes.deleteKey(command, options);
54
+ }
55
+ /**
56
+ * Handle an UpdateKeys Command from the SDK.
57
+ */
58
+ async updateKeys(command, options) {
59
+ return await this.writes.updateKeys(command, options);
60
+ }
61
+ /**
62
+ * Get this service's SDK Command router for SDK client interception.
63
+ */
64
+ sdkCommandRouter() {
65
+ return this.sdkRouter;
66
+ }
67
+ }
68
+ //# sourceMappingURL=sim-cloudfront-key-value-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sim-cloudfront-key-value-store.js","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront-key-value-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AAcvF,OAAO,EAAE,0CAA0C,EAAE,MAAM,oDAAoD,CAAC;AAShH;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,6BAA6B;IACvB,KAAK,CAAiB;IACtB,MAAM,CAAkB;IACxB,SAAS,GAAG,IAAI,0CAA0C,CACzE,IAAI,CACL,CAAC;IAEF,YAAY,MAAgC;QAC1C,IAAI,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,OAA2C,EAC3C,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAA4B,EAC5B,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CACZ,OAA8B,EAC9B,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,OAA4B,EAC5B,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CACb,OAA+B,EAC/B,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CACd,OAAgC,EAChC,OAA0C;QAE1C,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACH,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;CACF"}
@@ -11,6 +11,8 @@ import type { SimUpdateDistributionCommand, SimUpdateDistributionCommandOutput }
11
11
  import type { SimCloudFrontDistribution, SimCloudFrontDistributionId } from "./distribution/sim-cloudfront-distribution.js";
12
12
  import type { SimCloudFrontResponseHeadersPolicy, SimCloudFrontResponseHeadersPolicyId } from "./response-headers-policy/sim-cf-response-headers-policy.js";
13
13
  import type { SimCloudFrontOriginAccessControl, SimCloudFrontOriginAccessControlId } from "./origin-access-control/sim-cf-origin-access-control.js";
14
+ import type { SimCfKeyValueStoreCommands } from "./key-value-store/sim-cf-key-value-store-commands.js";
15
+ import type { SimCloudFrontKeyValueStoreApi } from "./sim-cloudfront-key-value-store.js";
14
16
  import { type SimCloudFrontProperties, type SimCloudFrontRequestOptions } from "./sim-cloudfront-commands.js";
15
17
  export type { SimCloudFrontProperties, SimCloudFrontRequestOptions, } from "./sim-cloudfront-commands.js";
16
18
  /**
@@ -26,6 +28,17 @@ export declare class SimCloudFront {
26
28
  private readonly cfnFactory;
27
29
  private readonly sdkRouter;
28
30
  constructor(properties?: SimCloudFrontProperties);
31
+ /**
32
+ * The key value store commands, and the stores they work on.
33
+ */
34
+ keyValueStores(): SimCfKeyValueStoreCommands;
35
+ /**
36
+ * The key value store data API over this sim CloudFront's stores.
37
+ *
38
+ * This is what the separate `@aws-sdk/client-cloudfront-keyvaluestore`
39
+ * client talks to, reached from SimAws as `cloudFrontKeyValueStore()`.
40
+ */
41
+ keyValueStoreApi(): SimCloudFrontKeyValueStoreApi;
29
42
  /**
30
43
  * Get the simulated Distributions owned by this sim CloudFront service.
31
44
  */
@@ -1 +1 @@
1
- {"version":3,"file":"sim-cloudfront.d.ts","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sim-cloudfront.d.ts","sourceRoot":"","sources":["../../../src/service/cloudfront/sim-cloudfront.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,21 @@ export class SimCloudFront {
29
29
  responseHeadersPolicies: this.responseHeadersPolicies,
30
30
  });
31
31
  }
32
+ /**
33
+ * The key value store commands, and the stores they work on.
34
+ */
35
+ keyValueStores() {
36
+ return this.commands.keyValueStores;
37
+ }
38
+ /**
39
+ * The key value store data API over this sim CloudFront's stores.
40
+ *
41
+ * This is what the separate `@aws-sdk/client-cloudfront-keyvaluestore`
42
+ * client talks to, reached from SimAws as `cloudFrontKeyValueStore()`.
43
+ */
44
+ keyValueStoreApi() {
45
+ return this.commands.keyValueStoreApi;
46
+ }
32
47
  /**
33
48
  * Get the simulated Distributions owned by this sim CloudFront service.
34
49
  */