@mpgd/platform 0.18.0 → 0.20.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.
@@ -0,0 +1,3089 @@
1
+ import * as _isTypeUint32_1 from "typia/lib/internal/_isTypeUint32";
2
+ import * as _isFormatDateTime_1 from "typia/lib/internal/_isFormatDateTime";
3
+ import * as _assertGuard_1 from "typia/lib/internal/_assertGuard";
4
+ import * as _accessExpressionAsString_1 from "typia/lib/internal/_accessExpressionAsString";
5
+ const __typia_transform__accessExpressionAsString = _accessExpressionAsString_1._accessExpressionAsString;
6
+ import typia from 'typia';
7
+ const assertCommerceConformanceVectorShape = (() => {
8
+ const _iv0 = new Set(["ACCOUNT_BINDING_REQUIRED", "ACTION_REQUIRED", "ALREADY_OWNED", "CONFIGURATION_REQUIRED", "INSUFFICIENT_BALANCE", "INVALID_RESPONSE", "IN_PROGRESS", "ITEM_UNAVAILABLE", "NETWORK", "NOT_PREPARED", "OUTCOME_UNKNOWN", "STORE_UNAVAILABLE", "UNKNOWN", "USER_CANCELLED"]);
9
+ const _iv1 = new Set(["cancelled", "failed", "finished", "finishing", "granted", "launched", "pending", "purchased", "rejected", "requested", "revoked", "verifying"]);
10
+ const _iv2 = new Set(["ACCOUNT_BINDING_REQUIRED", "ACTION_REQUIRED", "ALREADY_OWNED", "CONFIGURATION_REQUIRED", "INSUFFICIENT_BALANCE", "INVALID_RESPONSE", "IN_PROGRESS", "ITEM_UNAVAILABLE", "NETWORK", "NOT_PREPARED", "OUTCOME_UNKNOWN", "STORE_UNAVAILABLE", "UNKNOWN", "USER_CANCELLED", "finished"]);
11
+ const _ae0 = "({ readonly actor: \"backend\"; readonly action: \"push\"; readonly transactionId: NonEmptyString; readonly entryId: NonEmptyString; readonly logicalId: CommerceLogicalProductId; } | { readonly actor: \"backend\"; readonly action: \"queueVerify\"; readonly decision: CommerceConformanceVerifyDecision; } | { readonly actor: \"backend\"; readonly action: \"revoke\"; readonly ledgerEntryId: NonEmptyString; readonly entryId: NonEmptyString; readonly reason: NonEmptyString; } | { readonly actor: \"clock\"; readonly action: \"set\"; readonly at: IsoTimestamp; } | { readonly actor: \"game\"; readonly action: \"fetchProducts\"; readonly input?: { readonly logicalIds?: readonly CommerceLogicalProductId[]; readonly type?: \"all\" | \"in-app\" | \"subscription\"; }; readonly returns?: CommerceConformanceFetchProductsExpectation; } | { readonly actor: \"game\"; readonly action: \"requestPurchase\"; readonly input: { readonly logicalId: CommerceLogicalProductId; readonly idempotencyKey: NonEmptyString; readonly source?: PurchaseSource; readonly offerId?: NonEmptyString; readonly quantity?: number & ... 1 more ... & Minimum<...>; }; readonly returns?:... | { readonly actor: \"runtime\"; readonly action: \"reconcile\" | \"start\" | \"stop\"; } | { readonly actor: \"store\"; readonly action: \"complete\" | \"update\"; readonly purchase: CommerceConformancePurchaseFixture; } | { readonly actor: \"store\"; readonly action: \"error\"; readonly logicalId?: CommerceLogicalProductId; readonly error: CommerceConformanceErrorFixture; } | { readonly actor: \"store\"; readonly action: \"queueFinish\"; readonly result: CommerceConformanceFinishResultFixture; } | { readonly actor: \"store\"; readonly action: \"queueRequest\"; readonly result: CommerceConformanceRequestResultFixture; } | { readonly actor: \"wallet\"; readonly action: \"creditFromGrant\"; readonly lot: CommerceConformanceLotFixture; } | { readonly actor: \"wallet\"; readonly action: \"renewDue\"; } | { readonly actor: \"wallet\"; readonly action: \"spend\"; readonly input: CommerceConformanceSpendInput; readonly returns?: CommerceConformanceSpendExpectation; })";
12
+ const _ae1 = "{ readonly logicalId: CommerceLogicalProductId; readonly idempotencyKey: NonEmptyString; readonly source?: PurchaseSource; readonly offerId?: NonEmptyString; readonly quantity?: number & ... 1 more ... & Minimum<...>; }";
13
+ const _av0 = new Set(["ACCOUNT_BINDING_REQUIRED", "ACTION_REQUIRED", "ALREADY_OWNED", "CONFIGURATION_REQUIRED", "INSUFFICIENT_BALANCE", "INVALID_RESPONSE", "IN_PROGRESS", "ITEM_UNAVAILABLE", "NETWORK", "NOT_PREPARED", "OUTCOME_UNKNOWN", "STORE_UNAVAILABLE", "UNKNOWN", "USER_CANCELLED"]);
14
+ const _ae2 = "(\"ACCOUNT_BINDING_REQUIRED\" | \"ACTION_REQUIRED\" | \"ALREADY_OWNED\" | \"CONFIGURATION_REQUIRED\" | \"INSUFFICIENT_BALANCE\" | \"INVALID_RESPONSE\" | \"IN_PROGRESS\" | \"ITEM_UNAVAILABLE\" | \"NETWORK\" | \"NOT_PREPARED\" | \"OUTCOME_UNKNOWN\" | \"STORE_UNAVAILABLE\" | \"UNKNOWN\" | \"USER_CANCELLED\")";
15
+ const _ae3 = "({ readonly outcome: \"cancelled\" | \"failed\"; readonly error: CommerceConformanceErrorFixture; } | { readonly outcome: \"launched\"; } | { readonly outcome: \"purchased\"; readonly purchase: CommerceConformancePurchaseFixture; })";
16
+ const _av1 = new Set(["cancelled", "failed", "finished", "finishing", "granted", "launched", "pending", "purchased", "rejected", "requested", "revoked", "verifying"]);
17
+ const _ae4 = "(\"cancelled\" | \"failed\" | \"finished\" | \"finishing\" | \"granted\" | \"launched\" | \"pending\" | \"purchased\" | \"rejected\" | \"requested\" | \"revoked\" | \"verifying\")";
18
+ const _av2 = new Set(["ACCOUNT_BINDING_REQUIRED", "ACTION_REQUIRED", "ALREADY_OWNED", "CONFIGURATION_REQUIRED", "INSUFFICIENT_BALANCE", "INVALID_RESPONSE", "IN_PROGRESS", "ITEM_UNAVAILABLE", "NETWORK", "NOT_PREPARED", "OUTCOME_UNKNOWN", "STORE_UNAVAILABLE", "UNKNOWN", "USER_CANCELLED", "finished"]);
19
+ const _ae5 = "(\"ACCOUNT_BINDING_REQUIRED\" | \"ACTION_REQUIRED\" | \"ALREADY_OWNED\" | \"CONFIGURATION_REQUIRED\" | \"INSUFFICIENT_BALANCE\" | \"INVALID_RESPONSE\" | \"IN_PROGRESS\" | \"ITEM_UNAVAILABLE\" | \"NETWORK\" | \"NOT_PREPARED\" | \"OUTCOME_UNKNOWN\" | \"STORE_UNAVAILABLE\" | \"UNKNOWN\" | \"USER_CANCELLED\" | \"finished\")";
20
+ const _ae6 = "(\"ACCOUNT_BINDING_REQUIRED\" | \"ACTION_REQUIRED\" | \"ALREADY_OWNED\" | \"CONFIGURATION_REQUIRED\" | \"INSUFFICIENT_BALANCE\" | \"INVALID_RESPONSE\" | \"IN_PROGRESS\" | \"ITEM_UNAVAILABLE\" | \"NETWORK\" | \"NOT_PREPARED\" | \"OUTCOME_UNKNOWN\" | \"STORE_UNAVAILABLE\" | \"UNKNOWN\" | \"USER_CANCELLED\" | undefined)";
21
+ const _ae7 = "({ readonly actor: \"runtime\"; readonly action: \"reconcile\" | \"start\" | \"stop\"; } | { readonly actor: \"game\"; readonly action: \"fetchProducts\"; readonly input?: { readonly logicalIds?: readonly CommerceLogicalProductId[]; readonly type?: \"all\" | \"in-app\" | \"subscription\"; }; readonly returns?: CommerceConformanceFetchProductsExpectation; } | { readonly actor: \"game\"; readonly action: \"requestPurchase\"; readonly input: { readonly logicalId: CommerceLogicalProductId; readonly idempotencyKey: NonEmptyString; readonly source?: PurchaseSource; readonly offerId?: NonEmptyString; readonly quantity?: number & ... 1 more ... & Minimum<...>; }; readonly returns?:... | { readonly actor: \"store\"; readonly action: \"complete\" | \"update\"; readonly purchase: CommerceConformancePurchaseFixture; } | { readonly actor: \"store\"; readonly action: \"error\"; readonly logicalId?: CommerceLogicalProductId; readonly error: CommerceConformanceErrorFixture; } | { readonly actor: \"store\"; readonly action: \"queueFinish\"; readonly result: CommerceConformanceFinishResultFixture; } | { readonly actor: \"store\"; readonly action: \"queueRequest\"; readonly result: CommerceConformanceRequestResultFixture; } | { readonly actor: \"backend\"; readonly action: \"queueVerify\"; readonly decision: CommerceConformanceVerifyDecision; } | { readonly actor: \"backend\"; readonly action: \"push\"; readonly transactionId: NonEmptyString; readonly entryId: NonEmptyString; readonly logicalId: CommerceLogicalProductId; } | { readonly actor: \"backend\"; readonly action: \"revoke\"; readonly ledgerEntryId: NonEmptyString; readonly entryId: NonEmptyString; readonly reason: NonEmptyString; } | { readonly actor: \"wallet\"; readonly action: \"creditFromGrant\"; readonly lot: CommerceConformanceLotFixture; } | { readonly actor: \"wallet\"; readonly action: \"spend\"; readonly input: CommerceConformanceSpendInput; readonly returns?: CommerceConformanceSpendExpectation; } | { readonly actor: \"wallet\"; readonly action: \"renewDue\"; } | { readonly actor: \"clock\"; readonly action: \"set\"; readonly at: IsoTimestamp; })";
22
+ const _ae8 = "({ readonly outcome: \"launched\"; } | { readonly outcome: \"purchased\"; readonly purchase: CommerceConformancePurchaseFixture; } | { readonly outcome: \"cancelled\" | \"failed\"; readonly error: CommerceConformanceErrorFixture; })";
23
+ const _ao0 = (input, _path, _exceptionable = true) => ("string" === typeof input.vector && (RegExp("^[a-z0-9]+(?:-[a-z0-9]+)*$").test(input.vector) || _assertGuard_1._assertGuard(_exceptionable, {
24
+ method: "typia.createAssertEquals",
25
+ path: _path + ".vector",
26
+ expected: "string & Pattern<\"^[a-z0-9]+(?:-[a-z0-9]+)*$\">",
27
+ value: input.vector
28
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
29
+ method: "typia.createAssertEquals",
30
+ path: _path + ".vector",
31
+ expected: "(string & Pattern<\"^[a-z0-9]+(?:-[a-z0-9]+)*$\">)",
32
+ value: input.vector
33
+ }, _errorFactory)) && ("string" === typeof input.protocol && (1 <= input.protocol.length || _assertGuard_1._assertGuard(_exceptionable, {
34
+ method: "typia.createAssertEquals",
35
+ path: _path + ".protocol",
36
+ expected: "string & MinLength<1>",
37
+ value: input.protocol
38
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
39
+ method: "typia.createAssertEquals",
40
+ path: _path + ".protocol",
41
+ expected: "(string & MinLength<1>)",
42
+ value: input.protocol
43
+ }, _errorFactory)) && ("string" === typeof input.summary && (1 <= input.summary.length || _assertGuard_1._assertGuard(_exceptionable, {
44
+ method: "typia.createAssertEquals",
45
+ path: _path + ".summary",
46
+ expected: "string & MinLength<1>",
47
+ value: input.summary
48
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
49
+ method: "typia.createAssertEquals",
50
+ path: _path + ".summary",
51
+ expected: "(string & MinLength<1>)",
52
+ value: input.summary
53
+ }, _errorFactory)) && (("object" === typeof input.profile && null !== input.profile || _assertGuard_1._assertGuard(_exceptionable, {
54
+ method: "typia.createAssertEquals",
55
+ path: _path + ".profile",
56
+ expected: "CommerceConformanceProfile",
57
+ value: input.profile
58
+ }, _errorFactory)) && _ao1(input.profile, _path + ".profile", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
59
+ method: "typia.createAssertEquals",
60
+ path: _path + ".profile",
61
+ expected: "CommerceConformanceProfile",
62
+ value: input.profile
63
+ }, _errorFactory)) && (undefined === input.catalog || (Array.isArray(input.catalog) || _assertGuard_1._assertGuard(_exceptionable, {
64
+ method: "typia.createAssertEquals",
65
+ path: _path + ".catalog",
66
+ expected: "(ReadonlyArray<CommerceConformanceCatalogEntry> | undefined)",
67
+ value: input.catalog
68
+ }, _errorFactory)) && input.catalog.every((elem, _index17) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
69
+ method: "typia.createAssertEquals",
70
+ path: _path + ".catalog[" + _index17 + "]",
71
+ expected: "CommerceConformanceCatalogEntry",
72
+ value: elem
73
+ }, _errorFactory)) && _ao5(elem, _path + ".catalog[" + _index17 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
74
+ method: "typia.createAssertEquals",
75
+ path: _path + ".catalog[" + _index17 + "]",
76
+ expected: "CommerceConformanceCatalogEntry",
77
+ value: elem
78
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
79
+ method: "typia.createAssertEquals",
80
+ path: _path + ".catalog",
81
+ expected: "(ReadonlyArray<CommerceConformanceCatalogEntry> | undefined)",
82
+ value: input.catalog
83
+ }, _errorFactory)) && (undefined === input.wallet || ("object" === typeof input.wallet && null !== input.wallet || _assertGuard_1._assertGuard(_exceptionable, {
84
+ method: "typia.createAssertEquals",
85
+ path: _path + ".wallet",
86
+ expected: "(CommerceConformanceWallet | undefined)",
87
+ value: input.wallet
88
+ }, _errorFactory)) && _ao8(input.wallet, _path + ".wallet", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
89
+ method: "typia.createAssertEquals",
90
+ path: _path + ".wallet",
91
+ expected: "(CommerceConformanceWallet | undefined)",
92
+ value: input.wallet
93
+ }, _errorFactory)) && ((Array.isArray(input.steps) || _assertGuard_1._assertGuard(_exceptionable, {
94
+ method: "typia.createAssertEquals",
95
+ path: _path + ".steps",
96
+ expected: "(ReadonlyArray<CommerceConformanceStep> & MinItems<1>)",
97
+ value: input.steps
98
+ }, _errorFactory)) && ((1 <= input.steps.length || _assertGuard_1._assertGuard(_exceptionable, {
99
+ method: "typia.createAssertEquals",
100
+ path: _path + ".steps",
101
+ expected: "Array<> & MinItems<1>",
102
+ value: input.steps
103
+ }, _errorFactory)) && input.steps.every((elem, _index18) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
104
+ method: "typia.createAssertEquals",
105
+ path: _path + ".steps[" + _index18 + "]",
106
+ expected: _ae0,
107
+ value: elem
108
+ }, _errorFactory)) && _au0(elem, _path + ".steps[" + _index18 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
109
+ method: "typia.createAssertEquals",
110
+ path: _path + ".steps[" + _index18 + "]",
111
+ expected: _ae0,
112
+ value: elem
113
+ }, _errorFactory))) || _assertGuard_1._assertGuard(_exceptionable, {
114
+ method: "typia.createAssertEquals",
115
+ path: _path + ".steps",
116
+ expected: "(ReadonlyArray<CommerceConformanceStep> & MinItems<1>)",
117
+ value: input.steps
118
+ }, _errorFactory)) && (("object" === typeof input.expect && null !== input.expect && false === Array.isArray(input.expect) || _assertGuard_1._assertGuard(_exceptionable, {
119
+ method: "typia.createAssertEquals",
120
+ path: _path + ".expect",
121
+ expected: "CommerceConformanceExpectation",
122
+ value: input.expect
123
+ }, _errorFactory)) && _ao42(input.expect, _path + ".expect", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
124
+ method: "typia.createAssertEquals",
125
+ path: _path + ".expect",
126
+ expected: "CommerceConformanceExpectation",
127
+ value: input.expect
128
+ }, _errorFactory)) && (6 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
129
+ if (["vector", "protocol", "summary", "profile", "catalog", "wallet", "steps", "expect"].some(prop => key === prop))
130
+ return true;
131
+ const value = input[key];
132
+ if (undefined === value)
133
+ return true;
134
+ return _assertGuard_1._assertGuard(_exceptionable, {
135
+ method: "typia.createAssertEquals",
136
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
137
+ expected: "undefined",
138
+ value: value
139
+ }, _errorFactory);
140
+ })));
141
+ const _ao1 = (input, _path, _exceptionable = true) => ("string" === typeof input.store && (1 <= input.store.length || _assertGuard_1._assertGuard(_exceptionable, {
142
+ method: "typia.createAssertEquals",
143
+ path: _path + ".store",
144
+ expected: "string & MinLength<1>",
145
+ value: input.store
146
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
147
+ method: "typia.createAssertEquals",
148
+ path: _path + ".store",
149
+ expected: "(string & MinLength<1>)",
150
+ value: input.store
151
+ }, _errorFactory)) && (undefined === input.purchase || ("object" === typeof input.purchase && null !== input.purchase || _assertGuard_1._assertGuard(_exceptionable, {
152
+ method: "typia.createAssertEquals",
153
+ path: _path + ".purchase",
154
+ expected: "(CommercePurchaseCapabilities | undefined)",
155
+ value: input.purchase
156
+ }, _errorFactory)) && _ao2(input.purchase, _path + ".purchase", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
157
+ method: "typia.createAssertEquals",
158
+ path: _path + ".purchase",
159
+ expected: "(CommercePurchaseCapabilities | undefined)",
160
+ value: input.purchase
161
+ }, _errorFactory)) && (undefined === input.lifecycle || ("object" === typeof input.lifecycle && null !== input.lifecycle || _assertGuard_1._assertGuard(_exceptionable, {
162
+ method: "typia.createAssertEquals",
163
+ path: _path + ".lifecycle",
164
+ expected: "(CommerceLifecycleCapabilities | undefined)",
165
+ value: input.lifecycle
166
+ }, _errorFactory)) && _ao3(input.lifecycle, _path + ".lifecycle", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
167
+ method: "typia.createAssertEquals",
168
+ path: _path + ".lifecycle",
169
+ expected: "(CommerceLifecycleCapabilities | undefined)",
170
+ value: input.lifecycle
171
+ }, _errorFactory)) && (undefined === input.authority || ("object" === typeof input.authority && null !== input.authority || _assertGuard_1._assertGuard(_exceptionable, {
172
+ method: "typia.createAssertEquals",
173
+ path: _path + ".authority",
174
+ expected: "(CommerceAuthorityCapabilities | undefined)",
175
+ value: input.authority
176
+ }, _errorFactory)) && _ao4(input.authority, _path + ".authority", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
177
+ method: "typia.createAssertEquals",
178
+ path: _path + ".authority",
179
+ expected: "(CommerceAuthorityCapabilities | undefined)",
180
+ value: input.authority
181
+ }, _errorFactory)) && (undefined === input.adaptive || "boolean" === typeof input.adaptive || _assertGuard_1._assertGuard(_exceptionable, {
182
+ method: "typia.createAssertEquals",
183
+ path: _path + ".adaptive",
184
+ expected: "(boolean | undefined)",
185
+ value: input.adaptive
186
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
187
+ if (["store", "purchase", "lifecycle", "authority", "adaptive"].some(prop => key === prop))
188
+ return true;
189
+ const value = input[key];
190
+ if (undefined === value)
191
+ return true;
192
+ return _assertGuard_1._assertGuard(_exceptionable, {
193
+ method: "typia.createAssertEquals",
194
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
195
+ expected: "undefined",
196
+ value: value
197
+ }, _errorFactory);
198
+ })));
199
+ const _ao10 = (input, _path, _exceptionable = true) => ("game" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
200
+ method: "typia.createAssertEquals",
201
+ path: _path + ".actor",
202
+ expected: "\"game\"",
203
+ value: input.actor
204
+ }, _errorFactory)) && ("requestPurchase" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
205
+ method: "typia.createAssertEquals",
206
+ path: _path + ".action",
207
+ expected: "\"requestPurchase\"",
208
+ value: input.action
209
+ }, _errorFactory)) && (("object" === typeof input.input && null !== input.input || _assertGuard_1._assertGuard(_exceptionable, {
210
+ method: "typia.createAssertEquals",
211
+ path: _path + ".input",
212
+ expected: _ae1,
213
+ value: input.input
214
+ }, _errorFactory)) && _ao11(input.input, _path + ".input", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
215
+ method: "typia.createAssertEquals",
216
+ path: _path + ".input",
217
+ expected: _ae1,
218
+ value: input.input
219
+ }, _errorFactory)) && (undefined === input.returns || ("object" === typeof input.returns && null !== input.returns || _assertGuard_1._assertGuard(_exceptionable, {
220
+ method: "typia.createAssertEquals",
221
+ path: _path + ".returns",
222
+ expected: "(CommerceConformanceRequestPurchaseExpectation | undefined)",
223
+ value: input.returns
224
+ }, _errorFactory)) && _ao12(input.returns, _path + ".returns", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
225
+ method: "typia.createAssertEquals",
226
+ path: _path + ".returns",
227
+ expected: "(CommerceConformanceRequestPurchaseExpectation | undefined)",
228
+ value: input.returns
229
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
230
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
231
+ return true;
232
+ const value = input[key];
233
+ if (undefined === value)
234
+ return true;
235
+ return _assertGuard_1._assertGuard(_exceptionable, {
236
+ method: "typia.createAssertEquals",
237
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
238
+ expected: "undefined",
239
+ value: value
240
+ }, _errorFactory);
241
+ })));
242
+ const _ao11 = (input, _path, _exceptionable = true) => ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
243
+ method: "typia.createAssertEquals",
244
+ path: _path + ".logicalId",
245
+ expected: "string & CommerceMinLength<1>",
246
+ value: input.logicalId
247
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
248
+ method: "typia.createAssertEquals",
249
+ path: _path + ".logicalId",
250
+ expected: "(string & CommerceMinLength<1>)",
251
+ value: input.logicalId
252
+ }, _errorFactory)) && ("string" === typeof input.idempotencyKey && (1 <= input.idempotencyKey.length || _assertGuard_1._assertGuard(_exceptionable, {
253
+ method: "typia.createAssertEquals",
254
+ path: _path + ".idempotencyKey",
255
+ expected: "string & MinLength<1>",
256
+ value: input.idempotencyKey
257
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
258
+ method: "typia.createAssertEquals",
259
+ path: _path + ".idempotencyKey",
260
+ expected: "(string & MinLength<1>)",
261
+ value: input.idempotencyKey
262
+ }, _errorFactory)) && (undefined === input.source || "event" === input.source || "result" === input.source || "shop" === input.source || "stage_fail" === input.source || _assertGuard_1._assertGuard(_exceptionable, {
263
+ method: "typia.createAssertEquals",
264
+ path: _path + ".source",
265
+ expected: "(\"event\" | \"result\" | \"shop\" | \"stage_fail\" | undefined)",
266
+ value: input.source
267
+ }, _errorFactory)) && (undefined === input.offerId || "string" === typeof input.offerId && (1 <= input.offerId.length || _assertGuard_1._assertGuard(_exceptionable, {
268
+ method: "typia.createAssertEquals",
269
+ path: _path + ".offerId",
270
+ expected: "string & MinLength<1>",
271
+ value: input.offerId
272
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
273
+ method: "typia.createAssertEquals",
274
+ path: _path + ".offerId",
275
+ expected: "((string & MinLength<1>) | undefined)",
276
+ value: input.offerId
277
+ }, _errorFactory)) && (undefined === input.quantity || "number" === typeof input.quantity && (_isTypeUint32_1._isTypeUint32(input.quantity) || _assertGuard_1._assertGuard(_exceptionable, {
278
+ method: "typia.createAssertEquals",
279
+ path: _path + ".quantity",
280
+ expected: "number & Type<\"uint32\">",
281
+ value: input.quantity
282
+ }, _errorFactory)) && (1 <= input.quantity || _assertGuard_1._assertGuard(_exceptionable, {
283
+ method: "typia.createAssertEquals",
284
+ path: _path + ".quantity",
285
+ expected: "number & Minimum<1>",
286
+ value: input.quantity
287
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
288
+ method: "typia.createAssertEquals",
289
+ path: _path + ".quantity",
290
+ expected: "((number & Type<\"uint32\"> & Minimum<1>) | undefined)",
291
+ value: input.quantity
292
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
293
+ if (["logicalId", "idempotencyKey", "source", "offerId", "quantity"].some(prop => key === prop))
294
+ return true;
295
+ const value = input[key];
296
+ if (undefined === value)
297
+ return true;
298
+ return _assertGuard_1._assertGuard(_exceptionable, {
299
+ method: "typia.createAssertEquals",
300
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
301
+ expected: "undefined",
302
+ value: value
303
+ }, _errorFactory);
304
+ })));
305
+ const _ao12 = (input, _path, _exceptionable = true) => ("cancelled" === input.outcome || "failed" === input.outcome || "launched" === input.outcome || "purchased" === input.outcome || _assertGuard_1._assertGuard(_exceptionable, {
306
+ method: "typia.createAssertEquals",
307
+ path: _path + ".outcome",
308
+ expected: "(\"cancelled\" | \"failed\" | \"launched\" | \"purchased\")",
309
+ value: input.outcome
310
+ }, _errorFactory)) && (undefined === input.error || ("object" === typeof input.error && null !== input.error || _assertGuard_1._assertGuard(_exceptionable, {
311
+ method: "typia.createAssertEquals",
312
+ path: _path + ".error",
313
+ expected: "(CommerceConformanceErrorExpectation | undefined)",
314
+ value: input.error
315
+ }, _errorFactory)) && _ao13(input.error, _path + ".error", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
316
+ method: "typia.createAssertEquals",
317
+ path: _path + ".error",
318
+ expected: "(CommerceConformanceErrorExpectation | undefined)",
319
+ value: input.error
320
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
321
+ if (["outcome", "error"].some(prop => key === prop))
322
+ return true;
323
+ const value = input[key];
324
+ if (undefined === value)
325
+ return true;
326
+ return _assertGuard_1._assertGuard(_exceptionable, {
327
+ method: "typia.createAssertEquals",
328
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
329
+ expected: "undefined",
330
+ value: value
331
+ }, _errorFactory);
332
+ })));
333
+ const _ao13 = (input, _path, _exceptionable = true) => (true === _av0.has(input.code) || _assertGuard_1._assertGuard(_exceptionable, {
334
+ method: "typia.createAssertEquals",
335
+ path: _path + ".code",
336
+ expected: _ae2,
337
+ value: input.code
338
+ }, _errorFactory)) && (undefined === input.retryable || "boolean" === typeof input.retryable || _assertGuard_1._assertGuard(_exceptionable, {
339
+ method: "typia.createAssertEquals",
340
+ path: _path + ".retryable",
341
+ expected: "(boolean | undefined)",
342
+ value: input.retryable
343
+ }, _errorFactory)) && (undefined === input.storeCode || "string" === typeof input.storeCode || _assertGuard_1._assertGuard(_exceptionable, {
344
+ method: "typia.createAssertEquals",
345
+ path: _path + ".storeCode",
346
+ expected: "(string | undefined)",
347
+ value: input.storeCode
348
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
349
+ if (["code", "retryable", "storeCode"].some(prop => key === prop))
350
+ return true;
351
+ const value = input[key];
352
+ if (undefined === value)
353
+ return true;
354
+ return _assertGuard_1._assertGuard(_exceptionable, {
355
+ method: "typia.createAssertEquals",
356
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
357
+ expected: "undefined",
358
+ value: value
359
+ }, _errorFactory);
360
+ })));
361
+ const _ao14 = (input, _path, _exceptionable = true) => ("game" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
362
+ method: "typia.createAssertEquals",
363
+ path: _path + ".actor",
364
+ expected: "\"game\"",
365
+ value: input.actor
366
+ }, _errorFactory)) && ("fetchProducts" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
367
+ method: "typia.createAssertEquals",
368
+ path: _path + ".action",
369
+ expected: "\"fetchProducts\"",
370
+ value: input.action
371
+ }, _errorFactory)) && (undefined === input.input || ("object" === typeof input.input && null !== input.input && false === Array.isArray(input.input) || _assertGuard_1._assertGuard(_exceptionable, {
372
+ method: "typia.createAssertEquals",
373
+ path: _path + ".input",
374
+ expected: "(undefined | { readonly logicalIds?: readonly CommerceLogicalProductId[]; readonly type?: \"all\" | \"in-app\" | \"subscription\"; })",
375
+ value: input.input
376
+ }, _errorFactory)) && _ao15(input.input, _path + ".input", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
377
+ method: "typia.createAssertEquals",
378
+ path: _path + ".input",
379
+ expected: "(undefined | { readonly logicalIds?: readonly CommerceLogicalProductId[]; readonly type?: \"all\" | \"in-app\" | \"subscription\"; })",
380
+ value: input.input
381
+ }, _errorFactory)) && (undefined === input.returns || ("object" === typeof input.returns && null !== input.returns || _assertGuard_1._assertGuard(_exceptionable, {
382
+ method: "typia.createAssertEquals",
383
+ path: _path + ".returns",
384
+ expected: "(CommerceConformanceFetchProductsExpectation | undefined)",
385
+ value: input.returns
386
+ }, _errorFactory)) && _ao16(input.returns, _path + ".returns", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
387
+ method: "typia.createAssertEquals",
388
+ path: _path + ".returns",
389
+ expected: "(CommerceConformanceFetchProductsExpectation | undefined)",
390
+ value: input.returns
391
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
392
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
393
+ return true;
394
+ const value = input[key];
395
+ if (undefined === value)
396
+ return true;
397
+ return _assertGuard_1._assertGuard(_exceptionable, {
398
+ method: "typia.createAssertEquals",
399
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
400
+ expected: "undefined",
401
+ value: value
402
+ }, _errorFactory);
403
+ })));
404
+ const _ao15 = (input, _path, _exceptionable = true) => (undefined === input.logicalIds || (Array.isArray(input.logicalIds) || _assertGuard_1._assertGuard(_exceptionable, {
405
+ method: "typia.createAssertEquals",
406
+ path: _path + ".logicalIds",
407
+ expected: "(ReadonlyArray<CommerceLogicalProductId> | undefined)",
408
+ value: input.logicalIds
409
+ }, _errorFactory)) && input.logicalIds.every((elem, _index20) => "string" === typeof elem && (1 <= elem.length || _assertGuard_1._assertGuard(_exceptionable, {
410
+ method: "typia.createAssertEquals",
411
+ path: _path + ".logicalIds[" + _index20 + "]",
412
+ expected: "string & CommerceMinLength<1>",
413
+ value: elem
414
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
415
+ method: "typia.createAssertEquals",
416
+ path: _path + ".logicalIds[" + _index20 + "]",
417
+ expected: "(string & CommerceMinLength<1>)",
418
+ value: elem
419
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
420
+ method: "typia.createAssertEquals",
421
+ path: _path + ".logicalIds",
422
+ expected: "(ReadonlyArray<CommerceLogicalProductId> | undefined)",
423
+ value: input.logicalIds
424
+ }, _errorFactory)) && (undefined === input.type || "all" === input.type || "in-app" === input.type || "subscription" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
425
+ method: "typia.createAssertEquals",
426
+ path: _path + ".type",
427
+ expected: "(\"all\" | \"in-app\" | \"subscription\" | undefined)",
428
+ value: input.type
429
+ }, _errorFactory)) && (0 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
430
+ if (["logicalIds", "type"].some(prop => key === prop))
431
+ return true;
432
+ const value = input[key];
433
+ if (undefined === value)
434
+ return true;
435
+ return _assertGuard_1._assertGuard(_exceptionable, {
436
+ method: "typia.createAssertEquals",
437
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
438
+ expected: "undefined",
439
+ value: value
440
+ }, _errorFactory);
441
+ })));
442
+ const _ao16 = (input, _path, _exceptionable = true) => ((Array.isArray(input.logicalIds) || _assertGuard_1._assertGuard(_exceptionable, {
443
+ method: "typia.createAssertEquals",
444
+ path: _path + ".logicalIds",
445
+ expected: "ReadonlyArray<CommerceLogicalProductId>",
446
+ value: input.logicalIds
447
+ }, _errorFactory)) && input.logicalIds.every((elem, _index21) => "string" === typeof elem && (1 <= elem.length || _assertGuard_1._assertGuard(_exceptionable, {
448
+ method: "typia.createAssertEquals",
449
+ path: _path + ".logicalIds[" + _index21 + "]",
450
+ expected: "string & CommerceMinLength<1>",
451
+ value: elem
452
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
453
+ method: "typia.createAssertEquals",
454
+ path: _path + ".logicalIds[" + _index21 + "]",
455
+ expected: "(string & CommerceMinLength<1>)",
456
+ value: elem
457
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
458
+ method: "typia.createAssertEquals",
459
+ path: _path + ".logicalIds",
460
+ expected: "ReadonlyArray<CommerceLogicalProductId>",
461
+ value: input.logicalIds
462
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
463
+ if (["logicalIds"].some(prop => key === prop))
464
+ return true;
465
+ const value = input[key];
466
+ if (undefined === value)
467
+ return true;
468
+ return _assertGuard_1._assertGuard(_exceptionable, {
469
+ method: "typia.createAssertEquals",
470
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
471
+ expected: "undefined",
472
+ value: value
473
+ }, _errorFactory);
474
+ })));
475
+ const _ao17 = (input, _path, _exceptionable = true) => ("store" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
476
+ method: "typia.createAssertEquals",
477
+ path: _path + ".actor",
478
+ expected: "\"store\"",
479
+ value: input.actor
480
+ }, _errorFactory)) && ("complete" === input.action || "update" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
481
+ method: "typia.createAssertEquals",
482
+ path: _path + ".action",
483
+ expected: "(\"complete\" | \"update\")",
484
+ value: input.action
485
+ }, _errorFactory)) && (("object" === typeof input.purchase && null !== input.purchase || _assertGuard_1._assertGuard(_exceptionable, {
486
+ method: "typia.createAssertEquals",
487
+ path: _path + ".purchase",
488
+ expected: "CommerceConformancePurchaseFixture",
489
+ value: input.purchase
490
+ }, _errorFactory)) && _ao18(input.purchase, _path + ".purchase", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
491
+ method: "typia.createAssertEquals",
492
+ path: _path + ".purchase",
493
+ expected: "CommerceConformancePurchaseFixture",
494
+ value: input.purchase
495
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
496
+ if (["actor", "action", "purchase"].some(prop => key === prop))
497
+ return true;
498
+ const value = input[key];
499
+ if (undefined === value)
500
+ return true;
501
+ return _assertGuard_1._assertGuard(_exceptionable, {
502
+ method: "typia.createAssertEquals",
503
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
504
+ expected: "undefined",
505
+ value: value
506
+ }, _errorFactory);
507
+ })));
508
+ const _ao18 = (input, _path, _exceptionable = true) => ("string" === typeof input.transactionId && (1 <= input.transactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
509
+ method: "typia.createAssertEquals",
510
+ path: _path + ".transactionId",
511
+ expected: "string & MinLength<1>",
512
+ value: input.transactionId
513
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
514
+ method: "typia.createAssertEquals",
515
+ path: _path + ".transactionId",
516
+ expected: "(string & MinLength<1>)",
517
+ value: input.transactionId
518
+ }, _errorFactory)) && ("string" === typeof input.storeSku && (1 <= input.storeSku.length || _assertGuard_1._assertGuard(_exceptionable, {
519
+ method: "typia.createAssertEquals",
520
+ path: _path + ".storeSku",
521
+ expected: "string & MinLength<1>",
522
+ value: input.storeSku
523
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
524
+ method: "typia.createAssertEquals",
525
+ path: _path + ".storeSku",
526
+ expected: "(string & MinLength<1>)",
527
+ value: input.storeSku
528
+ }, _errorFactory)) && ("string" === typeof input.token && (1 <= input.token.length || _assertGuard_1._assertGuard(_exceptionable, {
529
+ method: "typia.createAssertEquals",
530
+ path: _path + ".token",
531
+ expected: "string & MinLength<1>",
532
+ value: input.token
533
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
534
+ method: "typia.createAssertEquals",
535
+ path: _path + ".token",
536
+ expected: "(string & MinLength<1>)",
537
+ value: input.token
538
+ }, _errorFactory)) && ("pending" === input.state || "purchased" === input.state || "revoked" === input.state || _assertGuard_1._assertGuard(_exceptionable, {
539
+ method: "typia.createAssertEquals",
540
+ path: _path + ".state",
541
+ expected: "(\"pending\" | \"purchased\" | \"revoked\")",
542
+ value: input.state
543
+ }, _errorFactory)) && (undefined === input.originalTransactionId || "string" === typeof input.originalTransactionId && (1 <= input.originalTransactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
544
+ method: "typia.createAssertEquals",
545
+ path: _path + ".originalTransactionId",
546
+ expected: "string & MinLength<1>",
547
+ value: input.originalTransactionId
548
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
549
+ method: "typia.createAssertEquals",
550
+ path: _path + ".originalTransactionId",
551
+ expected: "((string & MinLength<1>) | undefined)",
552
+ value: input.originalTransactionId
553
+ }, _errorFactory)) && (undefined === input.purchasedAt || "string" === typeof input.purchasedAt && (_isFormatDateTime_1._isFormatDateTime(input.purchasedAt) || _assertGuard_1._assertGuard(_exceptionable, {
554
+ method: "typia.createAssertEquals",
555
+ path: _path + ".purchasedAt",
556
+ expected: "string & Format<\"date-time\">",
557
+ value: input.purchasedAt
558
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
559
+ method: "typia.createAssertEquals",
560
+ path: _path + ".purchasedAt",
561
+ expected: "((string & Format<\"date-time\">) | undefined)",
562
+ value: input.purchasedAt
563
+ }, _errorFactory)) && (undefined === input.settlement || ("object" === typeof input.settlement && null !== input.settlement || _assertGuard_1._assertGuard(_exceptionable, {
564
+ method: "typia.createAssertEquals",
565
+ path: _path + ".settlement",
566
+ expected: "(undefined | { readonly ledgerEntryId: NonEmptyString; })",
567
+ value: input.settlement
568
+ }, _errorFactory)) && _ao19(input.settlement, _path + ".settlement", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
569
+ method: "typia.createAssertEquals",
570
+ path: _path + ".settlement",
571
+ expected: "(undefined | { readonly ledgerEntryId: NonEmptyString; })",
572
+ value: input.settlement
573
+ }, _errorFactory)) && (4 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
574
+ if (["transactionId", "storeSku", "token", "state", "originalTransactionId", "purchasedAt", "settlement"].some(prop => key === prop))
575
+ return true;
576
+ const value = input[key];
577
+ if (undefined === value)
578
+ return true;
579
+ return _assertGuard_1._assertGuard(_exceptionable, {
580
+ method: "typia.createAssertEquals",
581
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
582
+ expected: "undefined",
583
+ value: value
584
+ }, _errorFactory);
585
+ })));
586
+ const _ao19 = (input, _path, _exceptionable = true) => ("string" === typeof input.ledgerEntryId && (1 <= input.ledgerEntryId.length || _assertGuard_1._assertGuard(_exceptionable, {
587
+ method: "typia.createAssertEquals",
588
+ path: _path + ".ledgerEntryId",
589
+ expected: "string & MinLength<1>",
590
+ value: input.ledgerEntryId
591
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
592
+ method: "typia.createAssertEquals",
593
+ path: _path + ".ledgerEntryId",
594
+ expected: "(string & MinLength<1>)",
595
+ value: input.ledgerEntryId
596
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
597
+ if (["ledgerEntryId"].some(prop => key === prop))
598
+ return true;
599
+ const value = input[key];
600
+ if (undefined === value)
601
+ return true;
602
+ return _assertGuard_1._assertGuard(_exceptionable, {
603
+ method: "typia.createAssertEquals",
604
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
605
+ expected: "undefined",
606
+ value: value
607
+ }, _errorFactory);
608
+ })));
609
+ const _ao2 = (input, _path, _exceptionable = true) => ("boolean" === typeof input.consumable || _assertGuard_1._assertGuard(_exceptionable, {
610
+ method: "typia.createAssertEquals",
611
+ path: _path + ".consumable",
612
+ expected: "boolean",
613
+ value: input.consumable
614
+ }, _errorFactory)) && ("boolean" === typeof input.durable || _assertGuard_1._assertGuard(_exceptionable, {
615
+ method: "typia.createAssertEquals",
616
+ path: _path + ".durable",
617
+ expected: "boolean",
618
+ value: input.durable
619
+ }, _errorFactory)) && ("boolean" === typeof input.subscription || _assertGuard_1._assertGuard(_exceptionable, {
620
+ method: "typia.createAssertEquals",
621
+ path: _path + ".subscription",
622
+ expected: "boolean",
623
+ value: input.subscription
624
+ }, _errorFactory)) && ("boolean" === typeof input.quantity || _assertGuard_1._assertGuard(_exceptionable, {
625
+ method: "typia.createAssertEquals",
626
+ path: _path + ".quantity",
627
+ expected: "boolean",
628
+ value: input.quantity
629
+ }, _errorFactory)) && (4 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
630
+ if (["consumable", "durable", "subscription", "quantity"].some(prop => key === prop))
631
+ return true;
632
+ const value = input[key];
633
+ if (undefined === value)
634
+ return true;
635
+ return _assertGuard_1._assertGuard(_exceptionable, {
636
+ method: "typia.createAssertEquals",
637
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
638
+ expected: "undefined",
639
+ value: value
640
+ }, _errorFactory);
641
+ })));
642
+ const _ao20 = (input, _path, _exceptionable = true) => ("store" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
643
+ method: "typia.createAssertEquals",
644
+ path: _path + ".actor",
645
+ expected: "\"store\"",
646
+ value: input.actor
647
+ }, _errorFactory)) && ("error" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
648
+ method: "typia.createAssertEquals",
649
+ path: _path + ".action",
650
+ expected: "\"error\"",
651
+ value: input.action
652
+ }, _errorFactory)) && (undefined === input.logicalId || "string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
653
+ method: "typia.createAssertEquals",
654
+ path: _path + ".logicalId",
655
+ expected: "string & CommerceMinLength<1>",
656
+ value: input.logicalId
657
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
658
+ method: "typia.createAssertEquals",
659
+ path: _path + ".logicalId",
660
+ expected: "((string & CommerceMinLength<1>) | undefined)",
661
+ value: input.logicalId
662
+ }, _errorFactory)) && (("object" === typeof input.error && null !== input.error || _assertGuard_1._assertGuard(_exceptionable, {
663
+ method: "typia.createAssertEquals",
664
+ path: _path + ".error",
665
+ expected: "CommerceConformanceErrorFixture",
666
+ value: input.error
667
+ }, _errorFactory)) && _ao21(input.error, _path + ".error", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
668
+ method: "typia.createAssertEquals",
669
+ path: _path + ".error",
670
+ expected: "CommerceConformanceErrorFixture",
671
+ value: input.error
672
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
673
+ if (["actor", "action", "logicalId", "error"].some(prop => key === prop))
674
+ return true;
675
+ const value = input[key];
676
+ if (undefined === value)
677
+ return true;
678
+ return _assertGuard_1._assertGuard(_exceptionable, {
679
+ method: "typia.createAssertEquals",
680
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
681
+ expected: "undefined",
682
+ value: value
683
+ }, _errorFactory);
684
+ })));
685
+ const _ao21 = (input, _path, _exceptionable = true) => (true === _av0.has(input.code) || _assertGuard_1._assertGuard(_exceptionable, {
686
+ method: "typia.createAssertEquals",
687
+ path: _path + ".code",
688
+ expected: _ae2,
689
+ value: input.code
690
+ }, _errorFactory)) && ("boolean" === typeof input.retryable || _assertGuard_1._assertGuard(_exceptionable, {
691
+ method: "typia.createAssertEquals",
692
+ path: _path + ".retryable",
693
+ expected: "boolean",
694
+ value: input.retryable
695
+ }, _errorFactory)) && (undefined === input.storeCode || "string" === typeof input.storeCode || _assertGuard_1._assertGuard(_exceptionable, {
696
+ method: "typia.createAssertEquals",
697
+ path: _path + ".storeCode",
698
+ expected: "(string | undefined)",
699
+ value: input.storeCode
700
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
701
+ if (["code", "retryable", "storeCode"].some(prop => key === prop))
702
+ return true;
703
+ const value = input[key];
704
+ if (undefined === value)
705
+ return true;
706
+ return _assertGuard_1._assertGuard(_exceptionable, {
707
+ method: "typia.createAssertEquals",
708
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
709
+ expected: "undefined",
710
+ value: value
711
+ }, _errorFactory);
712
+ })));
713
+ const _ao22 = (input, _path, _exceptionable = true) => ("store" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
714
+ method: "typia.createAssertEquals",
715
+ path: _path + ".actor",
716
+ expected: "\"store\"",
717
+ value: input.actor
718
+ }, _errorFactory)) && ("queueRequest" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
719
+ method: "typia.createAssertEquals",
720
+ path: _path + ".action",
721
+ expected: "\"queueRequest\"",
722
+ value: input.action
723
+ }, _errorFactory)) && (("object" === typeof input.result && null !== input.result || _assertGuard_1._assertGuard(_exceptionable, {
724
+ method: "typia.createAssertEquals",
725
+ path: _path + ".result",
726
+ expected: _ae3,
727
+ value: input.result
728
+ }, _errorFactory)) && _au1(input.result, _path + ".result", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
729
+ method: "typia.createAssertEquals",
730
+ path: _path + ".result",
731
+ expected: _ae3,
732
+ value: input.result
733
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
734
+ if (["actor", "action", "result"].some(prop => key === prop))
735
+ return true;
736
+ const value = input[key];
737
+ if (undefined === value)
738
+ return true;
739
+ return _assertGuard_1._assertGuard(_exceptionable, {
740
+ method: "typia.createAssertEquals",
741
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
742
+ expected: "undefined",
743
+ value: value
744
+ }, _errorFactory);
745
+ })));
746
+ const _ao23 = (input, _path, _exceptionable = true) => ("launched" === input.outcome || _assertGuard_1._assertGuard(_exceptionable, {
747
+ method: "typia.createAssertEquals",
748
+ path: _path + ".outcome",
749
+ expected: "\"launched\"",
750
+ value: input.outcome
751
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
752
+ if (["outcome"].some(prop => key === prop))
753
+ return true;
754
+ const value = input[key];
755
+ if (undefined === value)
756
+ return true;
757
+ return _assertGuard_1._assertGuard(_exceptionable, {
758
+ method: "typia.createAssertEquals",
759
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
760
+ expected: "undefined",
761
+ value: value
762
+ }, _errorFactory);
763
+ })));
764
+ const _ao24 = (input, _path, _exceptionable = true) => ("purchased" === input.outcome || _assertGuard_1._assertGuard(_exceptionable, {
765
+ method: "typia.createAssertEquals",
766
+ path: _path + ".outcome",
767
+ expected: "\"purchased\"",
768
+ value: input.outcome
769
+ }, _errorFactory)) && (("object" === typeof input.purchase && null !== input.purchase || _assertGuard_1._assertGuard(_exceptionable, {
770
+ method: "typia.createAssertEquals",
771
+ path: _path + ".purchase",
772
+ expected: "CommerceConformancePurchaseFixture",
773
+ value: input.purchase
774
+ }, _errorFactory)) && _ao18(input.purchase, _path + ".purchase", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
775
+ method: "typia.createAssertEquals",
776
+ path: _path + ".purchase",
777
+ expected: "CommerceConformancePurchaseFixture",
778
+ value: input.purchase
779
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
780
+ if (["outcome", "purchase"].some(prop => key === prop))
781
+ return true;
782
+ const value = input[key];
783
+ if (undefined === value)
784
+ return true;
785
+ return _assertGuard_1._assertGuard(_exceptionable, {
786
+ method: "typia.createAssertEquals",
787
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
788
+ expected: "undefined",
789
+ value: value
790
+ }, _errorFactory);
791
+ })));
792
+ const _ao25 = (input, _path, _exceptionable = true) => ("cancelled" === input.outcome || "failed" === input.outcome || _assertGuard_1._assertGuard(_exceptionable, {
793
+ method: "typia.createAssertEquals",
794
+ path: _path + ".outcome",
795
+ expected: "(\"cancelled\" | \"failed\")",
796
+ value: input.outcome
797
+ }, _errorFactory)) && (("object" === typeof input.error && null !== input.error || _assertGuard_1._assertGuard(_exceptionable, {
798
+ method: "typia.createAssertEquals",
799
+ path: _path + ".error",
800
+ expected: "CommerceConformanceErrorFixture",
801
+ value: input.error
802
+ }, _errorFactory)) && _ao21(input.error, _path + ".error", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
803
+ method: "typia.createAssertEquals",
804
+ path: _path + ".error",
805
+ expected: "CommerceConformanceErrorFixture",
806
+ value: input.error
807
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
808
+ if (["outcome", "error"].some(prop => key === prop))
809
+ return true;
810
+ const value = input[key];
811
+ if (undefined === value)
812
+ return true;
813
+ return _assertGuard_1._assertGuard(_exceptionable, {
814
+ method: "typia.createAssertEquals",
815
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
816
+ expected: "undefined",
817
+ value: value
818
+ }, _errorFactory);
819
+ })));
820
+ const _ao26 = (input, _path, _exceptionable = true) => ("store" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
821
+ method: "typia.createAssertEquals",
822
+ path: _path + ".actor",
823
+ expected: "\"store\"",
824
+ value: input.actor
825
+ }, _errorFactory)) && ("queueFinish" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
826
+ method: "typia.createAssertEquals",
827
+ path: _path + ".action",
828
+ expected: "\"queueFinish\"",
829
+ value: input.action
830
+ }, _errorFactory)) && (("object" === typeof input.result && null !== input.result || _assertGuard_1._assertGuard(_exceptionable, {
831
+ method: "typia.createAssertEquals",
832
+ path: _path + ".result",
833
+ expected: "({ readonly error: CommerceErrorCode; } | { readonly finished: boolean; })",
834
+ value: input.result
835
+ }, _errorFactory)) && _au2(input.result, _path + ".result", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
836
+ method: "typia.createAssertEquals",
837
+ path: _path + ".result",
838
+ expected: "({ readonly error: CommerceErrorCode; } | { readonly finished: boolean; })",
839
+ value: input.result
840
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
841
+ if (["actor", "action", "result"].some(prop => key === prop))
842
+ return true;
843
+ const value = input[key];
844
+ if (undefined === value)
845
+ return true;
846
+ return _assertGuard_1._assertGuard(_exceptionable, {
847
+ method: "typia.createAssertEquals",
848
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
849
+ expected: "undefined",
850
+ value: value
851
+ }, _errorFactory);
852
+ })));
853
+ const _ao27 = (input, _path, _exceptionable = true) => ("boolean" === typeof input.finished || _assertGuard_1._assertGuard(_exceptionable, {
854
+ method: "typia.createAssertEquals",
855
+ path: _path + ".finished",
856
+ expected: "boolean",
857
+ value: input.finished
858
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
859
+ if (["finished"].some(prop => key === prop))
860
+ return true;
861
+ const value = input[key];
862
+ if (undefined === value)
863
+ return true;
864
+ return _assertGuard_1._assertGuard(_exceptionable, {
865
+ method: "typia.createAssertEquals",
866
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
867
+ expected: "undefined",
868
+ value: value
869
+ }, _errorFactory);
870
+ })));
871
+ const _ao28 = (input, _path, _exceptionable = true) => (true === _av0.has(input.error) || _assertGuard_1._assertGuard(_exceptionable, {
872
+ method: "typia.createAssertEquals",
873
+ path: _path + ".error",
874
+ expected: _ae2,
875
+ value: input.error
876
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
877
+ if (["error"].some(prop => key === prop))
878
+ return true;
879
+ const value = input[key];
880
+ if (undefined === value)
881
+ return true;
882
+ return _assertGuard_1._assertGuard(_exceptionable, {
883
+ method: "typia.createAssertEquals",
884
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
885
+ expected: "undefined",
886
+ value: value
887
+ }, _errorFactory);
888
+ })));
889
+ const _ao29 = (input, _path, _exceptionable = true) => ("backend" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
890
+ method: "typia.createAssertEquals",
891
+ path: _path + ".actor",
892
+ expected: "\"backend\"",
893
+ value: input.actor
894
+ }, _errorFactory)) && ("queueVerify" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
895
+ method: "typia.createAssertEquals",
896
+ path: _path + ".action",
897
+ expected: "\"queueVerify\"",
898
+ value: input.action
899
+ }, _errorFactory)) && (("object" === typeof input.decision && null !== input.decision || _assertGuard_1._assertGuard(_exceptionable, {
900
+ method: "typia.createAssertEquals",
901
+ path: _path + ".decision",
902
+ expected: "CommerceConformanceVerifyDecision",
903
+ value: input.decision
904
+ }, _errorFactory)) && _ao30(input.decision, _path + ".decision", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
905
+ method: "typia.createAssertEquals",
906
+ path: _path + ".decision",
907
+ expected: "CommerceConformanceVerifyDecision",
908
+ value: input.decision
909
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
910
+ if (["actor", "action", "decision"].some(prop => key === prop))
911
+ return true;
912
+ const value = input[key];
913
+ if (undefined === value)
914
+ return true;
915
+ return _assertGuard_1._assertGuard(_exceptionable, {
916
+ method: "typia.createAssertEquals",
917
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
918
+ expected: "undefined",
919
+ value: value
920
+ }, _errorFactory);
921
+ })));
922
+ const _ao3 = (input, _path, _exceptionable = true) => ("boolean" === typeof input.availablePurchases || _assertGuard_1._assertGuard(_exceptionable, {
923
+ method: "typia.createAssertEquals",
924
+ path: _path + ".availablePurchases",
925
+ expected: "boolean",
926
+ value: input.availablePurchases
927
+ }, _errorFactory)) && ("boolean" === typeof input.pending || _assertGuard_1._assertGuard(_exceptionable, {
928
+ method: "typia.createAssertEquals",
929
+ path: _path + ".pending",
930
+ expected: "boolean",
931
+ value: input.pending
932
+ }, _errorFactory)) && ("boolean" === typeof input.restore || _assertGuard_1._assertGuard(_exceptionable, {
933
+ method: "typia.createAssertEquals",
934
+ path: _path + ".restore",
935
+ expected: "boolean",
936
+ value: input.restore
937
+ }, _errorFactory)) && ("boolean" === typeof input.events || _assertGuard_1._assertGuard(_exceptionable, {
938
+ method: "typia.createAssertEquals",
939
+ path: _path + ".events",
940
+ expected: "boolean",
941
+ value: input.events
942
+ }, _errorFactory)) && ("client" === input.finish || "host" === input.finish || "none" === input.finish || "server" === input.finish || _assertGuard_1._assertGuard(_exceptionable, {
943
+ method: "typia.createAssertEquals",
944
+ path: _path + ".finish",
945
+ expected: "(\"client\" | \"host\" | \"none\" | \"server\")",
946
+ value: input.finish
947
+ }, _errorFactory)) && (5 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
948
+ if (["availablePurchases", "pending", "restore", "events", "finish"].some(prop => key === prop))
949
+ return true;
950
+ const value = input[key];
951
+ if (undefined === value)
952
+ return true;
953
+ return _assertGuard_1._assertGuard(_exceptionable, {
954
+ method: "typia.createAssertEquals",
955
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
956
+ expected: "undefined",
957
+ value: value
958
+ }, _errorFactory);
959
+ })));
960
+ const _ao30 = (input, _path, _exceptionable = true) => ("granted" === input.status || "pending" === input.status || "rejected" === input.status || _assertGuard_1._assertGuard(_exceptionable, {
961
+ method: "typia.createAssertEquals",
962
+ path: _path + ".status",
963
+ expected: "(\"granted\" | \"pending\" | \"rejected\")",
964
+ value: input.status
965
+ }, _errorFactory)) && (undefined === input.ledgerEntryId || "string" === typeof input.ledgerEntryId && (1 <= input.ledgerEntryId.length || _assertGuard_1._assertGuard(_exceptionable, {
966
+ method: "typia.createAssertEquals",
967
+ path: _path + ".ledgerEntryId",
968
+ expected: "string & MinLength<1>",
969
+ value: input.ledgerEntryId
970
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
971
+ method: "typia.createAssertEquals",
972
+ path: _path + ".ledgerEntryId",
973
+ expected: "((string & MinLength<1>) | undefined)",
974
+ value: input.ledgerEntryId
975
+ }, _errorFactory)) && (undefined === input.finalization || "completed" === input.finalization || "pending" === input.finalization || _assertGuard_1._assertGuard(_exceptionable, {
976
+ method: "typia.createAssertEquals",
977
+ path: _path + ".finalization",
978
+ expected: "(\"completed\" | \"pending\" | undefined)",
979
+ value: input.finalization
980
+ }, _errorFactory)) && (undefined === input.alreadyProcessed || "boolean" === typeof input.alreadyProcessed || _assertGuard_1._assertGuard(_exceptionable, {
981
+ method: "typia.createAssertEquals",
982
+ path: _path + ".alreadyProcessed",
983
+ expected: "(boolean | undefined)",
984
+ value: input.alreadyProcessed
985
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
986
+ if (["status", "ledgerEntryId", "finalization", "alreadyProcessed"].some(prop => key === prop))
987
+ return true;
988
+ const value = input[key];
989
+ if (undefined === value)
990
+ return true;
991
+ return _assertGuard_1._assertGuard(_exceptionable, {
992
+ method: "typia.createAssertEquals",
993
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
994
+ expected: "undefined",
995
+ value: value
996
+ }, _errorFactory);
997
+ })));
998
+ const _ao31 = (input, _path, _exceptionable = true) => ("backend" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
999
+ method: "typia.createAssertEquals",
1000
+ path: _path + ".actor",
1001
+ expected: "\"backend\"",
1002
+ value: input.actor
1003
+ }, _errorFactory)) && ("push" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1004
+ method: "typia.createAssertEquals",
1005
+ path: _path + ".action",
1006
+ expected: "\"push\"",
1007
+ value: input.action
1008
+ }, _errorFactory)) && ("string" === typeof input.transactionId && (1 <= input.transactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
1009
+ method: "typia.createAssertEquals",
1010
+ path: _path + ".transactionId",
1011
+ expected: "string & MinLength<1>",
1012
+ value: input.transactionId
1013
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1014
+ method: "typia.createAssertEquals",
1015
+ path: _path + ".transactionId",
1016
+ expected: "(string & MinLength<1>)",
1017
+ value: input.transactionId
1018
+ }, _errorFactory)) && ("string" === typeof input.entryId && (1 <= input.entryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1019
+ method: "typia.createAssertEquals",
1020
+ path: _path + ".entryId",
1021
+ expected: "string & MinLength<1>",
1022
+ value: input.entryId
1023
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1024
+ method: "typia.createAssertEquals",
1025
+ path: _path + ".entryId",
1026
+ expected: "(string & MinLength<1>)",
1027
+ value: input.entryId
1028
+ }, _errorFactory)) && ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
1029
+ method: "typia.createAssertEquals",
1030
+ path: _path + ".logicalId",
1031
+ expected: "string & CommerceMinLength<1>",
1032
+ value: input.logicalId
1033
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1034
+ method: "typia.createAssertEquals",
1035
+ path: _path + ".logicalId",
1036
+ expected: "(string & CommerceMinLength<1>)",
1037
+ value: input.logicalId
1038
+ }, _errorFactory)) && (5 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1039
+ if (["actor", "action", "transactionId", "entryId", "logicalId"].some(prop => key === prop))
1040
+ return true;
1041
+ const value = input[key];
1042
+ if (undefined === value)
1043
+ return true;
1044
+ return _assertGuard_1._assertGuard(_exceptionable, {
1045
+ method: "typia.createAssertEquals",
1046
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1047
+ expected: "undefined",
1048
+ value: value
1049
+ }, _errorFactory);
1050
+ })));
1051
+ const _ao32 = (input, _path, _exceptionable = true) => ("backend" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
1052
+ method: "typia.createAssertEquals",
1053
+ path: _path + ".actor",
1054
+ expected: "\"backend\"",
1055
+ value: input.actor
1056
+ }, _errorFactory)) && ("revoke" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1057
+ method: "typia.createAssertEquals",
1058
+ path: _path + ".action",
1059
+ expected: "\"revoke\"",
1060
+ value: input.action
1061
+ }, _errorFactory)) && ("string" === typeof input.ledgerEntryId && (1 <= input.ledgerEntryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1062
+ method: "typia.createAssertEquals",
1063
+ path: _path + ".ledgerEntryId",
1064
+ expected: "string & MinLength<1>",
1065
+ value: input.ledgerEntryId
1066
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1067
+ method: "typia.createAssertEquals",
1068
+ path: _path + ".ledgerEntryId",
1069
+ expected: "(string & MinLength<1>)",
1070
+ value: input.ledgerEntryId
1071
+ }, _errorFactory)) && ("string" === typeof input.entryId && (1 <= input.entryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1072
+ method: "typia.createAssertEquals",
1073
+ path: _path + ".entryId",
1074
+ expected: "string & MinLength<1>",
1075
+ value: input.entryId
1076
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1077
+ method: "typia.createAssertEquals",
1078
+ path: _path + ".entryId",
1079
+ expected: "(string & MinLength<1>)",
1080
+ value: input.entryId
1081
+ }, _errorFactory)) && ("string" === typeof input.reason && (1 <= input.reason.length || _assertGuard_1._assertGuard(_exceptionable, {
1082
+ method: "typia.createAssertEquals",
1083
+ path: _path + ".reason",
1084
+ expected: "string & MinLength<1>",
1085
+ value: input.reason
1086
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1087
+ method: "typia.createAssertEquals",
1088
+ path: _path + ".reason",
1089
+ expected: "(string & MinLength<1>)",
1090
+ value: input.reason
1091
+ }, _errorFactory)) && (5 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1092
+ if (["actor", "action", "ledgerEntryId", "entryId", "reason"].some(prop => key === prop))
1093
+ return true;
1094
+ const value = input[key];
1095
+ if (undefined === value)
1096
+ return true;
1097
+ return _assertGuard_1._assertGuard(_exceptionable, {
1098
+ method: "typia.createAssertEquals",
1099
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1100
+ expected: "undefined",
1101
+ value: value
1102
+ }, _errorFactory);
1103
+ })));
1104
+ const _ao33 = (input, _path, _exceptionable = true) => ("wallet" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
1105
+ method: "typia.createAssertEquals",
1106
+ path: _path + ".actor",
1107
+ expected: "\"wallet\"",
1108
+ value: input.actor
1109
+ }, _errorFactory)) && ("creditFromGrant" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1110
+ method: "typia.createAssertEquals",
1111
+ path: _path + ".action",
1112
+ expected: "\"creditFromGrant\"",
1113
+ value: input.action
1114
+ }, _errorFactory)) && (("object" === typeof input.lot && null !== input.lot || _assertGuard_1._assertGuard(_exceptionable, {
1115
+ method: "typia.createAssertEquals",
1116
+ path: _path + ".lot",
1117
+ expected: "CommerceConformanceLotFixture",
1118
+ value: input.lot
1119
+ }, _errorFactory)) && _ao34(input.lot, _path + ".lot", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1120
+ method: "typia.createAssertEquals",
1121
+ path: _path + ".lot",
1122
+ expected: "CommerceConformanceLotFixture",
1123
+ value: input.lot
1124
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1125
+ if (["actor", "action", "lot"].some(prop => key === prop))
1126
+ return true;
1127
+ const value = input[key];
1128
+ if (undefined === value)
1129
+ return true;
1130
+ return _assertGuard_1._assertGuard(_exceptionable, {
1131
+ method: "typia.createAssertEquals",
1132
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1133
+ expected: "undefined",
1134
+ value: value
1135
+ }, _errorFactory);
1136
+ })));
1137
+ const _ao34 = (input, _path, _exceptionable = true) => ("string" === typeof input.ledgerEntryId && (1 <= input.ledgerEntryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1138
+ method: "typia.createAssertEquals",
1139
+ path: _path + ".ledgerEntryId",
1140
+ expected: "string & MinLength<1>",
1141
+ value: input.ledgerEntryId
1142
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1143
+ method: "typia.createAssertEquals",
1144
+ path: _path + ".ledgerEntryId",
1145
+ expected: "(string & MinLength<1>)",
1146
+ value: input.ledgerEntryId
1147
+ }, _errorFactory)) && ("string" === typeof input.currency && (1 <= input.currency.length || _assertGuard_1._assertGuard(_exceptionable, {
1148
+ method: "typia.createAssertEquals",
1149
+ path: _path + ".currency",
1150
+ expected: "string & MinLength<1>",
1151
+ value: input.currency
1152
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1153
+ method: "typia.createAssertEquals",
1154
+ path: _path + ".currency",
1155
+ expected: "(string & MinLength<1>)",
1156
+ value: input.currency
1157
+ }, _errorFactory)) && ("number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
1158
+ method: "typia.createAssertEquals",
1159
+ path: _path + ".amount",
1160
+ expected: "number & ExclusiveMinimum<0>",
1161
+ value: input.amount
1162
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1163
+ method: "typia.createAssertEquals",
1164
+ path: _path + ".amount",
1165
+ expected: "(number & ExclusiveMinimum<0>)",
1166
+ value: input.amount
1167
+ }, _errorFactory)) && (("object" === typeof input.origin && null !== input.origin || _assertGuard_1._assertGuard(_exceptionable, {
1168
+ method: "typia.createAssertEquals",
1169
+ path: _path + ".origin",
1170
+ expected: "CreditLotOrigin",
1171
+ value: input.origin
1172
+ }, _errorFactory)) && _ao35(input.origin, _path + ".origin", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1173
+ method: "typia.createAssertEquals",
1174
+ path: _path + ".origin",
1175
+ expected: "CreditLotOrigin",
1176
+ value: input.origin
1177
+ }, _errorFactory)) && ("string" === typeof input.createdAt && (_isFormatDateTime_1._isFormatDateTime(input.createdAt) || _assertGuard_1._assertGuard(_exceptionable, {
1178
+ method: "typia.createAssertEquals",
1179
+ path: _path + ".createdAt",
1180
+ expected: "string & Format<\"date-time\">",
1181
+ value: input.createdAt
1182
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1183
+ method: "typia.createAssertEquals",
1184
+ path: _path + ".createdAt",
1185
+ expected: "(string & Format<\"date-time\">)",
1186
+ value: input.createdAt
1187
+ }, _errorFactory)) && (undefined === input.expiresAt || "string" === typeof input.expiresAt && (_isFormatDateTime_1._isFormatDateTime(input.expiresAt) || _assertGuard_1._assertGuard(_exceptionable, {
1188
+ method: "typia.createAssertEquals",
1189
+ path: _path + ".expiresAt",
1190
+ expected: "string & Format<\"date-time\">",
1191
+ value: input.expiresAt
1192
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1193
+ method: "typia.createAssertEquals",
1194
+ path: _path + ".expiresAt",
1195
+ expected: "((string & Format<\"date-time\">) | undefined)",
1196
+ value: input.expiresAt
1197
+ }, _errorFactory)) && (5 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1198
+ if (["ledgerEntryId", "currency", "amount", "origin", "createdAt", "expiresAt"].some(prop => key === prop))
1199
+ return true;
1200
+ const value = input[key];
1201
+ if (undefined === value)
1202
+ return true;
1203
+ return _assertGuard_1._assertGuard(_exceptionable, {
1204
+ method: "typia.createAssertEquals",
1205
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1206
+ expected: "undefined",
1207
+ value: value
1208
+ }, _errorFactory);
1209
+ })));
1210
+ const _ao35 = (input, _path, _exceptionable = true) => ("off-store" === input.channel || "promotion" === input.channel || "store" === input.channel || _assertGuard_1._assertGuard(_exceptionable, {
1211
+ method: "typia.createAssertEquals",
1212
+ path: _path + ".channel",
1213
+ expected: "(\"off-store\" | \"promotion\" | \"store\")",
1214
+ value: input.channel
1215
+ }, _errorFactory)) && ("string" === typeof input.store && (1 <= input.store.length || _assertGuard_1._assertGuard(_exceptionable, {
1216
+ method: "typia.createAssertEquals",
1217
+ path: _path + ".store",
1218
+ expected: "string & CommerceMinLength<1>",
1219
+ value: input.store
1220
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1221
+ method: "typia.createAssertEquals",
1222
+ path: _path + ".store",
1223
+ expected: "(string & CommerceMinLength<1>)",
1224
+ value: input.store
1225
+ }, _errorFactory)) && ("string" === typeof input.titleId && (1 <= input.titleId.length || _assertGuard_1._assertGuard(_exceptionable, {
1226
+ method: "typia.createAssertEquals",
1227
+ path: _path + ".titleId",
1228
+ expected: "string & CommerceMinLength<1>",
1229
+ value: input.titleId
1230
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1231
+ method: "typia.createAssertEquals",
1232
+ path: _path + ".titleId",
1233
+ expected: "(string & CommerceMinLength<1>)",
1234
+ value: input.titleId
1235
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1236
+ if (["channel", "store", "titleId"].some(prop => key === prop))
1237
+ return true;
1238
+ const value = input[key];
1239
+ if (undefined === value)
1240
+ return true;
1241
+ return _assertGuard_1._assertGuard(_exceptionable, {
1242
+ method: "typia.createAssertEquals",
1243
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1244
+ expected: "undefined",
1245
+ value: value
1246
+ }, _errorFactory);
1247
+ })));
1248
+ const _ao36 = (input, _path, _exceptionable = true) => ("wallet" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
1249
+ method: "typia.createAssertEquals",
1250
+ path: _path + ".actor",
1251
+ expected: "\"wallet\"",
1252
+ value: input.actor
1253
+ }, _errorFactory)) && ("spend" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1254
+ method: "typia.createAssertEquals",
1255
+ path: _path + ".action",
1256
+ expected: "\"spend\"",
1257
+ value: input.action
1258
+ }, _errorFactory)) && (("object" === typeof input.input && null !== input.input || _assertGuard_1._assertGuard(_exceptionable, {
1259
+ method: "typia.createAssertEquals",
1260
+ path: _path + ".input",
1261
+ expected: "CommerceConformanceSpendInput",
1262
+ value: input.input
1263
+ }, _errorFactory)) && _ao37(input.input, _path + ".input", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1264
+ method: "typia.createAssertEquals",
1265
+ path: _path + ".input",
1266
+ expected: "CommerceConformanceSpendInput",
1267
+ value: input.input
1268
+ }, _errorFactory)) && (undefined === input.returns || ("object" === typeof input.returns && null !== input.returns || _assertGuard_1._assertGuard(_exceptionable, {
1269
+ method: "typia.createAssertEquals",
1270
+ path: _path + ".returns",
1271
+ expected: "(CommerceConformanceSpendExpectation | undefined)",
1272
+ value: input.returns
1273
+ }, _errorFactory)) && _ao38(input.returns, _path + ".returns", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1274
+ method: "typia.createAssertEquals",
1275
+ path: _path + ".returns",
1276
+ expected: "(CommerceConformanceSpendExpectation | undefined)",
1277
+ value: input.returns
1278
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1279
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
1280
+ return true;
1281
+ const value = input[key];
1282
+ if (undefined === value)
1283
+ return true;
1284
+ return _assertGuard_1._assertGuard(_exceptionable, {
1285
+ method: "typia.createAssertEquals",
1286
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1287
+ expected: "undefined",
1288
+ value: value
1289
+ }, _errorFactory);
1290
+ })));
1291
+ const _ao37 = (input, _path, _exceptionable = true) => ("string" === typeof input.titleId && (1 <= input.titleId.length || _assertGuard_1._assertGuard(_exceptionable, {
1292
+ method: "typia.createAssertEquals",
1293
+ path: _path + ".titleId",
1294
+ expected: "string & MinLength<1>",
1295
+ value: input.titleId
1296
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1297
+ method: "typia.createAssertEquals",
1298
+ path: _path + ".titleId",
1299
+ expected: "(string & MinLength<1>)",
1300
+ value: input.titleId
1301
+ }, _errorFactory)) && ("string" === typeof input.currency && (1 <= input.currency.length || _assertGuard_1._assertGuard(_exceptionable, {
1302
+ method: "typia.createAssertEquals",
1303
+ path: _path + ".currency",
1304
+ expected: "string & MinLength<1>",
1305
+ value: input.currency
1306
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1307
+ method: "typia.createAssertEquals",
1308
+ path: _path + ".currency",
1309
+ expected: "(string & MinLength<1>)",
1310
+ value: input.currency
1311
+ }, _errorFactory)) && ("number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
1312
+ method: "typia.createAssertEquals",
1313
+ path: _path + ".amount",
1314
+ expected: "number & ExclusiveMinimum<0>",
1315
+ value: input.amount
1316
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1317
+ method: "typia.createAssertEquals",
1318
+ path: _path + ".amount",
1319
+ expected: "(number & ExclusiveMinimum<0>)",
1320
+ value: input.amount
1321
+ }, _errorFactory)) && ("string" === typeof input.idempotencyKey && (1 <= input.idempotencyKey.length || _assertGuard_1._assertGuard(_exceptionable, {
1322
+ method: "typia.createAssertEquals",
1323
+ path: _path + ".idempotencyKey",
1324
+ expected: "string & MinLength<1>",
1325
+ value: input.idempotencyKey
1326
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1327
+ method: "typia.createAssertEquals",
1328
+ path: _path + ".idempotencyKey",
1329
+ expected: "(string & MinLength<1>)",
1330
+ value: input.idempotencyKey
1331
+ }, _errorFactory)) && (4 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1332
+ if (["titleId", "currency", "amount", "idempotencyKey"].some(prop => key === prop))
1333
+ return true;
1334
+ const value = input[key];
1335
+ if (undefined === value)
1336
+ return true;
1337
+ return _assertGuard_1._assertGuard(_exceptionable, {
1338
+ method: "typia.createAssertEquals",
1339
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1340
+ expected: "undefined",
1341
+ value: value
1342
+ }, _errorFactory);
1343
+ })));
1344
+ const _ao38 = (input, _path, _exceptionable = true) => ("debited" === input.status || "rejected" === input.status || _assertGuard_1._assertGuard(_exceptionable, {
1345
+ method: "typia.createAssertEquals",
1346
+ path: _path + ".status",
1347
+ expected: "(\"debited\" | \"rejected\")",
1348
+ value: input.status
1349
+ }, _errorFactory)) && (undefined === input.debits || (Array.isArray(input.debits) || _assertGuard_1._assertGuard(_exceptionable, {
1350
+ method: "typia.createAssertEquals",
1351
+ path: _path + ".debits",
1352
+ expected: "(ReadonlyArray<CommerceConformanceDebitExpectation> | undefined)",
1353
+ value: input.debits
1354
+ }, _errorFactory)) && input.debits.every((elem, _index22) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1355
+ method: "typia.createAssertEquals",
1356
+ path: _path + ".debits[" + _index22 + "]",
1357
+ expected: "CommerceConformanceDebitExpectation",
1358
+ value: elem
1359
+ }, _errorFactory)) && _ao39(elem, _path + ".debits[" + _index22 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1360
+ method: "typia.createAssertEquals",
1361
+ path: _path + ".debits[" + _index22 + "]",
1362
+ expected: "CommerceConformanceDebitExpectation",
1363
+ value: elem
1364
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1365
+ method: "typia.createAssertEquals",
1366
+ path: _path + ".debits",
1367
+ expected: "(ReadonlyArray<CommerceConformanceDebitExpectation> | undefined)",
1368
+ value: input.debits
1369
+ }, _errorFactory)) && (undefined === input.alreadyProcessed || "boolean" === typeof input.alreadyProcessed || _assertGuard_1._assertGuard(_exceptionable, {
1370
+ method: "typia.createAssertEquals",
1371
+ path: _path + ".alreadyProcessed",
1372
+ expected: "(boolean | undefined)",
1373
+ value: input.alreadyProcessed
1374
+ }, _errorFactory)) && (undefined === input.error || ("object" === typeof input.error && null !== input.error || _assertGuard_1._assertGuard(_exceptionable, {
1375
+ method: "typia.createAssertEquals",
1376
+ path: _path + ".error",
1377
+ expected: "(CommerceConformanceErrorExpectation | undefined)",
1378
+ value: input.error
1379
+ }, _errorFactory)) && _ao13(input.error, _path + ".error", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1380
+ method: "typia.createAssertEquals",
1381
+ path: _path + ".error",
1382
+ expected: "(CommerceConformanceErrorExpectation | undefined)",
1383
+ value: input.error
1384
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1385
+ if (["status", "debits", "alreadyProcessed", "error"].some(prop => key === prop))
1386
+ return true;
1387
+ const value = input[key];
1388
+ if (undefined === value)
1389
+ return true;
1390
+ return _assertGuard_1._assertGuard(_exceptionable, {
1391
+ method: "typia.createAssertEquals",
1392
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1393
+ expected: "undefined",
1394
+ value: value
1395
+ }, _errorFactory);
1396
+ })));
1397
+ const _ao39 = (input, _path, _exceptionable = true) => ("string" === typeof input.lotId && (1 <= input.lotId.length || _assertGuard_1._assertGuard(_exceptionable, {
1398
+ method: "typia.createAssertEquals",
1399
+ path: _path + ".lotId",
1400
+ expected: "string & MinLength<1>",
1401
+ value: input.lotId
1402
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1403
+ method: "typia.createAssertEquals",
1404
+ path: _path + ".lotId",
1405
+ expected: "(string & MinLength<1>)",
1406
+ value: input.lotId
1407
+ }, _errorFactory)) && ("number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
1408
+ method: "typia.createAssertEquals",
1409
+ path: _path + ".amount",
1410
+ expected: "number & ExclusiveMinimum<0>",
1411
+ value: input.amount
1412
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1413
+ method: "typia.createAssertEquals",
1414
+ path: _path + ".amount",
1415
+ expected: "(number & ExclusiveMinimum<0>)",
1416
+ value: input.amount
1417
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1418
+ if (["lotId", "amount"].some(prop => key === prop))
1419
+ return true;
1420
+ const value = input[key];
1421
+ if (undefined === value)
1422
+ return true;
1423
+ return _assertGuard_1._assertGuard(_exceptionable, {
1424
+ method: "typia.createAssertEquals",
1425
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1426
+ expected: "undefined",
1427
+ value: value
1428
+ }, _errorFactory);
1429
+ })));
1430
+ const _ao4 = (input, _path, _exceptionable = true) => ("adapter-settled" === input.evidence || "client-token" === input.evidence || "host-callback" === input.evidence || "server-push" === input.evidence || _assertGuard_1._assertGuard(_exceptionable, {
1431
+ method: "typia.createAssertEquals",
1432
+ path: _path + ".evidence",
1433
+ expected: "(\"adapter-settled\" | \"client-token\" | \"host-callback\" | \"server-push\")",
1434
+ value: input.evidence
1435
+ }, _errorFactory)) && ("host" === input.accountBinding || "optional" === input.accountBinding || "required" === input.accountBinding || _assertGuard_1._assertGuard(_exceptionable, {
1436
+ method: "typia.createAssertEquals",
1437
+ path: _path + ".accountBinding",
1438
+ expected: "(\"host\" | \"optional\" | \"required\")",
1439
+ value: input.accountBinding
1440
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1441
+ if (["evidence", "accountBinding"].some(prop => key === prop))
1442
+ return true;
1443
+ const value = input[key];
1444
+ if (undefined === value)
1445
+ return true;
1446
+ return _assertGuard_1._assertGuard(_exceptionable, {
1447
+ method: "typia.createAssertEquals",
1448
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1449
+ expected: "undefined",
1450
+ value: value
1451
+ }, _errorFactory);
1452
+ })));
1453
+ const _ao40 = (input, _path, _exceptionable = true) => ("wallet" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
1454
+ method: "typia.createAssertEquals",
1455
+ path: _path + ".actor",
1456
+ expected: "\"wallet\"",
1457
+ value: input.actor
1458
+ }, _errorFactory)) && ("renewDue" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1459
+ method: "typia.createAssertEquals",
1460
+ path: _path + ".action",
1461
+ expected: "\"renewDue\"",
1462
+ value: input.action
1463
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1464
+ if (["actor", "action"].some(prop => key === prop))
1465
+ return true;
1466
+ const value = input[key];
1467
+ if (undefined === value)
1468
+ return true;
1469
+ return _assertGuard_1._assertGuard(_exceptionable, {
1470
+ method: "typia.createAssertEquals",
1471
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1472
+ expected: "undefined",
1473
+ value: value
1474
+ }, _errorFactory);
1475
+ })));
1476
+ const _ao41 = (input, _path, _exceptionable = true) => ("clock" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
1477
+ method: "typia.createAssertEquals",
1478
+ path: _path + ".actor",
1479
+ expected: "\"clock\"",
1480
+ value: input.actor
1481
+ }, _errorFactory)) && ("set" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
1482
+ method: "typia.createAssertEquals",
1483
+ path: _path + ".action",
1484
+ expected: "\"set\"",
1485
+ value: input.action
1486
+ }, _errorFactory)) && ("string" === typeof input.at && (_isFormatDateTime_1._isFormatDateTime(input.at) || _assertGuard_1._assertGuard(_exceptionable, {
1487
+ method: "typia.createAssertEquals",
1488
+ path: _path + ".at",
1489
+ expected: "string & Format<\"date-time\">",
1490
+ value: input.at
1491
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1492
+ method: "typia.createAssertEquals",
1493
+ path: _path + ".at",
1494
+ expected: "(string & Format<\"date-time\">)",
1495
+ value: input.at
1496
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1497
+ if (["actor", "action", "at"].some(prop => key === prop))
1498
+ return true;
1499
+ const value = input[key];
1500
+ if (undefined === value)
1501
+ return true;
1502
+ return _assertGuard_1._assertGuard(_exceptionable, {
1503
+ method: "typia.createAssertEquals",
1504
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1505
+ expected: "undefined",
1506
+ value: value
1507
+ }, _errorFactory);
1508
+ })));
1509
+ const _ao42 = (input, _path, _exceptionable = true) => (undefined === input.journal || ("object" === typeof input.journal && null !== input.journal && false === Array.isArray(input.journal) || _assertGuard_1._assertGuard(_exceptionable, {
1510
+ method: "typia.createAssertEquals",
1511
+ path: _path + ".journal",
1512
+ expected: "(Readonly<Record<string, readonly CommercePurchaseState[]>> | undefined)",
1513
+ value: input.journal
1514
+ }, _errorFactory)) && _ao43(input.journal, _path + ".journal", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1515
+ method: "typia.createAssertEquals",
1516
+ path: _path + ".journal",
1517
+ expected: "(Readonly<Record<string, readonly CommercePurchaseState[]>> | undefined)",
1518
+ value: input.journal
1519
+ }, _errorFactory)) && (undefined === input.verifyRequests || (Array.isArray(input.verifyRequests) || _assertGuard_1._assertGuard(_exceptionable, {
1520
+ method: "typia.createAssertEquals",
1521
+ path: _path + ".verifyRequests",
1522
+ expected: "(ReadonlyArray<CommerceConformanceVerifyRequestExpectation> | undefined)",
1523
+ value: input.verifyRequests
1524
+ }, _errorFactory)) && input.verifyRequests.every((elem, _index23) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1525
+ method: "typia.createAssertEquals",
1526
+ path: _path + ".verifyRequests[" + _index23 + "]",
1527
+ expected: "CommerceConformanceVerifyRequestExpectation",
1528
+ value: elem
1529
+ }, _errorFactory)) && _ao44(elem, _path + ".verifyRequests[" + _index23 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1530
+ method: "typia.createAssertEquals",
1531
+ path: _path + ".verifyRequests[" + _index23 + "]",
1532
+ expected: "CommerceConformanceVerifyRequestExpectation",
1533
+ value: elem
1534
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1535
+ method: "typia.createAssertEquals",
1536
+ path: _path + ".verifyRequests",
1537
+ expected: "(ReadonlyArray<CommerceConformanceVerifyRequestExpectation> | undefined)",
1538
+ value: input.verifyRequests
1539
+ }, _errorFactory)) && (undefined === input.ledger || (Array.isArray(input.ledger) || _assertGuard_1._assertGuard(_exceptionable, {
1540
+ method: "typia.createAssertEquals",
1541
+ path: _path + ".ledger",
1542
+ expected: "(ReadonlyArray<CommerceConformanceLedgerEntryExpectation> | undefined)",
1543
+ value: input.ledger
1544
+ }, _errorFactory)) && input.ledger.every((elem, _index24) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1545
+ method: "typia.createAssertEquals",
1546
+ path: _path + ".ledger[" + _index24 + "]",
1547
+ expected: "CommerceConformanceLedgerEntryExpectation",
1548
+ value: elem
1549
+ }, _errorFactory)) && _ao45(elem, _path + ".ledger[" + _index24 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1550
+ method: "typia.createAssertEquals",
1551
+ path: _path + ".ledger[" + _index24 + "]",
1552
+ expected: "CommerceConformanceLedgerEntryExpectation",
1553
+ value: elem
1554
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1555
+ method: "typia.createAssertEquals",
1556
+ path: _path + ".ledger",
1557
+ expected: "(ReadonlyArray<CommerceConformanceLedgerEntryExpectation> | undefined)",
1558
+ value: input.ledger
1559
+ }, _errorFactory)) && (undefined === input.finishCalls || (Array.isArray(input.finishCalls) || _assertGuard_1._assertGuard(_exceptionable, {
1560
+ method: "typia.createAssertEquals",
1561
+ path: _path + ".finishCalls",
1562
+ expected: "(ReadonlyArray<CommerceConformanceFinishCallExpectation> | undefined)",
1563
+ value: input.finishCalls
1564
+ }, _errorFactory)) && input.finishCalls.every((elem, _index25) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1565
+ method: "typia.createAssertEquals",
1566
+ path: _path + ".finishCalls[" + _index25 + "]",
1567
+ expected: "CommerceConformanceFinishCallExpectation",
1568
+ value: elem
1569
+ }, _errorFactory)) && _ao46(elem, _path + ".finishCalls[" + _index25 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1570
+ method: "typia.createAssertEquals",
1571
+ path: _path + ".finishCalls[" + _index25 + "]",
1572
+ expected: "CommerceConformanceFinishCallExpectation",
1573
+ value: elem
1574
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1575
+ method: "typia.createAssertEquals",
1576
+ path: _path + ".finishCalls",
1577
+ expected: "(ReadonlyArray<CommerceConformanceFinishCallExpectation> | undefined)",
1578
+ value: input.finishCalls
1579
+ }, _errorFactory)) && (undefined === input.available || (Array.isArray(input.available) || _assertGuard_1._assertGuard(_exceptionable, {
1580
+ method: "typia.createAssertEquals",
1581
+ path: _path + ".available",
1582
+ expected: "(ReadonlyArray<CommerceConformanceAvailableExpectation> | undefined)",
1583
+ value: input.available
1584
+ }, _errorFactory)) && input.available.every((elem, _index26) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1585
+ method: "typia.createAssertEquals",
1586
+ path: _path + ".available[" + _index26 + "]",
1587
+ expected: "CommerceConformanceAvailableExpectation",
1588
+ value: elem
1589
+ }, _errorFactory)) && _ao47(elem, _path + ".available[" + _index26 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1590
+ method: "typia.createAssertEquals",
1591
+ path: _path + ".available[" + _index26 + "]",
1592
+ expected: "CommerceConformanceAvailableExpectation",
1593
+ value: elem
1594
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1595
+ method: "typia.createAssertEquals",
1596
+ path: _path + ".available",
1597
+ expected: "(ReadonlyArray<CommerceConformanceAvailableExpectation> | undefined)",
1598
+ value: input.available
1599
+ }, _errorFactory)) && (undefined === input.entitlements || (Array.isArray(input.entitlements) || _assertGuard_1._assertGuard(_exceptionable, {
1600
+ method: "typia.createAssertEquals",
1601
+ path: _path + ".entitlements",
1602
+ expected: "(ReadonlyArray<CommerceConformanceEntitlementExpectation> | undefined)",
1603
+ value: input.entitlements
1604
+ }, _errorFactory)) && input.entitlements.every((elem, _index27) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1605
+ method: "typia.createAssertEquals",
1606
+ path: _path + ".entitlements[" + _index27 + "]",
1607
+ expected: "CommerceConformanceEntitlementExpectation",
1608
+ value: elem
1609
+ }, _errorFactory)) && _ao48(elem, _path + ".entitlements[" + _index27 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1610
+ method: "typia.createAssertEquals",
1611
+ path: _path + ".entitlements[" + _index27 + "]",
1612
+ expected: "CommerceConformanceEntitlementExpectation",
1613
+ value: elem
1614
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1615
+ method: "typia.createAssertEquals",
1616
+ path: _path + ".entitlements",
1617
+ expected: "(ReadonlyArray<CommerceConformanceEntitlementExpectation> | undefined)",
1618
+ value: input.entitlements
1619
+ }, _errorFactory)) && (undefined === input.lots || (Array.isArray(input.lots) || _assertGuard_1._assertGuard(_exceptionable, {
1620
+ method: "typia.createAssertEquals",
1621
+ path: _path + ".lots",
1622
+ expected: "(ReadonlyArray<CommerceConformanceLotExpectation> | undefined)",
1623
+ value: input.lots
1624
+ }, _errorFactory)) && input.lots.every((elem, _index28) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1625
+ method: "typia.createAssertEquals",
1626
+ path: _path + ".lots[" + _index28 + "]",
1627
+ expected: "CommerceConformanceLotExpectation",
1628
+ value: elem
1629
+ }, _errorFactory)) && _ao49(elem, _path + ".lots[" + _index28 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1630
+ method: "typia.createAssertEquals",
1631
+ path: _path + ".lots[" + _index28 + "]",
1632
+ expected: "CommerceConformanceLotExpectation",
1633
+ value: elem
1634
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1635
+ method: "typia.createAssertEquals",
1636
+ path: _path + ".lots",
1637
+ expected: "(ReadonlyArray<CommerceConformanceLotExpectation> | undefined)",
1638
+ value: input.lots
1639
+ }, _errorFactory)) && (undefined === input.balances || ("object" === typeof input.balances && null !== input.balances && false === Array.isArray(input.balances) || _assertGuard_1._assertGuard(_exceptionable, {
1640
+ method: "typia.createAssertEquals",
1641
+ path: _path + ".balances",
1642
+ expected: "(Readonly<Record<string, Readonly<Record<string, number>>>> | undefined)",
1643
+ value: input.balances
1644
+ }, _errorFactory)) && _ao52(input.balances, _path + ".balances", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1645
+ method: "typia.createAssertEquals",
1646
+ path: _path + ".balances",
1647
+ expected: "(Readonly<Record<string, Readonly<Record<string, number>>>> | undefined)",
1648
+ value: input.balances
1649
+ }, _errorFactory)) && (undefined === input.debits || (Array.isArray(input.debits) || _assertGuard_1._assertGuard(_exceptionable, {
1650
+ method: "typia.createAssertEquals",
1651
+ path: _path + ".debits",
1652
+ expected: "(ReadonlyArray<CommerceConformanceScheduledDebitExpectation> | undefined)",
1653
+ value: input.debits
1654
+ }, _errorFactory)) && input.debits.every((elem, _index29) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1655
+ method: "typia.createAssertEquals",
1656
+ path: _path + ".debits[" + _index29 + "]",
1657
+ expected: "CommerceConformanceScheduledDebitExpectation",
1658
+ value: elem
1659
+ }, _errorFactory)) && _ao54(elem, _path + ".debits[" + _index29 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1660
+ method: "typia.createAssertEquals",
1661
+ path: _path + ".debits[" + _index29 + "]",
1662
+ expected: "CommerceConformanceScheduledDebitExpectation",
1663
+ value: elem
1664
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1665
+ method: "typia.createAssertEquals",
1666
+ path: _path + ".debits",
1667
+ expected: "(ReadonlyArray<CommerceConformanceScheduledDebitExpectation> | undefined)",
1668
+ value: input.debits
1669
+ }, _errorFactory)) && (undefined === input.events || (Array.isArray(input.events) || _assertGuard_1._assertGuard(_exceptionable, {
1670
+ method: "typia.createAssertEquals",
1671
+ path: _path + ".events",
1672
+ expected: "(ReadonlyArray<CommerceConformanceSubscriptionEventExpectation> | undefined)",
1673
+ value: input.events
1674
+ }, _errorFactory)) && input.events.every((elem, _index30) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1675
+ method: "typia.createAssertEquals",
1676
+ path: _path + ".events[" + _index30 + "]",
1677
+ expected: "CommerceConformanceSubscriptionEventExpectation",
1678
+ value: elem
1679
+ }, _errorFactory)) && _ao55(elem, _path + ".events[" + _index30 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1680
+ method: "typia.createAssertEquals",
1681
+ path: _path + ".events[" + _index30 + "]",
1682
+ expected: "CommerceConformanceSubscriptionEventExpectation",
1683
+ value: elem
1684
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1685
+ method: "typia.createAssertEquals",
1686
+ path: _path + ".events",
1687
+ expected: "(ReadonlyArray<CommerceConformanceSubscriptionEventExpectation> | undefined)",
1688
+ value: input.events
1689
+ }, _errorFactory)) && (undefined === input.activeSubscriptions || (Array.isArray(input.activeSubscriptions) || _assertGuard_1._assertGuard(_exceptionable, {
1690
+ method: "typia.createAssertEquals",
1691
+ path: _path + ".activeSubscriptions",
1692
+ expected: "(ReadonlyArray<CommerceConformanceActiveSubscriptionExpectation> | undefined)",
1693
+ value: input.activeSubscriptions
1694
+ }, _errorFactory)) && input.activeSubscriptions.every((elem, _index31) => ("object" === typeof elem && null !== elem || _assertGuard_1._assertGuard(_exceptionable, {
1695
+ method: "typia.createAssertEquals",
1696
+ path: _path + ".activeSubscriptions[" + _index31 + "]",
1697
+ expected: "CommerceConformanceActiveSubscriptionExpectation",
1698
+ value: elem
1699
+ }, _errorFactory)) && _ao56(elem, _path + ".activeSubscriptions[" + _index31 + "]", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
1700
+ method: "typia.createAssertEquals",
1701
+ path: _path + ".activeSubscriptions[" + _index31 + "]",
1702
+ expected: "CommerceConformanceActiveSubscriptionExpectation",
1703
+ value: elem
1704
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1705
+ method: "typia.createAssertEquals",
1706
+ path: _path + ".activeSubscriptions",
1707
+ expected: "(ReadonlyArray<CommerceConformanceActiveSubscriptionExpectation> | undefined)",
1708
+ value: input.activeSubscriptions
1709
+ }, _errorFactory)) && (undefined === input.purchaseUiOpened || "number" === typeof input.purchaseUiOpened && (_isTypeUint32_1._isTypeUint32(input.purchaseUiOpened) || _assertGuard_1._assertGuard(_exceptionable, {
1710
+ method: "typia.createAssertEquals",
1711
+ path: _path + ".purchaseUiOpened",
1712
+ expected: "number & Type<\"uint32\">",
1713
+ value: input.purchaseUiOpened
1714
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1715
+ method: "typia.createAssertEquals",
1716
+ path: _path + ".purchaseUiOpened",
1717
+ expected: "((number & Type<\"uint32\">) | undefined)",
1718
+ value: input.purchaseUiOpened
1719
+ }, _errorFactory)) && (0 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1720
+ if (["journal", "verifyRequests", "ledger", "finishCalls", "available", "entitlements", "lots", "balances", "debits", "events", "activeSubscriptions", "purchaseUiOpened"].some(prop => key === prop))
1721
+ return true;
1722
+ const value = input[key];
1723
+ if (undefined === value)
1724
+ return true;
1725
+ return _assertGuard_1._assertGuard(_exceptionable, {
1726
+ method: "typia.createAssertEquals",
1727
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1728
+ expected: "undefined",
1729
+ value: value
1730
+ }, _errorFactory);
1731
+ })));
1732
+ const _ao43 = (input, _path, _exceptionable = true) => false === _exceptionable || Object.keys(input).every(key => {
1733
+ const value = input[key];
1734
+ if (undefined === value)
1735
+ return true;
1736
+ return (Array.isArray(value) || _assertGuard_1._assertGuard(_exceptionable, {
1737
+ method: "typia.createAssertEquals",
1738
+ path: _path + __typia_transform__accessExpressionAsString(key),
1739
+ expected: "ReadonlyArray<CommercePurchaseState>",
1740
+ value: value
1741
+ }, _errorFactory)) && value.every((elem, _index32) => true === _av1.has(elem) || _assertGuard_1._assertGuard(_exceptionable, {
1742
+ method: "typia.createAssertEquals",
1743
+ path: _path + __typia_transform__accessExpressionAsString(key) + "[" + _index32 + "]",
1744
+ expected: _ae4,
1745
+ value: elem
1746
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1747
+ method: "typia.createAssertEquals",
1748
+ path: _path + __typia_transform__accessExpressionAsString(key),
1749
+ expected: "ReadonlyArray<CommercePurchaseState>",
1750
+ value: value
1751
+ }, _errorFactory);
1752
+ });
1753
+ const _ao44 = (input, _path, _exceptionable = true) => ("string" === typeof input.idempotencyKey && (1 <= input.idempotencyKey.length || _assertGuard_1._assertGuard(_exceptionable, {
1754
+ method: "typia.createAssertEquals",
1755
+ path: _path + ".idempotencyKey",
1756
+ expected: "string & MinLength<1>",
1757
+ value: input.idempotencyKey
1758
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1759
+ method: "typia.createAssertEquals",
1760
+ path: _path + ".idempotencyKey",
1761
+ expected: "(string & MinLength<1>)",
1762
+ value: input.idempotencyKey
1763
+ }, _errorFactory)) && ("string" === typeof input.store && (1 <= input.store.length || _assertGuard_1._assertGuard(_exceptionable, {
1764
+ method: "typia.createAssertEquals",
1765
+ path: _path + ".store",
1766
+ expected: "string & MinLength<1>",
1767
+ value: input.store
1768
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1769
+ method: "typia.createAssertEquals",
1770
+ path: _path + ".store",
1771
+ expected: "(string & MinLength<1>)",
1772
+ value: input.store
1773
+ }, _errorFactory)) && ("string" === typeof input.transactionId && (1 <= input.transactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
1774
+ method: "typia.createAssertEquals",
1775
+ path: _path + ".transactionId",
1776
+ expected: "string & MinLength<1>",
1777
+ value: input.transactionId
1778
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1779
+ method: "typia.createAssertEquals",
1780
+ path: _path + ".transactionId",
1781
+ expected: "(string & MinLength<1>)",
1782
+ value: input.transactionId
1783
+ }, _errorFactory)) && ("string" === typeof input.token && (1 <= input.token.length || _assertGuard_1._assertGuard(_exceptionable, {
1784
+ method: "typia.createAssertEquals",
1785
+ path: _path + ".token",
1786
+ expected: "string & MinLength<1>",
1787
+ value: input.token
1788
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1789
+ method: "typia.createAssertEquals",
1790
+ path: _path + ".token",
1791
+ expected: "(string & MinLength<1>)",
1792
+ value: input.token
1793
+ }, _errorFactory)) && (4 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1794
+ if (["idempotencyKey", "store", "transactionId", "token"].some(prop => key === prop))
1795
+ return true;
1796
+ const value = input[key];
1797
+ if (undefined === value)
1798
+ return true;
1799
+ return _assertGuard_1._assertGuard(_exceptionable, {
1800
+ method: "typia.createAssertEquals",
1801
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1802
+ expected: "undefined",
1803
+ value: value
1804
+ }, _errorFactory);
1805
+ })));
1806
+ const _ao45 = (input, _path, _exceptionable = true) => ("string" === typeof input.entryId && (1 <= input.entryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1807
+ method: "typia.createAssertEquals",
1808
+ path: _path + ".entryId",
1809
+ expected: "string & MinLength<1>",
1810
+ value: input.entryId
1811
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1812
+ method: "typia.createAssertEquals",
1813
+ path: _path + ".entryId",
1814
+ expected: "(string & MinLength<1>)",
1815
+ value: input.entryId
1816
+ }, _errorFactory)) && ("grant" === input.type || "period" === input.type || "revoke" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
1817
+ method: "typia.createAssertEquals",
1818
+ path: _path + ".type",
1819
+ expected: "(\"grant\" | \"period\" | \"revoke\")",
1820
+ value: input.type
1821
+ }, _errorFactory)) && ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
1822
+ method: "typia.createAssertEquals",
1823
+ path: _path + ".logicalId",
1824
+ expected: "string & CommerceMinLength<1>",
1825
+ value: input.logicalId
1826
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1827
+ method: "typia.createAssertEquals",
1828
+ path: _path + ".logicalId",
1829
+ expected: "(string & CommerceMinLength<1>)",
1830
+ value: input.logicalId
1831
+ }, _errorFactory)) && (undefined === input.reverses || "string" === typeof input.reverses && (1 <= input.reverses.length || _assertGuard_1._assertGuard(_exceptionable, {
1832
+ method: "typia.createAssertEquals",
1833
+ path: _path + ".reverses",
1834
+ expected: "string & MinLength<1>",
1835
+ value: input.reverses
1836
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1837
+ method: "typia.createAssertEquals",
1838
+ path: _path + ".reverses",
1839
+ expected: "((string & MinLength<1>) | undefined)",
1840
+ value: input.reverses
1841
+ }, _errorFactory)) && (undefined === input.reason || "string" === typeof input.reason && (1 <= input.reason.length || _assertGuard_1._assertGuard(_exceptionable, {
1842
+ method: "typia.createAssertEquals",
1843
+ path: _path + ".reason",
1844
+ expected: "string & MinLength<1>",
1845
+ value: input.reason
1846
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1847
+ method: "typia.createAssertEquals",
1848
+ path: _path + ".reason",
1849
+ expected: "((string & MinLength<1>) | undefined)",
1850
+ value: input.reason
1851
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1852
+ if (["entryId", "type", "logicalId", "reverses", "reason"].some(prop => key === prop))
1853
+ return true;
1854
+ const value = input[key];
1855
+ if (undefined === value)
1856
+ return true;
1857
+ return _assertGuard_1._assertGuard(_exceptionable, {
1858
+ method: "typia.createAssertEquals",
1859
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1860
+ expected: "undefined",
1861
+ value: value
1862
+ }, _errorFactory);
1863
+ })));
1864
+ const _ao46 = (input, _path, _exceptionable = true) => ("client" === input.by || "host" === input.by || _assertGuard_1._assertGuard(_exceptionable, {
1865
+ method: "typia.createAssertEquals",
1866
+ path: _path + ".by",
1867
+ expected: "(\"client\" | \"host\")",
1868
+ value: input.by
1869
+ }, _errorFactory)) && ("string" === typeof input.transactionId && (1 <= input.transactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
1870
+ method: "typia.createAssertEquals",
1871
+ path: _path + ".transactionId",
1872
+ expected: "string & MinLength<1>",
1873
+ value: input.transactionId
1874
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1875
+ method: "typia.createAssertEquals",
1876
+ path: _path + ".transactionId",
1877
+ expected: "(string & MinLength<1>)",
1878
+ value: input.transactionId
1879
+ }, _errorFactory)) && ("string" === typeof input.ledgerEntryId && (1 <= input.ledgerEntryId.length || _assertGuard_1._assertGuard(_exceptionable, {
1880
+ method: "typia.createAssertEquals",
1881
+ path: _path + ".ledgerEntryId",
1882
+ expected: "string & MinLength<1>",
1883
+ value: input.ledgerEntryId
1884
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1885
+ method: "typia.createAssertEquals",
1886
+ path: _path + ".ledgerEntryId",
1887
+ expected: "(string & MinLength<1>)",
1888
+ value: input.ledgerEntryId
1889
+ }, _errorFactory)) && ("boolean" === typeof input.isConsumable || _assertGuard_1._assertGuard(_exceptionable, {
1890
+ method: "typia.createAssertEquals",
1891
+ path: _path + ".isConsumable",
1892
+ expected: "boolean",
1893
+ value: input.isConsumable
1894
+ }, _errorFactory)) && (true === _av2.has(input.result) || _assertGuard_1._assertGuard(_exceptionable, {
1895
+ method: "typia.createAssertEquals",
1896
+ path: _path + ".result",
1897
+ expected: _ae5,
1898
+ value: input.result
1899
+ }, _errorFactory)) && (5 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1900
+ if (["by", "transactionId", "ledgerEntryId", "isConsumable", "result"].some(prop => key === prop))
1901
+ return true;
1902
+ const value = input[key];
1903
+ if (undefined === value)
1904
+ return true;
1905
+ return _assertGuard_1._assertGuard(_exceptionable, {
1906
+ method: "typia.createAssertEquals",
1907
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1908
+ expected: "undefined",
1909
+ value: value
1910
+ }, _errorFactory);
1911
+ })));
1912
+ const _ao47 = (input, _path, _exceptionable = true) => ("string" === typeof input.transactionId && (1 <= input.transactionId.length || _assertGuard_1._assertGuard(_exceptionable, {
1913
+ method: "typia.createAssertEquals",
1914
+ path: _path + ".transactionId",
1915
+ expected: "string & MinLength<1>",
1916
+ value: input.transactionId
1917
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1918
+ method: "typia.createAssertEquals",
1919
+ path: _path + ".transactionId",
1920
+ expected: "(string & MinLength<1>)",
1921
+ value: input.transactionId
1922
+ }, _errorFactory)) && (undefined === input.storeSku || "string" === typeof input.storeSku && (1 <= input.storeSku.length || _assertGuard_1._assertGuard(_exceptionable, {
1923
+ method: "typia.createAssertEquals",
1924
+ path: _path + ".storeSku",
1925
+ expected: "string & MinLength<1>",
1926
+ value: input.storeSku
1927
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1928
+ method: "typia.createAssertEquals",
1929
+ path: _path + ".storeSku",
1930
+ expected: "((string & MinLength<1>) | undefined)",
1931
+ value: input.storeSku
1932
+ }, _errorFactory)) && (undefined === input.state || "pending" === input.state || "purchased" === input.state || "revoked" === input.state || _assertGuard_1._assertGuard(_exceptionable, {
1933
+ method: "typia.createAssertEquals",
1934
+ path: _path + ".state",
1935
+ expected: "(\"pending\" | \"purchased\" | \"revoked\" | undefined)",
1936
+ value: input.state
1937
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1938
+ if (["transactionId", "storeSku", "state"].some(prop => key === prop))
1939
+ return true;
1940
+ const value = input[key];
1941
+ if (undefined === value)
1942
+ return true;
1943
+ return _assertGuard_1._assertGuard(_exceptionable, {
1944
+ method: "typia.createAssertEquals",
1945
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1946
+ expected: "undefined",
1947
+ value: value
1948
+ }, _errorFactory);
1949
+ })));
1950
+ const _ao48 = (input, _path, _exceptionable = true) => ("string" === typeof input.id && (1 <= input.id.length || _assertGuard_1._assertGuard(_exceptionable, {
1951
+ method: "typia.createAssertEquals",
1952
+ path: _path + ".id",
1953
+ expected: "string & MinLength<1>",
1954
+ value: input.id
1955
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1956
+ method: "typia.createAssertEquals",
1957
+ path: _path + ".id",
1958
+ expected: "(string & MinLength<1>)",
1959
+ value: input.id
1960
+ }, _errorFactory)) && (undefined === input.logicalId || "string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
1961
+ method: "typia.createAssertEquals",
1962
+ path: _path + ".logicalId",
1963
+ expected: "string & CommerceMinLength<1>",
1964
+ value: input.logicalId
1965
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1966
+ method: "typia.createAssertEquals",
1967
+ path: _path + ".logicalId",
1968
+ expected: "((string & CommerceMinLength<1>) | undefined)",
1969
+ value: input.logicalId
1970
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
1971
+ if (["id", "logicalId"].some(prop => key === prop))
1972
+ return true;
1973
+ const value = input[key];
1974
+ if (undefined === value)
1975
+ return true;
1976
+ return _assertGuard_1._assertGuard(_exceptionable, {
1977
+ method: "typia.createAssertEquals",
1978
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
1979
+ expected: "undefined",
1980
+ value: value
1981
+ }, _errorFactory);
1982
+ })));
1983
+ const _ao49 = (input, _path, _exceptionable = true) => ("string" === typeof input.lotId && (1 <= input.lotId.length || _assertGuard_1._assertGuard(_exceptionable, {
1984
+ method: "typia.createAssertEquals",
1985
+ path: _path + ".lotId",
1986
+ expected: "string & MinLength<1>",
1987
+ value: input.lotId
1988
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1989
+ method: "typia.createAssertEquals",
1990
+ path: _path + ".lotId",
1991
+ expected: "(string & MinLength<1>)",
1992
+ value: input.lotId
1993
+ }, _errorFactory)) && (undefined === input.currency || "string" === typeof input.currency && (1 <= input.currency.length || _assertGuard_1._assertGuard(_exceptionable, {
1994
+ method: "typia.createAssertEquals",
1995
+ path: _path + ".currency",
1996
+ expected: "string & MinLength<1>",
1997
+ value: input.currency
1998
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
1999
+ method: "typia.createAssertEquals",
2000
+ path: _path + ".currency",
2001
+ expected: "((string & MinLength<1>) | undefined)",
2002
+ value: input.currency
2003
+ }, _errorFactory)) && (undefined === input.amount || "number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
2004
+ method: "typia.createAssertEquals",
2005
+ path: _path + ".amount",
2006
+ expected: "number & ExclusiveMinimum<0>",
2007
+ value: input.amount
2008
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2009
+ method: "typia.createAssertEquals",
2010
+ path: _path + ".amount",
2011
+ expected: "((number & ExclusiveMinimum<0>) | undefined)",
2012
+ value: input.amount
2013
+ }, _errorFactory)) && ("number" === typeof input.remaining && (0 <= input.remaining || _assertGuard_1._assertGuard(_exceptionable, {
2014
+ method: "typia.createAssertEquals",
2015
+ path: _path + ".remaining",
2016
+ expected: "number & Minimum<0>",
2017
+ value: input.remaining
2018
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2019
+ method: "typia.createAssertEquals",
2020
+ path: _path + ".remaining",
2021
+ expected: "(number & Minimum<0>)",
2022
+ value: input.remaining
2023
+ }, _errorFactory)) && (undefined === input.origin || ("object" === typeof input.origin && null !== input.origin || _assertGuard_1._assertGuard(_exceptionable, {
2024
+ method: "typia.createAssertEquals",
2025
+ path: _path + ".origin",
2026
+ expected: "(CreditLotOrigin | undefined)",
2027
+ value: input.origin
2028
+ }, _errorFactory)) && _ao35(input.origin, _path + ".origin", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
2029
+ method: "typia.createAssertEquals",
2030
+ path: _path + ".origin",
2031
+ expected: "(CreditLotOrigin | undefined)",
2032
+ value: input.origin
2033
+ }, _errorFactory)) && (undefined === input.spendScope || ("object" === typeof input.spendScope && null !== input.spendScope || _assertGuard_1._assertGuard(_exceptionable, {
2034
+ method: "typia.createAssertEquals",
2035
+ path: _path + ".spendScope",
2036
+ expected: "(undefined | { readonly kind: \"cross-title\"; } | { readonly kind: \"title\"; readonly titleId: NonEmptyString; })",
2037
+ value: input.spendScope
2038
+ }, _errorFactory)) && _au3(input.spendScope, _path + ".spendScope", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
2039
+ method: "typia.createAssertEquals",
2040
+ path: _path + ".spendScope",
2041
+ expected: "(undefined | { readonly kind: \"cross-title\"; } | { readonly kind: \"title\"; readonly titleId: NonEmptyString; })",
2042
+ value: input.spendScope
2043
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2044
+ if (["lotId", "currency", "amount", "remaining", "origin", "spendScope"].some(prop => key === prop))
2045
+ return true;
2046
+ const value = input[key];
2047
+ if (undefined === value)
2048
+ return true;
2049
+ return _assertGuard_1._assertGuard(_exceptionable, {
2050
+ method: "typia.createAssertEquals",
2051
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2052
+ expected: "undefined",
2053
+ value: value
2054
+ }, _errorFactory);
2055
+ })));
2056
+ const _ao5 = (input, _path, _exceptionable = true) => ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
2057
+ method: "typia.createAssertEquals",
2058
+ path: _path + ".logicalId",
2059
+ expected: "string & CommerceMinLength<1>",
2060
+ value: input.logicalId
2061
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2062
+ method: "typia.createAssertEquals",
2063
+ path: _path + ".logicalId",
2064
+ expected: "(string & CommerceMinLength<1>)",
2065
+ value: input.logicalId
2066
+ }, _errorFactory)) && ("consumable" === input.kind || "durable" === input.kind || "subscription" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
2067
+ method: "typia.createAssertEquals",
2068
+ path: _path + ".kind",
2069
+ expected: "(\"consumable\" | \"durable\" | \"subscription\")",
2070
+ value: input.kind
2071
+ }, _errorFactory)) && ("string" === typeof input.storeSku && (1 <= input.storeSku.length || _assertGuard_1._assertGuard(_exceptionable, {
2072
+ method: "typia.createAssertEquals",
2073
+ path: _path + ".storeSku",
2074
+ expected: "string & MinLength<1>",
2075
+ value: input.storeSku
2076
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2077
+ method: "typia.createAssertEquals",
2078
+ path: _path + ".storeSku",
2079
+ expected: "(string & MinLength<1>)",
2080
+ value: input.storeSku
2081
+ }, _errorFactory)) && (undefined === input.membership || ("object" === typeof input.membership && null !== input.membership || _assertGuard_1._assertGuard(_exceptionable, {
2082
+ method: "typia.createAssertEquals",
2083
+ path: _path + ".membership",
2084
+ expected: "(CreditMembershipTerms | undefined)",
2085
+ value: input.membership
2086
+ }, _errorFactory)) && _ao6(input.membership, _path + ".membership", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
2087
+ method: "typia.createAssertEquals",
2088
+ path: _path + ".membership",
2089
+ expected: "(CreditMembershipTerms | undefined)",
2090
+ value: input.membership
2091
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2092
+ if (["logicalId", "kind", "storeSku", "membership"].some(prop => key === prop))
2093
+ return true;
2094
+ const value = input[key];
2095
+ if (undefined === value)
2096
+ return true;
2097
+ return _assertGuard_1._assertGuard(_exceptionable, {
2098
+ method: "typia.createAssertEquals",
2099
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2100
+ expected: "undefined",
2101
+ value: value
2102
+ }, _errorFactory);
2103
+ })));
2104
+ const _ao50 = (input, _path, _exceptionable = true) => ("title" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
2105
+ method: "typia.createAssertEquals",
2106
+ path: _path + ".kind",
2107
+ expected: "\"title\"",
2108
+ value: input.kind
2109
+ }, _errorFactory)) && ("string" === typeof input.titleId && (1 <= input.titleId.length || _assertGuard_1._assertGuard(_exceptionable, {
2110
+ method: "typia.createAssertEquals",
2111
+ path: _path + ".titleId",
2112
+ expected: "string & CommerceMinLength<1>",
2113
+ value: input.titleId
2114
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2115
+ method: "typia.createAssertEquals",
2116
+ path: _path + ".titleId",
2117
+ expected: "(string & CommerceMinLength<1>)",
2118
+ value: input.titleId
2119
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2120
+ if (["kind", "titleId"].some(prop => key === prop))
2121
+ return true;
2122
+ const value = input[key];
2123
+ if (undefined === value)
2124
+ return true;
2125
+ return _assertGuard_1._assertGuard(_exceptionable, {
2126
+ method: "typia.createAssertEquals",
2127
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2128
+ expected: "undefined",
2129
+ value: value
2130
+ }, _errorFactory);
2131
+ })));
2132
+ const _ao51 = (input, _path, _exceptionable = true) => ("cross-title" === input.kind || _assertGuard_1._assertGuard(_exceptionable, {
2133
+ method: "typia.createAssertEquals",
2134
+ path: _path + ".kind",
2135
+ expected: "\"cross-title\"",
2136
+ value: input.kind
2137
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2138
+ if (["kind"].some(prop => key === prop))
2139
+ return true;
2140
+ const value = input[key];
2141
+ if (undefined === value)
2142
+ return true;
2143
+ return _assertGuard_1._assertGuard(_exceptionable, {
2144
+ method: "typia.createAssertEquals",
2145
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2146
+ expected: "undefined",
2147
+ value: value
2148
+ }, _errorFactory);
2149
+ })));
2150
+ const _ao52 = (input, _path, _exceptionable = true) => false === _exceptionable || Object.keys(input).every(key => {
2151
+ const value = input[key];
2152
+ if (undefined === value)
2153
+ return true;
2154
+ return ("object" === typeof value && null !== value && false === Array.isArray(value) || _assertGuard_1._assertGuard(_exceptionable, {
2155
+ method: "typia.createAssertEquals",
2156
+ path: _path + __typia_transform__accessExpressionAsString(key),
2157
+ expected: "Readonly<Record<string, number>>",
2158
+ value: value
2159
+ }, _errorFactory)) && _ao53(value, _path + __typia_transform__accessExpressionAsString(key), true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
2160
+ method: "typia.createAssertEquals",
2161
+ path: _path + __typia_transform__accessExpressionAsString(key),
2162
+ expected: "Readonly<Record<string, number>>",
2163
+ value: value
2164
+ }, _errorFactory);
2165
+ });
2166
+ const _ao53 = (input, _path, _exceptionable = true) => false === _exceptionable || Object.keys(input).every(key => {
2167
+ const value = input[key];
2168
+ if (undefined === value)
2169
+ return true;
2170
+ return "number" === typeof value || _assertGuard_1._assertGuard(_exceptionable, {
2171
+ method: "typia.createAssertEquals",
2172
+ path: _path + __typia_transform__accessExpressionAsString(key),
2173
+ expected: "number",
2174
+ value: value
2175
+ }, _errorFactory);
2176
+ });
2177
+ const _ao54 = (input, _path, _exceptionable = true) => ("string" === typeof input.idempotencyKey && (1 <= input.idempotencyKey.length || _assertGuard_1._assertGuard(_exceptionable, {
2178
+ method: "typia.createAssertEquals",
2179
+ path: _path + ".idempotencyKey",
2180
+ expected: "string & MinLength<1>",
2181
+ value: input.idempotencyKey
2182
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2183
+ method: "typia.createAssertEquals",
2184
+ path: _path + ".idempotencyKey",
2185
+ expected: "(string & MinLength<1>)",
2186
+ value: input.idempotencyKey
2187
+ }, _errorFactory)) && ("string" === typeof input.lotId && (1 <= input.lotId.length || _assertGuard_1._assertGuard(_exceptionable, {
2188
+ method: "typia.createAssertEquals",
2189
+ path: _path + ".lotId",
2190
+ expected: "string & MinLength<1>",
2191
+ value: input.lotId
2192
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2193
+ method: "typia.createAssertEquals",
2194
+ path: _path + ".lotId",
2195
+ expected: "(string & MinLength<1>)",
2196
+ value: input.lotId
2197
+ }, _errorFactory)) && ("number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
2198
+ method: "typia.createAssertEquals",
2199
+ path: _path + ".amount",
2200
+ expected: "number & ExclusiveMinimum<0>",
2201
+ value: input.amount
2202
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2203
+ method: "typia.createAssertEquals",
2204
+ path: _path + ".amount",
2205
+ expected: "(number & ExclusiveMinimum<0>)",
2206
+ value: input.amount
2207
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2208
+ if (["idempotencyKey", "lotId", "amount"].some(prop => key === prop))
2209
+ return true;
2210
+ const value = input[key];
2211
+ if (undefined === value)
2212
+ return true;
2213
+ return _assertGuard_1._assertGuard(_exceptionable, {
2214
+ method: "typia.createAssertEquals",
2215
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2216
+ expected: "undefined",
2217
+ value: value
2218
+ }, _errorFactory);
2219
+ })));
2220
+ const _ao55 = (input, _path, _exceptionable = true) => ("subscriptionLapsed" === input.type || "subscriptionRenewed" === input.type || "subscriptionRevoked" === input.type || "subscriptionStarted" === input.type || _assertGuard_1._assertGuard(_exceptionable, {
2221
+ method: "typia.createAssertEquals",
2222
+ path: _path + ".type",
2223
+ expected: "(\"subscriptionLapsed\" | \"subscriptionRenewed\" | \"subscriptionRevoked\" | \"subscriptionStarted\")",
2224
+ value: input.type
2225
+ }, _errorFactory)) && ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
2226
+ method: "typia.createAssertEquals",
2227
+ path: _path + ".logicalId",
2228
+ expected: "string & CommerceMinLength<1>",
2229
+ value: input.logicalId
2230
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2231
+ method: "typia.createAssertEquals",
2232
+ path: _path + ".logicalId",
2233
+ expected: "(string & CommerceMinLength<1>)",
2234
+ value: input.logicalId
2235
+ }, _errorFactory)) && ("number" === typeof input.periodIndex && (_isTypeUint32_1._isTypeUint32(input.periodIndex) || _assertGuard_1._assertGuard(_exceptionable, {
2236
+ method: "typia.createAssertEquals",
2237
+ path: _path + ".periodIndex",
2238
+ expected: "number & Type<\"uint32\">",
2239
+ value: input.periodIndex
2240
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2241
+ method: "typia.createAssertEquals",
2242
+ path: _path + ".periodIndex",
2243
+ expected: "(number & Type<\"uint32\">)",
2244
+ value: input.periodIndex
2245
+ }, _errorFactory)) && ("string" === typeof input.expiresAt && (_isFormatDateTime_1._isFormatDateTime(input.expiresAt) || _assertGuard_1._assertGuard(_exceptionable, {
2246
+ method: "typia.createAssertEquals",
2247
+ path: _path + ".expiresAt",
2248
+ expected: "string & Format<\"date-time\">",
2249
+ value: input.expiresAt
2250
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2251
+ method: "typia.createAssertEquals",
2252
+ path: _path + ".expiresAt",
2253
+ expected: "(string & Format<\"date-time\">)",
2254
+ value: input.expiresAt
2255
+ }, _errorFactory)) && (undefined === input.reason || true === _av0.has(input.reason) || _assertGuard_1._assertGuard(_exceptionable, {
2256
+ method: "typia.createAssertEquals",
2257
+ path: _path + ".reason",
2258
+ expected: _ae6,
2259
+ value: input.reason
2260
+ }, _errorFactory)) && (4 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2261
+ if (["type", "logicalId", "periodIndex", "expiresAt", "reason"].some(prop => key === prop))
2262
+ return true;
2263
+ const value = input[key];
2264
+ if (undefined === value)
2265
+ return true;
2266
+ return _assertGuard_1._assertGuard(_exceptionable, {
2267
+ method: "typia.createAssertEquals",
2268
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2269
+ expected: "undefined",
2270
+ value: value
2271
+ }, _errorFactory);
2272
+ })));
2273
+ const _ao56 = (input, _path, _exceptionable = true) => ("string" === typeof input.logicalId && (1 <= input.logicalId.length || _assertGuard_1._assertGuard(_exceptionable, {
2274
+ method: "typia.createAssertEquals",
2275
+ path: _path + ".logicalId",
2276
+ expected: "string & CommerceMinLength<1>",
2277
+ value: input.logicalId
2278
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2279
+ method: "typia.createAssertEquals",
2280
+ path: _path + ".logicalId",
2281
+ expected: "(string & CommerceMinLength<1>)",
2282
+ value: input.logicalId
2283
+ }, _errorFactory)) && (undefined === input.periodIndex || "number" === typeof input.periodIndex && (_isTypeUint32_1._isTypeUint32(input.periodIndex) || _assertGuard_1._assertGuard(_exceptionable, {
2284
+ method: "typia.createAssertEquals",
2285
+ path: _path + ".periodIndex",
2286
+ expected: "number & Type<\"uint32\">",
2287
+ value: input.periodIndex
2288
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2289
+ method: "typia.createAssertEquals",
2290
+ path: _path + ".periodIndex",
2291
+ expected: "((number & Type<\"uint32\">) | undefined)",
2292
+ value: input.periodIndex
2293
+ }, _errorFactory)) && (undefined === input.state || "active" === input.state || "lapsed" === input.state || "revoked" === input.state || _assertGuard_1._assertGuard(_exceptionable, {
2294
+ method: "typia.createAssertEquals",
2295
+ path: _path + ".state",
2296
+ expected: "(\"active\" | \"lapsed\" | \"revoked\" | undefined)",
2297
+ value: input.state
2298
+ }, _errorFactory)) && (undefined === input.expiresAt || "string" === typeof input.expiresAt && (_isFormatDateTime_1._isFormatDateTime(input.expiresAt) || _assertGuard_1._assertGuard(_exceptionable, {
2299
+ method: "typia.createAssertEquals",
2300
+ path: _path + ".expiresAt",
2301
+ expected: "string & Format<\"date-time\">",
2302
+ value: input.expiresAt
2303
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2304
+ method: "typia.createAssertEquals",
2305
+ path: _path + ".expiresAt",
2306
+ expected: "((string & Format<\"date-time\">) | undefined)",
2307
+ value: input.expiresAt
2308
+ }, _errorFactory)) && (1 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2309
+ if (["logicalId", "periodIndex", "state", "expiresAt"].some(prop => key === prop))
2310
+ return true;
2311
+ const value = input[key];
2312
+ if (undefined === value)
2313
+ return true;
2314
+ return _assertGuard_1._assertGuard(_exceptionable, {
2315
+ method: "typia.createAssertEquals",
2316
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2317
+ expected: "undefined",
2318
+ value: value
2319
+ }, _errorFactory);
2320
+ })));
2321
+ const _ao6 = (input, _path, _exceptionable = true) => ("platform" === input.scope || "title" === input.scope || _assertGuard_1._assertGuard(_exceptionable, {
2322
+ method: "typia.createAssertEquals",
2323
+ path: _path + ".scope",
2324
+ expected: "(\"platform\" | \"title\")",
2325
+ value: input.scope
2326
+ }, _errorFactory)) && (("object" === typeof input.price && null !== input.price || _assertGuard_1._assertGuard(_exceptionable, {
2327
+ method: "typia.createAssertEquals",
2328
+ path: _path + ".price",
2329
+ expected: "CreditPrice",
2330
+ value: input.price
2331
+ }, _errorFactory)) && _ao7(input.price, _path + ".price", true && _exceptionable) || _assertGuard_1._assertGuard(_exceptionable, {
2332
+ method: "typia.createAssertEquals",
2333
+ path: _path + ".price",
2334
+ expected: "CreditPrice",
2335
+ value: input.price
2336
+ }, _errorFactory)) && ("string" === typeof input.period && (1 <= input.period.length || _assertGuard_1._assertGuard(_exceptionable, {
2337
+ method: "typia.createAssertEquals",
2338
+ path: _path + ".period",
2339
+ expected: "string & CommerceMinLength<1>",
2340
+ value: input.period
2341
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2342
+ method: "typia.createAssertEquals",
2343
+ path: _path + ".period",
2344
+ expected: "(string & CommerceMinLength<1>)",
2345
+ value: input.period
2346
+ }, _errorFactory)) && (3 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2347
+ if (["scope", "price", "period"].some(prop => key === prop))
2348
+ return true;
2349
+ const value = input[key];
2350
+ if (undefined === value)
2351
+ return true;
2352
+ return _assertGuard_1._assertGuard(_exceptionable, {
2353
+ method: "typia.createAssertEquals",
2354
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2355
+ expected: "undefined",
2356
+ value: value
2357
+ }, _errorFactory);
2358
+ })));
2359
+ const _ao7 = (input, _path, _exceptionable = true) => ("string" === typeof input.currency && (1 <= input.currency.length || _assertGuard_1._assertGuard(_exceptionable, {
2360
+ method: "typia.createAssertEquals",
2361
+ path: _path + ".currency",
2362
+ expected: "string & CommerceMinLength<1>",
2363
+ value: input.currency
2364
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2365
+ method: "typia.createAssertEquals",
2366
+ path: _path + ".currency",
2367
+ expected: "(string & CommerceMinLength<1>)",
2368
+ value: input.currency
2369
+ }, _errorFactory)) && ("number" === typeof input.amount && (0 < input.amount || _assertGuard_1._assertGuard(_exceptionable, {
2370
+ method: "typia.createAssertEquals",
2371
+ path: _path + ".amount",
2372
+ expected: "number & ExclusiveMinimum<0>",
2373
+ value: input.amount
2374
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2375
+ method: "typia.createAssertEquals",
2376
+ path: _path + ".amount",
2377
+ expected: "(number & ExclusiveMinimum<0>)",
2378
+ value: input.amount
2379
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2380
+ if (["currency", "amount"].some(prop => key === prop))
2381
+ return true;
2382
+ const value = input[key];
2383
+ if (undefined === value)
2384
+ return true;
2385
+ return _assertGuard_1._assertGuard(_exceptionable, {
2386
+ method: "typia.createAssertEquals",
2387
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2388
+ expected: "undefined",
2389
+ value: value
2390
+ }, _errorFactory);
2391
+ })));
2392
+ const _ao8 = (input, _path, _exceptionable = true) => ((Array.isArray(input.currencies) || _assertGuard_1._assertGuard(_exceptionable, {
2393
+ method: "typia.createAssertEquals",
2394
+ path: _path + ".currencies",
2395
+ expected: "(ReadonlyArray<NonEmptyString> & MinItems<1>)",
2396
+ value: input.currencies
2397
+ }, _errorFactory)) && ((1 <= input.currencies.length || _assertGuard_1._assertGuard(_exceptionable, {
2398
+ method: "typia.createAssertEquals",
2399
+ path: _path + ".currencies",
2400
+ expected: "Array<> & MinItems<1>",
2401
+ value: input.currencies
2402
+ }, _errorFactory)) && input.currencies.every((elem, _index19) => "string" === typeof elem && (1 <= elem.length || _assertGuard_1._assertGuard(_exceptionable, {
2403
+ method: "typia.createAssertEquals",
2404
+ path: _path + ".currencies[" + _index19 + "]",
2405
+ expected: "string & MinLength<1>",
2406
+ value: elem
2407
+ }, _errorFactory)) || _assertGuard_1._assertGuard(_exceptionable, {
2408
+ method: "typia.createAssertEquals",
2409
+ path: _path + ".currencies[" + _index19 + "]",
2410
+ expected: "(string & MinLength<1>)",
2411
+ value: elem
2412
+ }, _errorFactory))) || _assertGuard_1._assertGuard(_exceptionable, {
2413
+ method: "typia.createAssertEquals",
2414
+ path: _path + ".currencies",
2415
+ expected: "(ReadonlyArray<NonEmptyString> & MinItems<1>)",
2416
+ value: input.currencies
2417
+ }, _errorFactory)) && ("host" === input.billingAuthority || "store" === input.billingAuthority || _assertGuard_1._assertGuard(_exceptionable, {
2418
+ method: "typia.createAssertEquals",
2419
+ path: _path + ".billingAuthority",
2420
+ expected: "(\"host\" | \"store\")",
2421
+ value: input.billingAuthority
2422
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2423
+ if (["currencies", "billingAuthority"].some(prop => key === prop))
2424
+ return true;
2425
+ const value = input[key];
2426
+ if (undefined === value)
2427
+ return true;
2428
+ return _assertGuard_1._assertGuard(_exceptionable, {
2429
+ method: "typia.createAssertEquals",
2430
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2431
+ expected: "undefined",
2432
+ value: value
2433
+ }, _errorFactory);
2434
+ })));
2435
+ const _ao9 = (input, _path, _exceptionable = true) => ("runtime" === input.actor || _assertGuard_1._assertGuard(_exceptionable, {
2436
+ method: "typia.createAssertEquals",
2437
+ path: _path + ".actor",
2438
+ expected: "\"runtime\"",
2439
+ value: input.actor
2440
+ }, _errorFactory)) && ("reconcile" === input.action || "start" === input.action || "stop" === input.action || _assertGuard_1._assertGuard(_exceptionable, {
2441
+ method: "typia.createAssertEquals",
2442
+ path: _path + ".action",
2443
+ expected: "(\"reconcile\" | \"start\" | \"stop\")",
2444
+ value: input.action
2445
+ }, _errorFactory)) && (2 === Object.keys(input).length || (false === _exceptionable || Object.keys(input).every(key => {
2446
+ if (["actor", "action"].some(prop => key === prop))
2447
+ return true;
2448
+ const value = input[key];
2449
+ if (undefined === value)
2450
+ return true;
2451
+ return _assertGuard_1._assertGuard(_exceptionable, {
2452
+ method: "typia.createAssertEquals",
2453
+ path: _path + _accessExpressionAsString_1._accessExpressionAsString(key),
2454
+ expected: "undefined",
2455
+ value: value
2456
+ }, _errorFactory);
2457
+ })));
2458
+ const _au0 = (input, _path, _exceptionable = true) => (() => {
2459
+ if ("runtime" === input.actor)
2460
+ return _ao9(input, _path, true && _exceptionable);
2461
+ else if ("fetchProducts" === input.action)
2462
+ return _ao14(input, _path, true && _exceptionable);
2463
+ else if ("requestPurchase" === input.action)
2464
+ return _ao10(input, _path, true && _exceptionable);
2465
+ else if ("complete" === input.action || "update" === input.action)
2466
+ return _ao17(input, _path, true && _exceptionable);
2467
+ else if ("error" === input.action)
2468
+ return _ao20(input, _path, true && _exceptionable);
2469
+ else if ("queueFinish" === input.action)
2470
+ return _ao26(input, _path, true && _exceptionable);
2471
+ else if ("queueRequest" === input.action)
2472
+ return _ao22(input, _path, true && _exceptionable);
2473
+ else if ("queueVerify" === input.action)
2474
+ return _ao29(input, _path, true && _exceptionable);
2475
+ else if ("push" === input.action)
2476
+ return _ao31(input, _path, true && _exceptionable);
2477
+ else if ("revoke" === input.action)
2478
+ return _ao32(input, _path, true && _exceptionable);
2479
+ else if ("creditFromGrant" === input.action)
2480
+ return _ao33(input, _path, true && _exceptionable);
2481
+ else if ("spend" === input.action)
2482
+ return _ao36(input, _path, true && _exceptionable);
2483
+ else if ("renewDue" === input.action)
2484
+ return _ao40(input, _path, true && _exceptionable);
2485
+ else if ("clock" === input.actor)
2486
+ return _ao41(input, _path, true && _exceptionable);
2487
+ else
2488
+ return _assertGuard_1._assertGuard(_exceptionable, {
2489
+ method: "typia.createAssertEquals",
2490
+ path: _path,
2491
+ expected: _ae7,
2492
+ value: input
2493
+ }, _errorFactory);
2494
+ })();
2495
+ const _au1 = (input, _path, _exceptionable = true) => (() => {
2496
+ if ("launched" === input.outcome)
2497
+ return _ao23(input, _path, true && _exceptionable);
2498
+ else if ("purchased" === input.outcome)
2499
+ return _ao24(input, _path, true && _exceptionable);
2500
+ else if ("cancelled" === input.outcome || "failed" === input.outcome)
2501
+ return _ao25(input, _path, true && _exceptionable);
2502
+ else
2503
+ return _assertGuard_1._assertGuard(_exceptionable, {
2504
+ method: "typia.createAssertEquals",
2505
+ path: _path,
2506
+ expected: _ae8,
2507
+ value: input
2508
+ }, _errorFactory);
2509
+ })();
2510
+ const _au2 = (input, _path, _exceptionable = true) => (() => {
2511
+ if (undefined !== input.finished)
2512
+ return _ao27(input, _path, true && _exceptionable);
2513
+ else if (undefined !== input.error)
2514
+ return _ao28(input, _path, true && _exceptionable);
2515
+ else
2516
+ return _assertGuard_1._assertGuard(_exceptionable, {
2517
+ method: "typia.createAssertEquals",
2518
+ path: _path,
2519
+ expected: "({ readonly finished: boolean; } | { readonly error: CommerceErrorCode; })",
2520
+ value: input
2521
+ }, _errorFactory);
2522
+ })();
2523
+ const _au3 = (input, _path, _exceptionable = true) => (() => {
2524
+ if ("title" === input.kind)
2525
+ return _ao50(input, _path, true && _exceptionable);
2526
+ else if ("cross-title" === input.kind)
2527
+ return _ao51(input, _path, true && _exceptionable);
2528
+ else
2529
+ return _assertGuard_1._assertGuard(_exceptionable, {
2530
+ method: "typia.createAssertEquals",
2531
+ path: _path,
2532
+ expected: "({ readonly kind: \"title\"; readonly titleId: NonEmptyString; } | { readonly kind: \"cross-title\"; })",
2533
+ value: input
2534
+ }, _errorFactory);
2535
+ })();
2536
+ const _io0 = (input, _exceptionable = true) => "string" === typeof input.vector && RegExp("^[a-z0-9]+(?:-[a-z0-9]+)*$").test(input.vector) && ("string" === typeof input.protocol && 1 <= input.protocol.length) && ("string" === typeof input.summary && 1 <= input.summary.length) && ("object" === typeof input.profile && null !== input.profile && _io1(input.profile, true && _exceptionable)) && (undefined === input.catalog || Array.isArray(input.catalog) && input.catalog.every((elem, _index1) => "object" === typeof elem && null !== elem && _io5(elem, true && _exceptionable))) && (undefined === input.wallet || "object" === typeof input.wallet && null !== input.wallet && _io8(input.wallet, true && _exceptionable)) && (Array.isArray(input.steps) && (1 <= input.steps.length && input.steps.every((elem, _index2) => "object" === typeof elem && null !== elem && _iu0(elem, true && _exceptionable)))) && ("object" === typeof input.expect && null !== input.expect && false === Array.isArray(input.expect) && _io42(input.expect, true && _exceptionable)) && (6 === Object.keys(input).length || Object.keys(input).every(key => {
2537
+ if (["vector", "protocol", "summary", "profile", "catalog", "wallet", "steps", "expect"].some(prop => key === prop))
2538
+ return true;
2539
+ const value = input[key];
2540
+ if (undefined === value)
2541
+ return true;
2542
+ return false;
2543
+ }));
2544
+ const _io1 = (input, _exceptionable = true) => "string" === typeof input.store && 1 <= input.store.length && (undefined === input.purchase || "object" === typeof input.purchase && null !== input.purchase && _io2(input.purchase, true && _exceptionable)) && (undefined === input.lifecycle || "object" === typeof input.lifecycle && null !== input.lifecycle && _io3(input.lifecycle, true && _exceptionable)) && (undefined === input.authority || "object" === typeof input.authority && null !== input.authority && _io4(input.authority, true && _exceptionable)) && (undefined === input.adaptive || "boolean" === typeof input.adaptive) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2545
+ if (["store", "purchase", "lifecycle", "authority", "adaptive"].some(prop => key === prop))
2546
+ return true;
2547
+ const value = input[key];
2548
+ if (undefined === value)
2549
+ return true;
2550
+ return false;
2551
+ }));
2552
+ const _io10 = (input, _exceptionable = true) => "game" === input.actor && "requestPurchase" === input.action && ("object" === typeof input.input && null !== input.input && _io11(input.input, true && _exceptionable)) && (undefined === input.returns || "object" === typeof input.returns && null !== input.returns && _io12(input.returns, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2553
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
2554
+ return true;
2555
+ const value = input[key];
2556
+ if (undefined === value)
2557
+ return true;
2558
+ return false;
2559
+ }));
2560
+ const _io11 = (input, _exceptionable = true) => "string" === typeof input.logicalId && 1 <= input.logicalId.length && ("string" === typeof input.idempotencyKey && 1 <= input.idempotencyKey.length) && (undefined === input.source || "event" === input.source || "result" === input.source || "shop" === input.source || "stage_fail" === input.source) && (undefined === input.offerId || "string" === typeof input.offerId && 1 <= input.offerId.length) && (undefined === input.quantity || "number" === typeof input.quantity && (_isTypeUint32_1._isTypeUint32(input.quantity) && 1 <= input.quantity)) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2561
+ if (["logicalId", "idempotencyKey", "source", "offerId", "quantity"].some(prop => key === prop))
2562
+ return true;
2563
+ const value = input[key];
2564
+ if (undefined === value)
2565
+ return true;
2566
+ return false;
2567
+ }));
2568
+ const _io12 = (input, _exceptionable = true) => ("cancelled" === input.outcome || "failed" === input.outcome || "launched" === input.outcome || "purchased" === input.outcome) && (undefined === input.error || "object" === typeof input.error && null !== input.error && _io13(input.error, true && _exceptionable)) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2569
+ if (["outcome", "error"].some(prop => key === prop))
2570
+ return true;
2571
+ const value = input[key];
2572
+ if (undefined === value)
2573
+ return true;
2574
+ return false;
2575
+ }));
2576
+ const _io13 = (input, _exceptionable = true) => true === _iv0.has(input.code) && (undefined === input.retryable || "boolean" === typeof input.retryable) && (undefined === input.storeCode || "string" === typeof input.storeCode) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2577
+ if (["code", "retryable", "storeCode"].some(prop => key === prop))
2578
+ return true;
2579
+ const value = input[key];
2580
+ if (undefined === value)
2581
+ return true;
2582
+ return false;
2583
+ }));
2584
+ const _io14 = (input, _exceptionable = true) => "game" === input.actor && "fetchProducts" === input.action && (undefined === input.input || "object" === typeof input.input && null !== input.input && false === Array.isArray(input.input) && _io15(input.input, true && _exceptionable)) && (undefined === input.returns || "object" === typeof input.returns && null !== input.returns && _io16(input.returns, true && _exceptionable)) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2585
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
2586
+ return true;
2587
+ const value = input[key];
2588
+ if (undefined === value)
2589
+ return true;
2590
+ return false;
2591
+ }));
2592
+ const _io15 = (input, _exceptionable = true) => (undefined === input.logicalIds || Array.isArray(input.logicalIds) && input.logicalIds.every((elem, _index4) => "string" === typeof elem && 1 <= elem.length)) && (undefined === input.type || "all" === input.type || "in-app" === input.type || "subscription" === input.type) && (0 === Object.keys(input).length || Object.keys(input).every(key => {
2593
+ if (["logicalIds", "type"].some(prop => key === prop))
2594
+ return true;
2595
+ const value = input[key];
2596
+ if (undefined === value)
2597
+ return true;
2598
+ return false;
2599
+ }));
2600
+ const _io16 = (input, _exceptionable = true) => Array.isArray(input.logicalIds) && input.logicalIds.every((elem, _index5) => "string" === typeof elem && 1 <= elem.length) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2601
+ if (["logicalIds"].some(prop => key === prop))
2602
+ return true;
2603
+ const value = input[key];
2604
+ if (undefined === value)
2605
+ return true;
2606
+ return false;
2607
+ }));
2608
+ const _io17 = (input, _exceptionable = true) => "store" === input.actor && ("complete" === input.action || "update" === input.action) && ("object" === typeof input.purchase && null !== input.purchase && _io18(input.purchase, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2609
+ if (["actor", "action", "purchase"].some(prop => key === prop))
2610
+ return true;
2611
+ const value = input[key];
2612
+ if (undefined === value)
2613
+ return true;
2614
+ return false;
2615
+ }));
2616
+ const _io18 = (input, _exceptionable = true) => "string" === typeof input.transactionId && 1 <= input.transactionId.length && ("string" === typeof input.storeSku && 1 <= input.storeSku.length) && ("string" === typeof input.token && 1 <= input.token.length) && ("pending" === input.state || "purchased" === input.state || "revoked" === input.state) && (undefined === input.originalTransactionId || "string" === typeof input.originalTransactionId && 1 <= input.originalTransactionId.length) && (undefined === input.purchasedAt || "string" === typeof input.purchasedAt && _isFormatDateTime_1._isFormatDateTime(input.purchasedAt)) && (undefined === input.settlement || "object" === typeof input.settlement && null !== input.settlement && _io19(input.settlement, true && _exceptionable)) && (4 === Object.keys(input).length || Object.keys(input).every(key => {
2617
+ if (["transactionId", "storeSku", "token", "state", "originalTransactionId", "purchasedAt", "settlement"].some(prop => key === prop))
2618
+ return true;
2619
+ const value = input[key];
2620
+ if (undefined === value)
2621
+ return true;
2622
+ return false;
2623
+ }));
2624
+ const _io19 = (input, _exceptionable = true) => "string" === typeof input.ledgerEntryId && 1 <= input.ledgerEntryId.length && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2625
+ if (["ledgerEntryId"].some(prop => key === prop))
2626
+ return true;
2627
+ const value = input[key];
2628
+ if (undefined === value)
2629
+ return true;
2630
+ return false;
2631
+ }));
2632
+ const _io2 = (input, _exceptionable = true) => "boolean" === typeof input.consumable && "boolean" === typeof input.durable && "boolean" === typeof input.subscription && "boolean" === typeof input.quantity && (4 === Object.keys(input).length || Object.keys(input).every(key => {
2633
+ if (["consumable", "durable", "subscription", "quantity"].some(prop => key === prop))
2634
+ return true;
2635
+ const value = input[key];
2636
+ if (undefined === value)
2637
+ return true;
2638
+ return false;
2639
+ }));
2640
+ const _io20 = (input, _exceptionable = true) => "store" === input.actor && "error" === input.action && (undefined === input.logicalId || "string" === typeof input.logicalId && 1 <= input.logicalId.length) && ("object" === typeof input.error && null !== input.error && _io21(input.error, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2641
+ if (["actor", "action", "logicalId", "error"].some(prop => key === prop))
2642
+ return true;
2643
+ const value = input[key];
2644
+ if (undefined === value)
2645
+ return true;
2646
+ return false;
2647
+ }));
2648
+ const _io21 = (input, _exceptionable = true) => true === _iv0.has(input.code) && "boolean" === typeof input.retryable && (undefined === input.storeCode || "string" === typeof input.storeCode) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2649
+ if (["code", "retryable", "storeCode"].some(prop => key === prop))
2650
+ return true;
2651
+ const value = input[key];
2652
+ if (undefined === value)
2653
+ return true;
2654
+ return false;
2655
+ }));
2656
+ const _io22 = (input, _exceptionable = true) => "store" === input.actor && "queueRequest" === input.action && ("object" === typeof input.result && null !== input.result && _iu1(input.result, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2657
+ if (["actor", "action", "result"].some(prop => key === prop))
2658
+ return true;
2659
+ const value = input[key];
2660
+ if (undefined === value)
2661
+ return true;
2662
+ return false;
2663
+ }));
2664
+ const _io23 = (input, _exceptionable = true) => "launched" === input.outcome && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2665
+ if (["outcome"].some(prop => key === prop))
2666
+ return true;
2667
+ const value = input[key];
2668
+ if (undefined === value)
2669
+ return true;
2670
+ return false;
2671
+ }));
2672
+ const _io24 = (input, _exceptionable = true) => "purchased" === input.outcome && ("object" === typeof input.purchase && null !== input.purchase && _io18(input.purchase, true && _exceptionable)) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2673
+ if (["outcome", "purchase"].some(prop => key === prop))
2674
+ return true;
2675
+ const value = input[key];
2676
+ if (undefined === value)
2677
+ return true;
2678
+ return false;
2679
+ }));
2680
+ const _io25 = (input, _exceptionable = true) => ("cancelled" === input.outcome || "failed" === input.outcome) && ("object" === typeof input.error && null !== input.error && _io21(input.error, true && _exceptionable)) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2681
+ if (["outcome", "error"].some(prop => key === prop))
2682
+ return true;
2683
+ const value = input[key];
2684
+ if (undefined === value)
2685
+ return true;
2686
+ return false;
2687
+ }));
2688
+ const _io26 = (input, _exceptionable = true) => "store" === input.actor && "queueFinish" === input.action && ("object" === typeof input.result && null !== input.result && _iu2(input.result, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2689
+ if (["actor", "action", "result"].some(prop => key === prop))
2690
+ return true;
2691
+ const value = input[key];
2692
+ if (undefined === value)
2693
+ return true;
2694
+ return false;
2695
+ }));
2696
+ const _io27 = (input, _exceptionable = true) => "boolean" === typeof input.finished && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2697
+ if (["finished"].some(prop => key === prop))
2698
+ return true;
2699
+ const value = input[key];
2700
+ if (undefined === value)
2701
+ return true;
2702
+ return false;
2703
+ }));
2704
+ const _io28 = (input, _exceptionable = true) => true === _iv0.has(input.error) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2705
+ if (["error"].some(prop => key === prop))
2706
+ return true;
2707
+ const value = input[key];
2708
+ if (undefined === value)
2709
+ return true;
2710
+ return false;
2711
+ }));
2712
+ const _io29 = (input, _exceptionable = true) => "backend" === input.actor && "queueVerify" === input.action && ("object" === typeof input.decision && null !== input.decision && _io30(input.decision, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2713
+ if (["actor", "action", "decision"].some(prop => key === prop))
2714
+ return true;
2715
+ const value = input[key];
2716
+ if (undefined === value)
2717
+ return true;
2718
+ return false;
2719
+ }));
2720
+ const _io3 = (input, _exceptionable = true) => "boolean" === typeof input.availablePurchases && "boolean" === typeof input.pending && "boolean" === typeof input.restore && "boolean" === typeof input.events && ("client" === input.finish || "host" === input.finish || "none" === input.finish || "server" === input.finish) && (5 === Object.keys(input).length || Object.keys(input).every(key => {
2721
+ if (["availablePurchases", "pending", "restore", "events", "finish"].some(prop => key === prop))
2722
+ return true;
2723
+ const value = input[key];
2724
+ if (undefined === value)
2725
+ return true;
2726
+ return false;
2727
+ }));
2728
+ const _io30 = (input, _exceptionable = true) => ("granted" === input.status || "pending" === input.status || "rejected" === input.status) && (undefined === input.ledgerEntryId || "string" === typeof input.ledgerEntryId && 1 <= input.ledgerEntryId.length) && (undefined === input.finalization || "completed" === input.finalization || "pending" === input.finalization) && (undefined === input.alreadyProcessed || "boolean" === typeof input.alreadyProcessed) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2729
+ if (["status", "ledgerEntryId", "finalization", "alreadyProcessed"].some(prop => key === prop))
2730
+ return true;
2731
+ const value = input[key];
2732
+ if (undefined === value)
2733
+ return true;
2734
+ return false;
2735
+ }));
2736
+ const _io31 = (input, _exceptionable = true) => "backend" === input.actor && "push" === input.action && ("string" === typeof input.transactionId && 1 <= input.transactionId.length) && ("string" === typeof input.entryId && 1 <= input.entryId.length) && ("string" === typeof input.logicalId && 1 <= input.logicalId.length) && (5 === Object.keys(input).length || Object.keys(input).every(key => {
2737
+ if (["actor", "action", "transactionId", "entryId", "logicalId"].some(prop => key === prop))
2738
+ return true;
2739
+ const value = input[key];
2740
+ if (undefined === value)
2741
+ return true;
2742
+ return false;
2743
+ }));
2744
+ const _io32 = (input, _exceptionable = true) => "backend" === input.actor && "revoke" === input.action && ("string" === typeof input.ledgerEntryId && 1 <= input.ledgerEntryId.length) && ("string" === typeof input.entryId && 1 <= input.entryId.length) && ("string" === typeof input.reason && 1 <= input.reason.length) && (5 === Object.keys(input).length || Object.keys(input).every(key => {
2745
+ if (["actor", "action", "ledgerEntryId", "entryId", "reason"].some(prop => key === prop))
2746
+ return true;
2747
+ const value = input[key];
2748
+ if (undefined === value)
2749
+ return true;
2750
+ return false;
2751
+ }));
2752
+ const _io33 = (input, _exceptionable = true) => "wallet" === input.actor && "creditFromGrant" === input.action && ("object" === typeof input.lot && null !== input.lot && _io34(input.lot, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2753
+ if (["actor", "action", "lot"].some(prop => key === prop))
2754
+ return true;
2755
+ const value = input[key];
2756
+ if (undefined === value)
2757
+ return true;
2758
+ return false;
2759
+ }));
2760
+ const _io34 = (input, _exceptionable = true) => "string" === typeof input.ledgerEntryId && 1 <= input.ledgerEntryId.length && ("string" === typeof input.currency && 1 <= input.currency.length) && ("number" === typeof input.amount && 0 < input.amount) && ("object" === typeof input.origin && null !== input.origin && _io35(input.origin, true && _exceptionable)) && ("string" === typeof input.createdAt && _isFormatDateTime_1._isFormatDateTime(input.createdAt)) && (undefined === input.expiresAt || "string" === typeof input.expiresAt && _isFormatDateTime_1._isFormatDateTime(input.expiresAt)) && (5 === Object.keys(input).length || Object.keys(input).every(key => {
2761
+ if (["ledgerEntryId", "currency", "amount", "origin", "createdAt", "expiresAt"].some(prop => key === prop))
2762
+ return true;
2763
+ const value = input[key];
2764
+ if (undefined === value)
2765
+ return true;
2766
+ return false;
2767
+ }));
2768
+ const _io35 = (input, _exceptionable = true) => ("off-store" === input.channel || "promotion" === input.channel || "store" === input.channel) && ("string" === typeof input.store && 1 <= input.store.length) && ("string" === typeof input.titleId && 1 <= input.titleId.length) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2769
+ if (["channel", "store", "titleId"].some(prop => key === prop))
2770
+ return true;
2771
+ const value = input[key];
2772
+ if (undefined === value)
2773
+ return true;
2774
+ return false;
2775
+ }));
2776
+ const _io36 = (input, _exceptionable = true) => "wallet" === input.actor && "spend" === input.action && ("object" === typeof input.input && null !== input.input && _io37(input.input, true && _exceptionable)) && (undefined === input.returns || "object" === typeof input.returns && null !== input.returns && _io38(input.returns, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2777
+ if (["actor", "action", "input", "returns"].some(prop => key === prop))
2778
+ return true;
2779
+ const value = input[key];
2780
+ if (undefined === value)
2781
+ return true;
2782
+ return false;
2783
+ }));
2784
+ const _io37 = (input, _exceptionable = true) => "string" === typeof input.titleId && 1 <= input.titleId.length && ("string" === typeof input.currency && 1 <= input.currency.length) && ("number" === typeof input.amount && 0 < input.amount) && ("string" === typeof input.idempotencyKey && 1 <= input.idempotencyKey.length) && (4 === Object.keys(input).length || Object.keys(input).every(key => {
2785
+ if (["titleId", "currency", "amount", "idempotencyKey"].some(prop => key === prop))
2786
+ return true;
2787
+ const value = input[key];
2788
+ if (undefined === value)
2789
+ return true;
2790
+ return false;
2791
+ }));
2792
+ const _io38 = (input, _exceptionable = true) => ("debited" === input.status || "rejected" === input.status) && (undefined === input.debits || Array.isArray(input.debits) && input.debits.every((elem, _index6) => "object" === typeof elem && null !== elem && _io39(elem, true && _exceptionable))) && (undefined === input.alreadyProcessed || "boolean" === typeof input.alreadyProcessed) && (undefined === input.error || "object" === typeof input.error && null !== input.error && _io13(input.error, true && _exceptionable)) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2793
+ if (["status", "debits", "alreadyProcessed", "error"].some(prop => key === prop))
2794
+ return true;
2795
+ const value = input[key];
2796
+ if (undefined === value)
2797
+ return true;
2798
+ return false;
2799
+ }));
2800
+ const _io39 = (input, _exceptionable = true) => "string" === typeof input.lotId && 1 <= input.lotId.length && ("number" === typeof input.amount && 0 < input.amount) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2801
+ if (["lotId", "amount"].some(prop => key === prop))
2802
+ return true;
2803
+ const value = input[key];
2804
+ if (undefined === value)
2805
+ return true;
2806
+ return false;
2807
+ }));
2808
+ const _io4 = (input, _exceptionable = true) => ("adapter-settled" === input.evidence || "client-token" === input.evidence || "host-callback" === input.evidence || "server-push" === input.evidence) && ("host" === input.accountBinding || "optional" === input.accountBinding || "required" === input.accountBinding) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2809
+ if (["evidence", "accountBinding"].some(prop => key === prop))
2810
+ return true;
2811
+ const value = input[key];
2812
+ if (undefined === value)
2813
+ return true;
2814
+ return false;
2815
+ }));
2816
+ const _io40 = (input, _exceptionable = true) => "wallet" === input.actor && "renewDue" === input.action && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2817
+ if (["actor", "action"].some(prop => key === prop))
2818
+ return true;
2819
+ const value = input[key];
2820
+ if (undefined === value)
2821
+ return true;
2822
+ return false;
2823
+ }));
2824
+ const _io41 = (input, _exceptionable = true) => "clock" === input.actor && "set" === input.action && ("string" === typeof input.at && _isFormatDateTime_1._isFormatDateTime(input.at)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2825
+ if (["actor", "action", "at"].some(prop => key === prop))
2826
+ return true;
2827
+ const value = input[key];
2828
+ if (undefined === value)
2829
+ return true;
2830
+ return false;
2831
+ }));
2832
+ const _io42 = (input, _exceptionable = true) => (undefined === input.journal || "object" === typeof input.journal && null !== input.journal && false === Array.isArray(input.journal) && _io43(input.journal, true && _exceptionable)) && (undefined === input.verifyRequests || Array.isArray(input.verifyRequests) && input.verifyRequests.every((elem, _index7) => "object" === typeof elem && null !== elem && _io44(elem, true && _exceptionable))) && (undefined === input.ledger || Array.isArray(input.ledger) && input.ledger.every((elem, _index8) => "object" === typeof elem && null !== elem && _io45(elem, true && _exceptionable))) && (undefined === input.finishCalls || Array.isArray(input.finishCalls) && input.finishCalls.every((elem, _index9) => "object" === typeof elem && null !== elem && _io46(elem, true && _exceptionable))) && (undefined === input.available || Array.isArray(input.available) && input.available.every((elem, _index10) => "object" === typeof elem && null !== elem && _io47(elem, true && _exceptionable))) && (undefined === input.entitlements || Array.isArray(input.entitlements) && input.entitlements.every((elem, _index11) => "object" === typeof elem && null !== elem && _io48(elem, true && _exceptionable))) && (undefined === input.lots || Array.isArray(input.lots) && input.lots.every((elem, _index12) => "object" === typeof elem && null !== elem && _io49(elem, true && _exceptionable))) && (undefined === input.balances || "object" === typeof input.balances && null !== input.balances && false === Array.isArray(input.balances) && _io52(input.balances, true && _exceptionable)) && (undefined === input.debits || Array.isArray(input.debits) && input.debits.every((elem, _index13) => "object" === typeof elem && null !== elem && _io54(elem, true && _exceptionable))) && (undefined === input.events || Array.isArray(input.events) && input.events.every((elem, _index14) => "object" === typeof elem && null !== elem && _io55(elem, true && _exceptionable))) && (undefined === input.activeSubscriptions || Array.isArray(input.activeSubscriptions) && input.activeSubscriptions.every((elem, _index15) => "object" === typeof elem && null !== elem && _io56(elem, true && _exceptionable))) && (undefined === input.purchaseUiOpened || "number" === typeof input.purchaseUiOpened && _isTypeUint32_1._isTypeUint32(input.purchaseUiOpened)) && (0 === Object.keys(input).length || Object.keys(input).every(key => {
2833
+ if (["journal", "verifyRequests", "ledger", "finishCalls", "available", "entitlements", "lots", "balances", "debits", "events", "activeSubscriptions", "purchaseUiOpened"].some(prop => key === prop))
2834
+ return true;
2835
+ const value = input[key];
2836
+ if (undefined === value)
2837
+ return true;
2838
+ return false;
2839
+ }));
2840
+ const _io43 = (input, _exceptionable = true) => Object.keys(input).every(key => {
2841
+ const value = input[key];
2842
+ if (undefined === value)
2843
+ return true;
2844
+ return Array.isArray(value) && value.every((elem, _index16) => true === _iv1.has(elem));
2845
+ });
2846
+ const _io44 = (input, _exceptionable = true) => "string" === typeof input.idempotencyKey && 1 <= input.idempotencyKey.length && ("string" === typeof input.store && 1 <= input.store.length) && ("string" === typeof input.transactionId && 1 <= input.transactionId.length) && ("string" === typeof input.token && 1 <= input.token.length) && (4 === Object.keys(input).length || Object.keys(input).every(key => {
2847
+ if (["idempotencyKey", "store", "transactionId", "token"].some(prop => key === prop))
2848
+ return true;
2849
+ const value = input[key];
2850
+ if (undefined === value)
2851
+ return true;
2852
+ return false;
2853
+ }));
2854
+ const _io45 = (input, _exceptionable = true) => "string" === typeof input.entryId && 1 <= input.entryId.length && ("grant" === input.type || "period" === input.type || "revoke" === input.type) && ("string" === typeof input.logicalId && 1 <= input.logicalId.length) && (undefined === input.reverses || "string" === typeof input.reverses && 1 <= input.reverses.length) && (undefined === input.reason || "string" === typeof input.reason && 1 <= input.reason.length) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2855
+ if (["entryId", "type", "logicalId", "reverses", "reason"].some(prop => key === prop))
2856
+ return true;
2857
+ const value = input[key];
2858
+ if (undefined === value)
2859
+ return true;
2860
+ return false;
2861
+ }));
2862
+ const _io46 = (input, _exceptionable = true) => ("client" === input.by || "host" === input.by) && ("string" === typeof input.transactionId && 1 <= input.transactionId.length) && ("string" === typeof input.ledgerEntryId && 1 <= input.ledgerEntryId.length) && "boolean" === typeof input.isConsumable && true === _iv2.has(input.result) && (5 === Object.keys(input).length || Object.keys(input).every(key => {
2863
+ if (["by", "transactionId", "ledgerEntryId", "isConsumable", "result"].some(prop => key === prop))
2864
+ return true;
2865
+ const value = input[key];
2866
+ if (undefined === value)
2867
+ return true;
2868
+ return false;
2869
+ }));
2870
+ const _io47 = (input, _exceptionable = true) => "string" === typeof input.transactionId && 1 <= input.transactionId.length && (undefined === input.storeSku || "string" === typeof input.storeSku && 1 <= input.storeSku.length) && (undefined === input.state || "pending" === input.state || "purchased" === input.state || "revoked" === input.state) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2871
+ if (["transactionId", "storeSku", "state"].some(prop => key === prop))
2872
+ return true;
2873
+ const value = input[key];
2874
+ if (undefined === value)
2875
+ return true;
2876
+ return false;
2877
+ }));
2878
+ const _io48 = (input, _exceptionable = true) => "string" === typeof input.id && 1 <= input.id.length && (undefined === input.logicalId || "string" === typeof input.logicalId && 1 <= input.logicalId.length) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2879
+ if (["id", "logicalId"].some(prop => key === prop))
2880
+ return true;
2881
+ const value = input[key];
2882
+ if (undefined === value)
2883
+ return true;
2884
+ return false;
2885
+ }));
2886
+ const _io49 = (input, _exceptionable = true) => "string" === typeof input.lotId && 1 <= input.lotId.length && (undefined === input.currency || "string" === typeof input.currency && 1 <= input.currency.length) && (undefined === input.amount || "number" === typeof input.amount && 0 < input.amount) && ("number" === typeof input.remaining && 0 <= input.remaining) && (undefined === input.origin || "object" === typeof input.origin && null !== input.origin && _io35(input.origin, true && _exceptionable)) && (undefined === input.spendScope || "object" === typeof input.spendScope && null !== input.spendScope && _iu3(input.spendScope, true && _exceptionable)) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2887
+ if (["lotId", "currency", "amount", "remaining", "origin", "spendScope"].some(prop => key === prop))
2888
+ return true;
2889
+ const value = input[key];
2890
+ if (undefined === value)
2891
+ return true;
2892
+ return false;
2893
+ }));
2894
+ const _io5 = (input, _exceptionable = true) => "string" === typeof input.logicalId && 1 <= input.logicalId.length && ("consumable" === input.kind || "durable" === input.kind || "subscription" === input.kind) && ("string" === typeof input.storeSku && 1 <= input.storeSku.length) && (undefined === input.membership || "object" === typeof input.membership && null !== input.membership && _io6(input.membership, true && _exceptionable)) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2895
+ if (["logicalId", "kind", "storeSku", "membership"].some(prop => key === prop))
2896
+ return true;
2897
+ const value = input[key];
2898
+ if (undefined === value)
2899
+ return true;
2900
+ return false;
2901
+ }));
2902
+ const _io50 = (input, _exceptionable = true) => "title" === input.kind && ("string" === typeof input.titleId && 1 <= input.titleId.length) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2903
+ if (["kind", "titleId"].some(prop => key === prop))
2904
+ return true;
2905
+ const value = input[key];
2906
+ if (undefined === value)
2907
+ return true;
2908
+ return false;
2909
+ }));
2910
+ const _io51 = (input, _exceptionable = true) => "cross-title" === input.kind && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2911
+ if (["kind"].some(prop => key === prop))
2912
+ return true;
2913
+ const value = input[key];
2914
+ if (undefined === value)
2915
+ return true;
2916
+ return false;
2917
+ }));
2918
+ const _io52 = (input, _exceptionable = true) => Object.keys(input).every(key => {
2919
+ const value = input[key];
2920
+ if (undefined === value)
2921
+ return true;
2922
+ return "object" === typeof value && null !== value && false === Array.isArray(value) && _io53(value, true && _exceptionable);
2923
+ });
2924
+ const _io53 = (input, _exceptionable = true) => Object.keys(input).every(key => {
2925
+ const value = input[key];
2926
+ if (undefined === value)
2927
+ return true;
2928
+ return "number" === typeof value;
2929
+ });
2930
+ const _io54 = (input, _exceptionable = true) => "string" === typeof input.idempotencyKey && 1 <= input.idempotencyKey.length && ("string" === typeof input.lotId && 1 <= input.lotId.length) && ("number" === typeof input.amount && 0 < input.amount) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2931
+ if (["idempotencyKey", "lotId", "amount"].some(prop => key === prop))
2932
+ return true;
2933
+ const value = input[key];
2934
+ if (undefined === value)
2935
+ return true;
2936
+ return false;
2937
+ }));
2938
+ const _io55 = (input, _exceptionable = true) => ("subscriptionLapsed" === input.type || "subscriptionRenewed" === input.type || "subscriptionRevoked" === input.type || "subscriptionStarted" === input.type) && ("string" === typeof input.logicalId && 1 <= input.logicalId.length) && ("number" === typeof input.periodIndex && _isTypeUint32_1._isTypeUint32(input.periodIndex)) && ("string" === typeof input.expiresAt && _isFormatDateTime_1._isFormatDateTime(input.expiresAt)) && (undefined === input.reason || true === _iv0.has(input.reason)) && (4 === Object.keys(input).length || Object.keys(input).every(key => {
2939
+ if (["type", "logicalId", "periodIndex", "expiresAt", "reason"].some(prop => key === prop))
2940
+ return true;
2941
+ const value = input[key];
2942
+ if (undefined === value)
2943
+ return true;
2944
+ return false;
2945
+ }));
2946
+ const _io56 = (input, _exceptionable = true) => "string" === typeof input.logicalId && 1 <= input.logicalId.length && (undefined === input.periodIndex || "number" === typeof input.periodIndex && _isTypeUint32_1._isTypeUint32(input.periodIndex)) && (undefined === input.state || "active" === input.state || "lapsed" === input.state || "revoked" === input.state) && (undefined === input.expiresAt || "string" === typeof input.expiresAt && _isFormatDateTime_1._isFormatDateTime(input.expiresAt)) && (1 === Object.keys(input).length || Object.keys(input).every(key => {
2947
+ if (["logicalId", "periodIndex", "state", "expiresAt"].some(prop => key === prop))
2948
+ return true;
2949
+ const value = input[key];
2950
+ if (undefined === value)
2951
+ return true;
2952
+ return false;
2953
+ }));
2954
+ const _io6 = (input, _exceptionable = true) => ("platform" === input.scope || "title" === input.scope) && ("object" === typeof input.price && null !== input.price && _io7(input.price, true && _exceptionable)) && ("string" === typeof input.period && 1 <= input.period.length) && (3 === Object.keys(input).length || Object.keys(input).every(key => {
2955
+ if (["scope", "price", "period"].some(prop => key === prop))
2956
+ return true;
2957
+ const value = input[key];
2958
+ if (undefined === value)
2959
+ return true;
2960
+ return false;
2961
+ }));
2962
+ const _io7 = (input, _exceptionable = true) => "string" === typeof input.currency && 1 <= input.currency.length && ("number" === typeof input.amount && 0 < input.amount) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2963
+ if (["currency", "amount"].some(prop => key === prop))
2964
+ return true;
2965
+ const value = input[key];
2966
+ if (undefined === value)
2967
+ return true;
2968
+ return false;
2969
+ }));
2970
+ const _io8 = (input, _exceptionable = true) => Array.isArray(input.currencies) && (1 <= input.currencies.length && input.currencies.every((elem, _index3) => "string" === typeof elem && 1 <= elem.length)) && ("host" === input.billingAuthority || "store" === input.billingAuthority) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2971
+ if (["currencies", "billingAuthority"].some(prop => key === prop))
2972
+ return true;
2973
+ const value = input[key];
2974
+ if (undefined === value)
2975
+ return true;
2976
+ return false;
2977
+ }));
2978
+ const _io9 = (input, _exceptionable = true) => "runtime" === input.actor && ("reconcile" === input.action || "start" === input.action || "stop" === input.action) && (2 === Object.keys(input).length || Object.keys(input).every(key => {
2979
+ if (["actor", "action"].some(prop => key === prop))
2980
+ return true;
2981
+ const value = input[key];
2982
+ if (undefined === value)
2983
+ return true;
2984
+ return false;
2985
+ }));
2986
+ const _iu0 = (input, _exceptionable = true) => (() => {
2987
+ if ("runtime" === input.actor)
2988
+ return _io9(input, true && _exceptionable);
2989
+ else if ("fetchProducts" === input.action)
2990
+ return _io14(input, true && _exceptionable);
2991
+ else if ("requestPurchase" === input.action)
2992
+ return _io10(input, true && _exceptionable);
2993
+ else if ("complete" === input.action || "update" === input.action)
2994
+ return _io17(input, true && _exceptionable);
2995
+ else if ("error" === input.action)
2996
+ return _io20(input, true && _exceptionable);
2997
+ else if ("queueFinish" === input.action)
2998
+ return _io26(input, true && _exceptionable);
2999
+ else if ("queueRequest" === input.action)
3000
+ return _io22(input, true && _exceptionable);
3001
+ else if ("queueVerify" === input.action)
3002
+ return _io29(input, true && _exceptionable);
3003
+ else if ("push" === input.action)
3004
+ return _io31(input, true && _exceptionable);
3005
+ else if ("revoke" === input.action)
3006
+ return _io32(input, true && _exceptionable);
3007
+ else if ("creditFromGrant" === input.action)
3008
+ return _io33(input, true && _exceptionable);
3009
+ else if ("spend" === input.action)
3010
+ return _io36(input, true && _exceptionable);
3011
+ else if ("renewDue" === input.action)
3012
+ return _io40(input, true && _exceptionable);
3013
+ else if ("clock" === input.actor)
3014
+ return _io41(input, true && _exceptionable);
3015
+ else
3016
+ return false;
3017
+ })();
3018
+ const _iu1 = (input, _exceptionable = true) => (() => {
3019
+ if ("launched" === input.outcome)
3020
+ return _io23(input, true && _exceptionable);
3021
+ else if ("purchased" === input.outcome)
3022
+ return _io24(input, true && _exceptionable);
3023
+ else if ("cancelled" === input.outcome || "failed" === input.outcome)
3024
+ return _io25(input, true && _exceptionable);
3025
+ else
3026
+ return false;
3027
+ })();
3028
+ const _iu2 = (input, _exceptionable = true) => (() => {
3029
+ if (undefined !== input.finished)
3030
+ return _io27(input, true && _exceptionable);
3031
+ else if (undefined !== input.error)
3032
+ return _io28(input, true && _exceptionable);
3033
+ else
3034
+ return false;
3035
+ })();
3036
+ const _iu3 = (input, _exceptionable = true) => (() => {
3037
+ if ("title" === input.kind)
3038
+ return _io50(input, true && _exceptionable);
3039
+ else if ("cross-title" === input.kind)
3040
+ return _io51(input, true && _exceptionable);
3041
+ else
3042
+ return false;
3043
+ })();
3044
+ const __is = (input, _exceptionable = true) => "object" === typeof input && null !== input && _io0(input, true);
3045
+ let _errorFactory;
3046
+ return (input, errorFactory) => {
3047
+ if (false === __is(input)) {
3048
+ _errorFactory = errorFactory;
3049
+ ((input, _path, _exceptionable = true) => ("object" === typeof input && null !== input || _assertGuard_1._assertGuard(true, {
3050
+ method: "typia.createAssertEquals",
3051
+ path: _path + "",
3052
+ expected: "CommerceConformanceVector",
3053
+ value: input
3054
+ }, _errorFactory)) && _ao0(input, _path + "", true) || _assertGuard_1._assertGuard(true, {
3055
+ method: "typia.createAssertEquals",
3056
+ path: _path + "",
3057
+ expected: "CommerceConformanceVector",
3058
+ value: input
3059
+ }, _errorFactory))(input, "$input", true);
3060
+ }
3061
+ return input;
3062
+ };
3063
+ })();
3064
+ /** Validates one vector file. Catalog logical ids must be unique. */
3065
+ export function assertCommerceConformanceVector(input) {
3066
+ const vector = assertCommerceConformanceVectorShape(input);
3067
+ const logicalIds = new Set();
3068
+ for (const entry of vector.catalog ?? []) {
3069
+ if (logicalIds.has(entry.logicalId)) {
3070
+ throw new TypeError(`Vector ${vector.vector} declares ${entry.logicalId} twice.`);
3071
+ }
3072
+ logicalIds.add(entry.logicalId);
3073
+ }
3074
+ return vector;
3075
+ }
3076
+ export function isCommerceConformanceVector(input) {
3077
+ try {
3078
+ assertCommerceConformanceVector(input);
3079
+ return true;
3080
+ }
3081
+ catch {
3082
+ return false;
3083
+ }
3084
+ }
3085
+ /** The vector name a file at `path` must declare. */
3086
+ export function commerceConformanceVectorNameOf(path) {
3087
+ const fileName = path.split(/[\\/]/u).pop() ?? path;
3088
+ return fileName.endsWith('.json') ? fileName.slice(0, -'.json'.length) : fileName;
3089
+ }