@marcohefti/request-network-api-client 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +97 -0
  3. package/dist/cjs/domains/client-ids/index.js +309 -0
  4. package/dist/cjs/domains/client-ids/index.js.map +1 -0
  5. package/dist/cjs/domains/currencies/index.js +347 -0
  6. package/dist/cjs/domains/currencies/index.js.map +1 -0
  7. package/dist/cjs/domains/payer/index.js +450 -0
  8. package/dist/cjs/domains/payer/index.js.map +1 -0
  9. package/dist/cjs/domains/payouts/index.js +304 -0
  10. package/dist/cjs/domains/payouts/index.js.map +1 -0
  11. package/dist/cjs/domains/requests/index.js +544 -0
  12. package/dist/cjs/domains/requests/index.js.map +1 -0
  13. package/dist/cjs/index.js +3466 -0
  14. package/dist/cjs/index.js.map +1 -0
  15. package/dist/esm/domains/client-ids/index.d.mts +2 -0
  16. package/dist/esm/domains/client-ids/index.js +307 -0
  17. package/dist/esm/domains/client-ids/index.js.map +1 -0
  18. package/dist/esm/domains/currencies/index.d.mts +3 -0
  19. package/dist/esm/domains/currencies/index.js +344 -0
  20. package/dist/esm/domains/currencies/index.js.map +1 -0
  21. package/dist/esm/domains/payer/index.d.mts +2 -0
  22. package/dist/esm/domains/payer/index.js +446 -0
  23. package/dist/esm/domains/payer/index.js.map +1 -0
  24. package/dist/esm/domains/payouts/index.d.mts +2 -0
  25. package/dist/esm/domains/payouts/index.js +302 -0
  26. package/dist/esm/domains/payouts/index.js.map +1 -0
  27. package/dist/esm/domains/requests/index.d.mts +2 -0
  28. package/dist/esm/domains/requests/index.js +542 -0
  29. package/dist/esm/domains/requests/index.js.map +1 -0
  30. package/dist/esm/index-BmWmfcnn.d.mts +113 -0
  31. package/dist/esm/index-CNK36ZX5.d.mts +26 -0
  32. package/dist/esm/index-Cd7x0Hv-.d.mts +39 -0
  33. package/dist/esm/index-Q2g0D7V8.d.mts +79 -0
  34. package/dist/esm/index-ziziGrHN.d.mts +220 -0
  35. package/dist/esm/index.d.mts +5478 -0
  36. package/dist/esm/index.js +3435 -0
  37. package/dist/esm/index.js.map +1 -0
  38. package/dist/esm/openapi-types-CtUFCrk4.d.mts +3368 -0
  39. package/package.json +168 -0
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Marco Hefti
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md ADDED
@@ -0,0 +1,97 @@
1
+ # Request Network API Client (TypeScript)
2
+
3
+ TypeScript client for the Request Network hosted REST API. It provides typed, ergonomic
4
+ helpers for core API domains such as requests, payouts, payer/compliance, client IDs,
5
+ currencies, and payments, with runtime validation and webhook utilities built in.
6
+
7
+ This package targets the hosted REST API, not the protocol SDK.
8
+
9
+ ## Installation
10
+
11
+ Install via npm or pnpm:
12
+
13
+ ```bash
14
+ # npm
15
+ npm install @marcohefti/request-network-api-client
16
+
17
+ # pnpm
18
+ pnpm add @marcohefti/request-network-api-client
19
+ ```
20
+
21
+ ## Quick start
22
+
23
+ Node (API key) – tested on Node 20.x–24.x with the built‑in `fetch`:
24
+
25
+ ```ts
26
+ import {
27
+ createRequestClient,
28
+ RequestEnvironment,
29
+ isRequestApiError,
30
+ } from '@marcohefti/request-network-api-client';
31
+
32
+ const client = createRequestClient({
33
+ baseUrl: RequestEnvironment.production,
34
+ apiKey: process.env.REQUEST_API_KEY!,
35
+ });
36
+
37
+ async function main() {
38
+ try {
39
+ const tokens = await client.currencies.list({ network: 'sepolia' });
40
+ console.log('Currencies:', tokens.length);
41
+ } catch (err) {
42
+ if (isRequestApiError(err)) {
43
+ console.error('API error', err.status, err.code, err.requestId, err.toJSON());
44
+ } else {
45
+ console.error(err);
46
+ }
47
+ }
48
+ }
49
+
50
+ main();
51
+ ```
52
+
53
+ From env:
54
+
55
+ ```ts
56
+ import { createRequestClientFromEnv } from '@marcohefti/request-network-api-client';
57
+
58
+ const client = createRequestClientFromEnv();
59
+ // Reads REQUEST_API_URL, REQUEST_API_KEY, REQUEST_CLIENT_ID (with legacy REQUEST_SDK_* fallbacks)
60
+ ```
61
+
62
+ ## What this client covers
63
+
64
+ - REST v2 domains: requests, payouts, payer/compliance, payments, client IDs, currencies.
65
+ - Legacy v1 routes where needed (via `client.<domain>.legacy` or versioned barrels).
66
+ - Webhook helpers: signature verification, parser, dispatcher, and testing utilities.
67
+ - Runtime validation via Zod schemas generated from the Request OpenAPI spec.
68
+
69
+ For deeper details (HTTP client options, domain facades, webhooks, error model), see:
70
+
71
+ - Architecture: [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md)
72
+ - Endpoints & behaviour notes: [`docs/ENDPOINTS.md`](docs/ENDPOINTS.md)
73
+ - Testing & live suites: [`docs/TESTING.md`](docs/TESTING.md)
74
+ - Publishing checklist: [`docs/PUBLISHING.md`](docs/PUBLISHING.md)
75
+ - Docs site (VitePress): `docs-site/` (see `pnpm docs:dev` and `pnpm docs:build`)
76
+
77
+ ## Compatibility
78
+
79
+ - Node.js: 20 / 22 / 24
80
+ - Package manager: pnpm 10.17.1 (recommended via `corepack enable pnpm@10.17.1`)
81
+
82
+ ## Versioning & support
83
+
84
+ - Versioning: this package follows SemVer, but while the major version is `0.x`, minor and patch releases may include breaking changes as the surface stabilises.
85
+ - Support & issues: report bugs or request features via GitHub issues on [`marcohefti/request-network-api-client-ts`](https://github.com/marcohefti/request-network-api-client-ts).
86
+
87
+ ## Development
88
+
89
+ Common commands:
90
+
91
+ - `pnpm lint` – lint the source and tests.
92
+ - `pnpm typecheck` – run TypeScript diagnostics (`tsc`).
93
+ - `pnpm test` – run the Vitest suite (MSW + OpenAPI parity guards).
94
+ - `pnpm build` – build CJS/ESM + types into `dist/`.
95
+
96
+ See [`docs/TESTING.md`](docs/TESTING.md) for the full test/coverage matrix and live integration setup, and
97
+ [`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md) for the HTTP pipeline and domain layout.
@@ -0,0 +1,309 @@
1
+ 'use strict';
2
+
3
+ var zod = require('zod');
4
+
5
+ // src/core/http/validation.config.ts
6
+ function normaliseBoolean(flag, fallback) {
7
+ return typeof flag === "boolean" ? flag : fallback;
8
+ }
9
+ function mergeRuntimeValidation(base, override) {
10
+ if (override === void 0) {
11
+ return base;
12
+ }
13
+ if (typeof override === "boolean") {
14
+ return {
15
+ requests: override,
16
+ responses: override,
17
+ errors: override
18
+ };
19
+ }
20
+ return {
21
+ requests: normaliseBoolean(override.requests, base.requests),
22
+ responses: normaliseBoolean(override.responses, base.responses),
23
+ errors: normaliseBoolean(override.errors, base.errors)
24
+ };
25
+ }
26
+
27
+ // src/validation/schema.registry.ts
28
+ function serialiseKey(key) {
29
+ const variant = key.variant ?? "default";
30
+ const status = key.status?.toString() ?? "any";
31
+ return `${key.operationId}|${key.kind}|${variant}|${status}`;
32
+ }
33
+ var SchemaRegistry = class {
34
+ store = /* @__PURE__ */ new Map();
35
+ register(entry) {
36
+ const id = serialiseKey(entry.key);
37
+ this.store.set(id, entry);
38
+ }
39
+ get(key) {
40
+ const id = serialiseKey(key);
41
+ return this.store.get(id)?.schema;
42
+ }
43
+ /**
44
+ * Removes every registered schema — primarily useful in tests.
45
+ */
46
+ clear() {
47
+ this.store.clear();
48
+ }
49
+ };
50
+ var schemaRegistry = new SchemaRegistry();
51
+
52
+ // src/validation/zod.helpers.ts
53
+ var ValidationError = class extends Error {
54
+ constructor(message, cause) {
55
+ super(message, { cause });
56
+ this.cause = cause;
57
+ this.name = "ClientValidationError";
58
+ }
59
+ };
60
+ function parseWithSchema(options) {
61
+ const { schema, value, description } = options;
62
+ const outcome = schema.safeParse(value);
63
+ if (outcome.success) {
64
+ return { success: true, data: outcome.data };
65
+ }
66
+ const error = new ValidationError(description ?? "Validation failed", outcome.error);
67
+ return { success: false, error };
68
+ }
69
+ function parseWithRegistry(options) {
70
+ const schema = schemaRegistry.get(options.key);
71
+ if (!schema) {
72
+ if (options.skipOnMissingSchema) {
73
+ return { success: true, data: options.value };
74
+ }
75
+ return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };
76
+ }
77
+ return parseWithSchema({ schema, value: options.value, description: options.description });
78
+ }
79
+
80
+ // src/core/http/operation.helper.ts
81
+ async function requestJson(http, params) {
82
+ const {
83
+ operationId,
84
+ method,
85
+ path,
86
+ query,
87
+ body,
88
+ schemaKey,
89
+ requestSchemaKey,
90
+ description,
91
+ querySerializer,
92
+ signal,
93
+ timeoutMs,
94
+ validation,
95
+ meta
96
+ } = params;
97
+ const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);
98
+ let requestBody = body;
99
+ if (runtimeValidation.requests && requestSchemaKey && body !== void 0) {
100
+ const parsedRequest = parseWithRegistry({
101
+ key: requestSchemaKey,
102
+ value: body,
103
+ description: `${description ?? operationId} request`,
104
+ skipOnMissingSchema: true
105
+ });
106
+ if (!parsedRequest.success) {
107
+ throw parsedRequest.error;
108
+ }
109
+ requestBody = parsedRequest.data;
110
+ }
111
+ const metaValidation = validation ?? meta?.validation;
112
+ const requestMeta = {
113
+ ...meta ?? {},
114
+ operationId,
115
+ validation: metaValidation
116
+ };
117
+ const res = await http.request({
118
+ method,
119
+ path,
120
+ query,
121
+ body: requestBody,
122
+ querySerializer,
123
+ signal,
124
+ timeoutMs,
125
+ meta: requestMeta
126
+ });
127
+ if (!runtimeValidation.responses) {
128
+ return res.data;
129
+ }
130
+ const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });
131
+ if (!parsedResponse.success) throw parsedResponse.error;
132
+ return parsedResponse.data;
133
+ }
134
+ async function requestVoid(http, params) {
135
+ const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;
136
+ const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);
137
+ let requestBody = body;
138
+ if (runtimeValidation.requests && requestSchemaKey && body !== void 0) {
139
+ const parsedRequest = parseWithRegistry({
140
+ key: requestSchemaKey,
141
+ value: body,
142
+ description: `${operationId} request`,
143
+ skipOnMissingSchema: true
144
+ });
145
+ if (!parsedRequest.success) {
146
+ throw parsedRequest.error;
147
+ }
148
+ requestBody = parsedRequest.data;
149
+ }
150
+ const metaValidation = validation ?? meta?.validation;
151
+ const requestMeta = {
152
+ ...meta ?? {},
153
+ operationId,
154
+ validation: metaValidation
155
+ };
156
+ await http.request({
157
+ method,
158
+ path,
159
+ query,
160
+ body: requestBody,
161
+ querySerializer,
162
+ signal,
163
+ timeoutMs,
164
+ meta: requestMeta
165
+ });
166
+ }
167
+
168
+ // src/core/http/path.builder.ts
169
+ function buildPath(template, params) {
170
+ return template.replace(/\{(.*?)\}/g, (_, key) => encodeURIComponent(String(params[key] ?? "")));
171
+ }
172
+
173
+ // src/domains/client-ids/client-ids.facade.ts
174
+ function createClientIdsApi(http) {
175
+ const PATH_BASE = "/v2/client-ids";
176
+ return {
177
+ async list() {
178
+ const OP = "ClientIdV2Controller_findAll_v2";
179
+ return requestJson(http, {
180
+ operationId: OP,
181
+ method: "GET",
182
+ path: PATH_BASE,
183
+ schemaKey: { operationId: OP, kind: "response", status: 200 },
184
+ description: "List client IDs"
185
+ });
186
+ },
187
+ async create(body) {
188
+ const OP = "ClientIdV2Controller_create_v2";
189
+ return requestJson(http, {
190
+ operationId: OP,
191
+ method: "POST",
192
+ path: PATH_BASE,
193
+ body,
194
+ requestSchemaKey: { operationId: OP, kind: "request", variant: "application/json" },
195
+ schemaKey: { operationId: OP, kind: "response", status: 201 },
196
+ description: "Create client ID"
197
+ });
198
+ },
199
+ async findOne(id) {
200
+ const path = buildPath(`${PATH_BASE}/{id}`, { id });
201
+ const OP = "ClientIdV2Controller_findOne_v2";
202
+ return requestJson(http, {
203
+ operationId: OP,
204
+ method: "GET",
205
+ path,
206
+ schemaKey: { operationId: OP, kind: "response", status: 200 },
207
+ description: "Get client ID"
208
+ });
209
+ },
210
+ async update(id, body) {
211
+ const path = buildPath(`${PATH_BASE}/{id}`, { id });
212
+ const OP = "ClientIdV2Controller_update_v2";
213
+ return requestJson(http, {
214
+ operationId: OP,
215
+ method: "PUT",
216
+ path,
217
+ body,
218
+ requestSchemaKey: { operationId: OP, kind: "request", variant: "application/json" },
219
+ schemaKey: { operationId: OP, kind: "response", status: 200 },
220
+ description: "Update client ID"
221
+ });
222
+ },
223
+ async revoke(id) {
224
+ const path = buildPath(`${PATH_BASE}/{id}`, { id });
225
+ const OP = "ClientIdV2Controller_delete_v2";
226
+ await requestVoid(http, {
227
+ operationId: OP,
228
+ method: "DELETE",
229
+ path
230
+ });
231
+ }
232
+ };
233
+ }
234
+ var ErrorDetailSchema = zod.z.object({
235
+ message: zod.z.string(),
236
+ code: zod.z.string().optional(),
237
+ field: zod.z.string().optional(),
238
+ source: zod.z.object({
239
+ pointer: zod.z.string().optional(),
240
+ parameter: zod.z.string().optional()
241
+ }).passthrough().optional(),
242
+ meta: zod.z.record(zod.z.unknown()).optional()
243
+ }).passthrough();
244
+ var ErrorEnvelopeSchema = zod.z.object({
245
+ status: zod.z.number().optional(),
246
+ statusCode: zod.z.number().optional(),
247
+ code: zod.z.string().optional(),
248
+ error: zod.z.string().optional(),
249
+ message: zod.z.union([
250
+ zod.z.string(),
251
+ zod.z.array(zod.z.union([zod.z.string(), ErrorDetailSchema])),
252
+ ErrorDetailSchema
253
+ ]).optional(),
254
+ detail: zod.z.unknown().optional(),
255
+ errors: zod.z.array(ErrorDetailSchema).optional(),
256
+ requestId: zod.z.string().optional(),
257
+ correlationId: zod.z.string().optional(),
258
+ retryAfter: zod.z.union([zod.z.number(), zod.z.string()]).optional(),
259
+ retryAfterMs: zod.z.number().optional(),
260
+ meta: zod.z.record(zod.z.unknown()).optional()
261
+ }).passthrough();
262
+ var ClientIdV2Controller_findAll_v2_200 = zod.z.array(zod.z.object({ "id": zod.z.string().optional(), "clientId": zod.z.string().optional(), "label": zod.z.string().optional(), "allowedDomains": zod.z.array(zod.z.string()).optional(), "status": zod.z.string().optional(), "createdAt": zod.z.string().optional(), "lastUsedAt": zod.z.string().nullable().optional() }).passthrough());
263
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findAll_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_findAll_v2_200 });
264
+ var ClientIdV2Controller_findAll_v2_401 = ErrorEnvelopeSchema;
265
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findAll_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_findAll_v2_401 });
266
+ var ClientIdV2Controller_findAll_v2_429 = ErrorEnvelopeSchema;
267
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findAll_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_findAll_v2_429 });
268
+ var ClientIdV2Controller_create_v2_Request = zod.z.object({ "label": zod.z.string(), "allowedDomains": zod.z.array(zod.z.string()), "feePercentage": zod.z.string().optional(), "feeAddress": zod.z.string().optional() }).passthrough();
269
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "request", variant: "application/json" }, schema: ClientIdV2Controller_create_v2_Request });
270
+ var ClientIdV2Controller_create_v2_201 = zod.z.object({ "id": zod.z.string().optional(), "clientId": zod.z.string().optional(), "label": zod.z.string().optional(), "allowedDomains": zod.z.array(zod.z.string()).optional(), "feePercentage": zod.z.string().nullable().optional(), "feeAddress": zod.z.string().nullable().optional(), "status": zod.z.string().optional(), "createdAt": zod.z.string().optional() }).passthrough();
271
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 201 }, schema: ClientIdV2Controller_create_v2_201 });
272
+ var ClientIdV2Controller_create_v2_400 = ErrorEnvelopeSchema;
273
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 400 }, schema: ClientIdV2Controller_create_v2_400 });
274
+ var ClientIdV2Controller_create_v2_401 = ErrorEnvelopeSchema;
275
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_create_v2_401 });
276
+ var ClientIdV2Controller_create_v2_429 = ErrorEnvelopeSchema;
277
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_create_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_create_v2_429 });
278
+ var ClientIdV2Controller_findOne_v2_200 = zod.z.object({ "id": zod.z.string().optional(), "clientId": zod.z.string().optional(), "label": zod.z.string().optional(), "allowedDomains": zod.z.array(zod.z.string()).optional(), "feePercentage": zod.z.string().nullable().optional(), "feeAddress": zod.z.string().nullable().optional(), "status": zod.z.string().optional(), "createdAt": zod.z.string().optional(), "updatedAt": zod.z.string().optional(), "lastUsedAt": zod.z.string().nullable().optional() }).passthrough();
279
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_findOne_v2_200 });
280
+ var ClientIdV2Controller_findOne_v2_401 = ErrorEnvelopeSchema;
281
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_findOne_v2_401 });
282
+ var ClientIdV2Controller_findOne_v2_404 = ErrorEnvelopeSchema;
283
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 404 }, schema: ClientIdV2Controller_findOne_v2_404 });
284
+ var ClientIdV2Controller_findOne_v2_429 = ErrorEnvelopeSchema;
285
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_findOne_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_findOne_v2_429 });
286
+ var ClientIdV2Controller_update_v2_Request = zod.z.object({ "label": zod.z.string().optional(), "allowedDomains": zod.z.array(zod.z.string()).optional(), "feePercentage": zod.z.string().nullable().optional(), "feeAddress": zod.z.string().nullable().optional(), "status": zod.z.enum(["active", "inactive", "revoked"]).optional() }).passthrough();
287
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "request", variant: "application/json" }, schema: ClientIdV2Controller_update_v2_Request });
288
+ var ClientIdV2Controller_update_v2_200 = zod.z.object({ "id": zod.z.string().optional(), "clientId": zod.z.string().optional(), "label": zod.z.string().optional(), "allowedDomains": zod.z.array(zod.z.string()).optional(), "feePercentage": zod.z.string().nullable().optional(), "feeAddress": zod.z.string().nullable().optional(), "status": zod.z.string().optional(), "updatedAt": zod.z.string().optional() }).passthrough();
289
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_update_v2_200 });
290
+ var ClientIdV2Controller_update_v2_400 = ErrorEnvelopeSchema;
291
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 400 }, schema: ClientIdV2Controller_update_v2_400 });
292
+ var ClientIdV2Controller_update_v2_401 = ErrorEnvelopeSchema;
293
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_update_v2_401 });
294
+ var ClientIdV2Controller_update_v2_404 = ErrorEnvelopeSchema;
295
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 404 }, schema: ClientIdV2Controller_update_v2_404 });
296
+ var ClientIdV2Controller_update_v2_429 = ErrorEnvelopeSchema;
297
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_update_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_update_v2_429 });
298
+ var ClientIdV2Controller_delete_v2_200 = zod.z.unknown();
299
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_delete_v2", kind: "response", status: 200 }, schema: ClientIdV2Controller_delete_v2_200 });
300
+ var ClientIdV2Controller_delete_v2_401 = ErrorEnvelopeSchema;
301
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_delete_v2", kind: "response", status: 401 }, schema: ClientIdV2Controller_delete_v2_401 });
302
+ var ClientIdV2Controller_delete_v2_404 = ErrorEnvelopeSchema;
303
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_delete_v2", kind: "response", status: 404 }, schema: ClientIdV2Controller_delete_v2_404 });
304
+ var ClientIdV2Controller_delete_v2_429 = ErrorEnvelopeSchema;
305
+ schemaRegistry.register({ key: { operationId: "ClientIdV2Controller_delete_v2", kind: "response", status: 429 }, schema: ClientIdV2Controller_delete_v2_429 });
306
+
307
+ exports.createClientIdsApi = createClientIdsApi;
308
+ //# sourceMappingURL=index.js.map
309
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/core/http/validation.config.ts","../../../../src/validation/schema.registry.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/core/http/path.builder.ts","../../../../src/domains/client-ids/client-ids.facade.ts","../../../../src/validation/generated/groups/client-ids.schemas.generated.ts"],"names":["z"],"mappings":"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","file":"index.js","sourcesContent":["import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","export function buildPath(template: string, params: Record<string, string | number>): string {\n return template.replace(/\\{(.*?)\\}/g, (_, key: string) => encodeURIComponent(String(params[key] ?? \"\")));\n}\n\n","import type { HttpClient } from \"../../core/http/http.types\";\nimport { requestJson, requestVoid } from \"../../core/http/operation.helper\";\nimport { buildPath } from \"../../core/http/path.builder\";\nimport type { operations } from \"../../generated/openapi-types\";\n\nexport type ClientIdListResponse = operations[\"ClientIdV2Controller_findAll_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // array\nexport type ClientIdCreateBody = operations[\"ClientIdV2Controller_create_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\nexport type ClientIdResponse = operations[\"ClientIdV2Controller_findOne_v2\"][\"responses\"][200][\"content\"][\"application/json\"]; // single\nexport type ClientIdUpdateBody = operations[\"ClientIdV2Controller_update_v2\"][\"requestBody\"][\"content\"][\"application/json\"]; // input\n\nexport interface ClientIdsApi {\n list(): Promise<ClientIdListResponse>;\n create(body: ClientIdCreateBody): Promise<ClientIdResponse>;\n findOne(id: string): Promise<ClientIdResponse>;\n update(id: string, body: ClientIdUpdateBody): Promise<ClientIdResponse>;\n revoke(id: string): Promise<void>;\n}\n\nexport function createClientIdsApi(http: HttpClient): ClientIdsApi {\n const PATH_BASE = \"/v2/client-ids\" as const;\n return {\n async list() {\n const OP = \"ClientIdV2Controller_findAll_v2\" as const;\n return requestJson<ClientIdListResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path: PATH_BASE,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"List client IDs\",\n });\n },\n async create(body) {\n const OP = \"ClientIdV2Controller_create_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"POST\",\n path: PATH_BASE,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 201 },\n description: \"Create client ID\",\n });\n },\n async findOne(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_findOne_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"GET\",\n path,\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Get client ID\",\n });\n },\n async update(id, body) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_update_v2\" as const;\n return requestJson<ClientIdResponse>(http, {\n operationId: OP,\n method: \"PUT\",\n path,\n body,\n requestSchemaKey: { operationId: OP, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP, kind: \"response\", status: 200 },\n description: \"Update client ID\",\n });\n },\n async revoke(id) {\n const path = buildPath(`${PATH_BASE}/{id}`, { id });\n const OP = \"ClientIdV2Controller_delete_v2\" as const;\n await requestVoid(http, {\n operationId: OP,\n method: \"DELETE\",\n path,\n });\n },\n };\n}\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (200)\nexport const ClientIdV2Controller_findAll_v2_200 = z.array(z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough());\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findAll_v2_200 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (401)\nexport const ClientIdV2Controller_findAll_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findAll_v2_401 });\n\n// GET /v2/client-ids -> ClientIdV2Controller_findAll_v2 (429)\nexport const ClientIdV2Controller_findAll_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findAll_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findAll_v2_429 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 request (application/json)\nexport const ClientIdV2Controller_create_v2_Request = z.object({ \"label\": z.string(), \"allowedDomains\": z.array(z.string()), \"feePercentage\": (z.string()).optional(), \"feeAddress\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_create_v2_Request });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (201)\nexport const ClientIdV2Controller_create_v2_201 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 201 }, schema: ClientIdV2Controller_create_v2_201 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (400)\nexport const ClientIdV2Controller_create_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_create_v2_400 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (401)\nexport const ClientIdV2Controller_create_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_create_v2_401 });\n\n// POST /v2/client-ids -> ClientIdV2Controller_create_v2 (429)\nexport const ClientIdV2Controller_create_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_create_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_create_v2_429 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (200)\nexport const ClientIdV2Controller_findOne_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"createdAt\": (z.string()).optional(), \"updatedAt\": (z.string()).optional(), \"lastUsedAt\": (z.string().nullable()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_findOne_v2_200 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (401)\nexport const ClientIdV2Controller_findOne_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_findOne_v2_401 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (404)\nexport const ClientIdV2Controller_findOne_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_findOne_v2_404 });\n\n// GET /v2/client-ids/{id} -> ClientIdV2Controller_findOne_v2 (429)\nexport const ClientIdV2Controller_findOne_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_findOne_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_findOne_v2_429 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 request (application/json)\nexport const ClientIdV2Controller_update_v2_Request = z.object({ \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.enum(['active', 'inactive', 'revoked'])).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'request', variant: 'application/json' }, schema: ClientIdV2Controller_update_v2_Request });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (200)\nexport const ClientIdV2Controller_update_v2_200 = z.object({ \"id\": (z.string()).optional(), \"clientId\": (z.string()).optional(), \"label\": (z.string()).optional(), \"allowedDomains\": (z.array(z.string())).optional(), \"feePercentage\": (z.string().nullable()).optional(), \"feeAddress\": (z.string().nullable()).optional(), \"status\": (z.string()).optional(), \"updatedAt\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_update_v2_200 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (400)\nexport const ClientIdV2Controller_update_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 400 }, schema: ClientIdV2Controller_update_v2_400 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (401)\nexport const ClientIdV2Controller_update_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_update_v2_401 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (404)\nexport const ClientIdV2Controller_update_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_update_v2_404 });\n\n// PUT /v2/client-ids/{id} -> ClientIdV2Controller_update_v2 (429)\nexport const ClientIdV2Controller_update_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_update_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_update_v2_429 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (200)\nexport const ClientIdV2Controller_delete_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 200 }, schema: ClientIdV2Controller_delete_v2_200 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (401)\nexport const ClientIdV2Controller_delete_v2_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 401 }, schema: ClientIdV2Controller_delete_v2_401 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (404)\nexport const ClientIdV2Controller_delete_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 404 }, schema: ClientIdV2Controller_delete_v2_404 });\n\n// DELETE /v2/client-ids/{id} -> ClientIdV2Controller_delete_v2 (429)\nexport const ClientIdV2Controller_delete_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'ClientIdV2Controller_delete_v2', kind: 'response', status: 429 }, schema: ClientIdV2Controller_delete_v2_429 });\n"]}