@gigapay-dev/contracts 3.26.0 → 3.28.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.
- package/build/domains/admin/index.d.ts +103 -0
- package/build/domains/admin/index.d.ts.map +1 -1
- package/build/domains/admin/index.js +22 -0
- package/build/domains/admin/index.js.map +1 -1
- package/build/domains/admin/payment-methods.d.ts +108 -0
- package/build/domains/admin/payment-methods.d.ts.map +1 -0
- package/build/domains/admin/payment-methods.js +55 -0
- package/build/domains/admin/payment-methods.js.map +1 -0
- package/build/domains/admin/settings.d.ts +46 -0
- package/build/domains/admin/settings.d.ts.map +1 -0
- package/build/domains/admin/settings.js +35 -0
- package/build/domains/admin/settings.js.map +1 -0
- package/build/domains/auth/index.d.ts +120 -0
- package/build/domains/auth/index.d.ts.map +1 -1
- package/build/domains/auth/index.js +3 -0
- package/build/domains/auth/index.js.map +1 -1
- package/build/domains/auth/passkeys.d.ts +345 -0
- package/build/domains/auth/passkeys.d.ts.map +1 -0
- package/build/domains/auth/passkeys.js +107 -0
- package/build/domains/auth/passkeys.js.map +1 -0
- package/build/domains/products/commands.d.ts +6 -6
- package/build/domains/products/dtos.d.ts +2 -2
- package/build/domains/products/index.d.ts +4 -4
- package/build/domains/products/queries.d.ts +4 -4
- package/build/domains/users/dtos.d.ts +27 -0
- package/build/domains/users/dtos.d.ts.map +1 -1
- package/build/domains/users/dtos.js +18 -1
- package/build/domains/users/dtos.js.map +1 -1
- package/build/domains/users/index.d.ts +76 -0
- package/build/domains/users/index.d.ts.map +1 -1
- package/build/domains/users/index.js +2 -2
- package/build/domains/users/index.js.map +1 -1
- package/build/index.d.ts +262 -4
- package/build/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,345 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Passkey (WebAuthn). Объекты options и credential описаны минимально:
|
|
4
|
+
* полную структуру проверяет браузер и @simplewebauthn/server на бэкенде.
|
|
5
|
+
*/
|
|
6
|
+
declare const PublicKeyCredentialJSONSchema: z.ZodObject<{
|
|
7
|
+
id: z.ZodString;
|
|
8
|
+
rawId: z.ZodString;
|
|
9
|
+
type: z.ZodLiteral<"public-key">;
|
|
10
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
11
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
12
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
13
|
+
platform: "platform";
|
|
14
|
+
"cross-platform": "cross-platform";
|
|
15
|
+
}>>;
|
|
16
|
+
}, z.core.$loose>;
|
|
17
|
+
export type PublicKeyCredentialJSON = z.infer<typeof PublicKeyCredentialJSONSchema>;
|
|
18
|
+
export declare const PasskeyRegistrationOptionsSchema: z.ZodObject<{
|
|
19
|
+
challenge: z.ZodString;
|
|
20
|
+
rp: z.ZodObject<{
|
|
21
|
+
id: z.ZodOptional<z.ZodString>;
|
|
22
|
+
name: z.ZodString;
|
|
23
|
+
}, z.core.$loose>;
|
|
24
|
+
user: z.ZodObject<{
|
|
25
|
+
id: z.ZodString;
|
|
26
|
+
name: z.ZodString;
|
|
27
|
+
displayName: z.ZodString;
|
|
28
|
+
}, z.core.$loose>;
|
|
29
|
+
pubKeyCredParams: z.ZodArray<z.ZodObject<{
|
|
30
|
+
type: z.ZodLiteral<"public-key">;
|
|
31
|
+
alg: z.ZodNumber;
|
|
32
|
+
}, z.core.$strip>>;
|
|
33
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
34
|
+
attestation: z.ZodOptional<z.ZodString>;
|
|
35
|
+
excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
36
|
+
authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
37
|
+
}, z.core.$loose>;
|
|
38
|
+
export type PasskeyRegistrationOptions = z.infer<typeof PasskeyRegistrationOptionsSchema>;
|
|
39
|
+
export declare const PasskeyLoginOptionsSchema: z.ZodObject<{
|
|
40
|
+
challenge: z.ZodString;
|
|
41
|
+
rpId: z.ZodOptional<z.ZodString>;
|
|
42
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
43
|
+
userVerification: z.ZodOptional<z.ZodString>;
|
|
44
|
+
allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
45
|
+
}, z.core.$loose>;
|
|
46
|
+
export type PasskeyLoginOptions = z.infer<typeof PasskeyLoginOptionsSchema>;
|
|
47
|
+
export declare const PasskeySchema: z.ZodObject<{
|
|
48
|
+
id: z.ZodNumber;
|
|
49
|
+
name: z.ZodNullable<z.ZodString>;
|
|
50
|
+
deviceType: z.ZodString;
|
|
51
|
+
backedUp: z.ZodBoolean;
|
|
52
|
+
createdAt: z.ZodString;
|
|
53
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
54
|
+
}, z.core.$strip>;
|
|
55
|
+
export type Passkey = z.infer<typeof PasskeySchema>;
|
|
56
|
+
export declare const PasskeyRegistrationVerifyRequestSchema: z.ZodObject<{
|
|
57
|
+
response: z.ZodObject<{
|
|
58
|
+
id: z.ZodString;
|
|
59
|
+
rawId: z.ZodString;
|
|
60
|
+
type: z.ZodLiteral<"public-key">;
|
|
61
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
62
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
63
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
64
|
+
platform: "platform";
|
|
65
|
+
"cross-platform": "cross-platform";
|
|
66
|
+
}>>;
|
|
67
|
+
}, z.core.$loose>;
|
|
68
|
+
name: z.ZodOptional<z.ZodString>;
|
|
69
|
+
}, z.core.$strip>;
|
|
70
|
+
export type PasskeyRegistrationVerifyRequest = z.infer<typeof PasskeyRegistrationVerifyRequestSchema>;
|
|
71
|
+
export declare const PasskeyLoginVerifyRequestSchema: z.ZodObject<{
|
|
72
|
+
response: z.ZodObject<{
|
|
73
|
+
id: z.ZodString;
|
|
74
|
+
rawId: z.ZodString;
|
|
75
|
+
type: z.ZodLiteral<"public-key">;
|
|
76
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
77
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
78
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
79
|
+
platform: "platform";
|
|
80
|
+
"cross-platform": "cross-platform";
|
|
81
|
+
}>>;
|
|
82
|
+
}, z.core.$loose>;
|
|
83
|
+
}, z.core.$strip>;
|
|
84
|
+
export type PasskeyLoginVerifyRequest = z.infer<typeof PasskeyLoginVerifyRequestSchema>;
|
|
85
|
+
export declare const PasskeyLoginResponseSchema: z.ZodObject<{
|
|
86
|
+
accessToken: z.ZodString;
|
|
87
|
+
role: z.ZodEnum<{
|
|
88
|
+
USER: "USER";
|
|
89
|
+
ADMIN: "ADMIN";
|
|
90
|
+
}>;
|
|
91
|
+
}, z.core.$strip>;
|
|
92
|
+
export type PasskeyLoginResponse = z.infer<typeof PasskeyLoginResponseSchema>;
|
|
93
|
+
export declare const PasskeyListResponseSchema: z.ZodArray<z.ZodObject<{
|
|
94
|
+
id: z.ZodNumber;
|
|
95
|
+
name: z.ZodNullable<z.ZodString>;
|
|
96
|
+
deviceType: z.ZodString;
|
|
97
|
+
backedUp: z.ZodBoolean;
|
|
98
|
+
createdAt: z.ZodString;
|
|
99
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
100
|
+
}, z.core.$strip>>;
|
|
101
|
+
export declare const PasskeyIdParamsSchema: z.ZodObject<{
|
|
102
|
+
id: z.ZodCoercedNumber<unknown>;
|
|
103
|
+
}, z.core.$strip>;
|
|
104
|
+
export declare const PasskeyRegistrationOptionsEndpoint: {
|
|
105
|
+
readonly method: "POST";
|
|
106
|
+
readonly path: "/api/auth/passkeys/registration/options";
|
|
107
|
+
readonly response: z.ZodObject<{
|
|
108
|
+
challenge: z.ZodString;
|
|
109
|
+
rp: z.ZodObject<{
|
|
110
|
+
id: z.ZodOptional<z.ZodString>;
|
|
111
|
+
name: z.ZodString;
|
|
112
|
+
}, z.core.$loose>;
|
|
113
|
+
user: z.ZodObject<{
|
|
114
|
+
id: z.ZodString;
|
|
115
|
+
name: z.ZodString;
|
|
116
|
+
displayName: z.ZodString;
|
|
117
|
+
}, z.core.$loose>;
|
|
118
|
+
pubKeyCredParams: z.ZodArray<z.ZodObject<{
|
|
119
|
+
type: z.ZodLiteral<"public-key">;
|
|
120
|
+
alg: z.ZodNumber;
|
|
121
|
+
}, z.core.$strip>>;
|
|
122
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
123
|
+
attestation: z.ZodOptional<z.ZodString>;
|
|
124
|
+
excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
125
|
+
authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
126
|
+
}, z.core.$loose>;
|
|
127
|
+
readonly requiresAuth: true;
|
|
128
|
+
};
|
|
129
|
+
export declare const PasskeyRegistrationVerifyEndpoint: {
|
|
130
|
+
readonly method: "POST";
|
|
131
|
+
readonly path: "/api/auth/passkeys/registration/verify";
|
|
132
|
+
readonly request: z.ZodObject<{
|
|
133
|
+
response: z.ZodObject<{
|
|
134
|
+
id: z.ZodString;
|
|
135
|
+
rawId: z.ZodString;
|
|
136
|
+
type: z.ZodLiteral<"public-key">;
|
|
137
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
138
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
139
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
140
|
+
platform: "platform";
|
|
141
|
+
"cross-platform": "cross-platform";
|
|
142
|
+
}>>;
|
|
143
|
+
}, z.core.$loose>;
|
|
144
|
+
name: z.ZodOptional<z.ZodString>;
|
|
145
|
+
}, z.core.$strip>;
|
|
146
|
+
readonly response: z.ZodObject<{
|
|
147
|
+
id: z.ZodNumber;
|
|
148
|
+
name: z.ZodNullable<z.ZodString>;
|
|
149
|
+
deviceType: z.ZodString;
|
|
150
|
+
backedUp: z.ZodBoolean;
|
|
151
|
+
createdAt: z.ZodString;
|
|
152
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
153
|
+
}, z.core.$strip>;
|
|
154
|
+
readonly requiresAuth: true;
|
|
155
|
+
};
|
|
156
|
+
export declare const PasskeyLoginOptionsEndpoint: {
|
|
157
|
+
readonly method: "POST";
|
|
158
|
+
readonly path: "/api/auth/passkeys/login/options";
|
|
159
|
+
readonly response: z.ZodObject<{
|
|
160
|
+
challenge: z.ZodString;
|
|
161
|
+
rpId: z.ZodOptional<z.ZodString>;
|
|
162
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
163
|
+
userVerification: z.ZodOptional<z.ZodString>;
|
|
164
|
+
allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
165
|
+
}, z.core.$loose>;
|
|
166
|
+
readonly rateLimit: {
|
|
167
|
+
readonly limit: 10;
|
|
168
|
+
readonly ttlSec: 900;
|
|
169
|
+
};
|
|
170
|
+
};
|
|
171
|
+
export declare const PasskeyLoginVerifyEndpoint: {
|
|
172
|
+
readonly method: "POST";
|
|
173
|
+
readonly path: "/api/auth/passkeys/login/verify";
|
|
174
|
+
readonly request: z.ZodObject<{
|
|
175
|
+
response: z.ZodObject<{
|
|
176
|
+
id: z.ZodString;
|
|
177
|
+
rawId: z.ZodString;
|
|
178
|
+
type: z.ZodLiteral<"public-key">;
|
|
179
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
180
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
181
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
182
|
+
platform: "platform";
|
|
183
|
+
"cross-platform": "cross-platform";
|
|
184
|
+
}>>;
|
|
185
|
+
}, z.core.$loose>;
|
|
186
|
+
}, z.core.$strip>;
|
|
187
|
+
readonly response: z.ZodObject<{
|
|
188
|
+
accessToken: z.ZodString;
|
|
189
|
+
role: z.ZodEnum<{
|
|
190
|
+
USER: "USER";
|
|
191
|
+
ADMIN: "ADMIN";
|
|
192
|
+
}>;
|
|
193
|
+
}, z.core.$strip>;
|
|
194
|
+
readonly rateLimit: {
|
|
195
|
+
readonly limit: 5;
|
|
196
|
+
readonly ttlSec: 900;
|
|
197
|
+
};
|
|
198
|
+
};
|
|
199
|
+
export declare const PasskeyListEndpoint: {
|
|
200
|
+
readonly method: "GET";
|
|
201
|
+
readonly path: "/api/auth/passkeys";
|
|
202
|
+
readonly response: z.ZodArray<z.ZodObject<{
|
|
203
|
+
id: z.ZodNumber;
|
|
204
|
+
name: z.ZodNullable<z.ZodString>;
|
|
205
|
+
deviceType: z.ZodString;
|
|
206
|
+
backedUp: z.ZodBoolean;
|
|
207
|
+
createdAt: z.ZodString;
|
|
208
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
209
|
+
}, z.core.$strip>>;
|
|
210
|
+
readonly requiresAuth: true;
|
|
211
|
+
};
|
|
212
|
+
export declare const PasskeyRemoveEndpoint: {
|
|
213
|
+
readonly method: "DELETE";
|
|
214
|
+
readonly path: "/api/auth/passkeys/:id";
|
|
215
|
+
readonly params: z.ZodObject<{
|
|
216
|
+
id: z.ZodCoercedNumber<unknown>;
|
|
217
|
+
}, z.core.$strip>;
|
|
218
|
+
readonly response: z.ZodObject<{
|
|
219
|
+
ok: z.ZodLiteral<true>;
|
|
220
|
+
}, z.core.$strip>;
|
|
221
|
+
readonly requiresAuth: true;
|
|
222
|
+
};
|
|
223
|
+
export declare const AuthPasskeys: {
|
|
224
|
+
readonly passkeyRegistrationOptions: {
|
|
225
|
+
readonly method: "POST";
|
|
226
|
+
readonly path: "/api/auth/passkeys/registration/options";
|
|
227
|
+
readonly response: z.ZodObject<{
|
|
228
|
+
challenge: z.ZodString;
|
|
229
|
+
rp: z.ZodObject<{
|
|
230
|
+
id: z.ZodOptional<z.ZodString>;
|
|
231
|
+
name: z.ZodString;
|
|
232
|
+
}, z.core.$loose>;
|
|
233
|
+
user: z.ZodObject<{
|
|
234
|
+
id: z.ZodString;
|
|
235
|
+
name: z.ZodString;
|
|
236
|
+
displayName: z.ZodString;
|
|
237
|
+
}, z.core.$loose>;
|
|
238
|
+
pubKeyCredParams: z.ZodArray<z.ZodObject<{
|
|
239
|
+
type: z.ZodLiteral<"public-key">;
|
|
240
|
+
alg: z.ZodNumber;
|
|
241
|
+
}, z.core.$strip>>;
|
|
242
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
243
|
+
attestation: z.ZodOptional<z.ZodString>;
|
|
244
|
+
excludeCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
245
|
+
authenticatorSelection: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
246
|
+
}, z.core.$loose>;
|
|
247
|
+
readonly requiresAuth: true;
|
|
248
|
+
};
|
|
249
|
+
readonly passkeyRegistrationVerify: {
|
|
250
|
+
readonly method: "POST";
|
|
251
|
+
readonly path: "/api/auth/passkeys/registration/verify";
|
|
252
|
+
readonly request: z.ZodObject<{
|
|
253
|
+
response: z.ZodObject<{
|
|
254
|
+
id: z.ZodString;
|
|
255
|
+
rawId: z.ZodString;
|
|
256
|
+
type: z.ZodLiteral<"public-key">;
|
|
257
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
258
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
259
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
260
|
+
platform: "platform";
|
|
261
|
+
"cross-platform": "cross-platform";
|
|
262
|
+
}>>;
|
|
263
|
+
}, z.core.$loose>;
|
|
264
|
+
name: z.ZodOptional<z.ZodString>;
|
|
265
|
+
}, z.core.$strip>;
|
|
266
|
+
readonly response: z.ZodObject<{
|
|
267
|
+
id: z.ZodNumber;
|
|
268
|
+
name: z.ZodNullable<z.ZodString>;
|
|
269
|
+
deviceType: z.ZodString;
|
|
270
|
+
backedUp: z.ZodBoolean;
|
|
271
|
+
createdAt: z.ZodString;
|
|
272
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
273
|
+
}, z.core.$strip>;
|
|
274
|
+
readonly requiresAuth: true;
|
|
275
|
+
};
|
|
276
|
+
readonly passkeyLoginOptions: {
|
|
277
|
+
readonly method: "POST";
|
|
278
|
+
readonly path: "/api/auth/passkeys/login/options";
|
|
279
|
+
readonly response: z.ZodObject<{
|
|
280
|
+
challenge: z.ZodString;
|
|
281
|
+
rpId: z.ZodOptional<z.ZodString>;
|
|
282
|
+
timeout: z.ZodOptional<z.ZodNumber>;
|
|
283
|
+
userVerification: z.ZodOptional<z.ZodString>;
|
|
284
|
+
allowCredentials: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
285
|
+
}, z.core.$loose>;
|
|
286
|
+
readonly rateLimit: {
|
|
287
|
+
readonly limit: 10;
|
|
288
|
+
readonly ttlSec: 900;
|
|
289
|
+
};
|
|
290
|
+
};
|
|
291
|
+
readonly passkeyLoginVerify: {
|
|
292
|
+
readonly method: "POST";
|
|
293
|
+
readonly path: "/api/auth/passkeys/login/verify";
|
|
294
|
+
readonly request: z.ZodObject<{
|
|
295
|
+
response: z.ZodObject<{
|
|
296
|
+
id: z.ZodString;
|
|
297
|
+
rawId: z.ZodString;
|
|
298
|
+
type: z.ZodLiteral<"public-key">;
|
|
299
|
+
response: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
300
|
+
clientExtensionResults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
301
|
+
authenticatorAttachment: z.ZodOptional<z.ZodEnum<{
|
|
302
|
+
platform: "platform";
|
|
303
|
+
"cross-platform": "cross-platform";
|
|
304
|
+
}>>;
|
|
305
|
+
}, z.core.$loose>;
|
|
306
|
+
}, z.core.$strip>;
|
|
307
|
+
readonly response: z.ZodObject<{
|
|
308
|
+
accessToken: z.ZodString;
|
|
309
|
+
role: z.ZodEnum<{
|
|
310
|
+
USER: "USER";
|
|
311
|
+
ADMIN: "ADMIN";
|
|
312
|
+
}>;
|
|
313
|
+
}, z.core.$strip>;
|
|
314
|
+
readonly rateLimit: {
|
|
315
|
+
readonly limit: 5;
|
|
316
|
+
readonly ttlSec: 900;
|
|
317
|
+
};
|
|
318
|
+
};
|
|
319
|
+
readonly passkeyList: {
|
|
320
|
+
readonly method: "GET";
|
|
321
|
+
readonly path: "/api/auth/passkeys";
|
|
322
|
+
readonly response: z.ZodArray<z.ZodObject<{
|
|
323
|
+
id: z.ZodNumber;
|
|
324
|
+
name: z.ZodNullable<z.ZodString>;
|
|
325
|
+
deviceType: z.ZodString;
|
|
326
|
+
backedUp: z.ZodBoolean;
|
|
327
|
+
createdAt: z.ZodString;
|
|
328
|
+
lastUsedAt: z.ZodNullable<z.ZodString>;
|
|
329
|
+
}, z.core.$strip>>;
|
|
330
|
+
readonly requiresAuth: true;
|
|
331
|
+
};
|
|
332
|
+
readonly passkeyRemove: {
|
|
333
|
+
readonly method: "DELETE";
|
|
334
|
+
readonly path: "/api/auth/passkeys/:id";
|
|
335
|
+
readonly params: z.ZodObject<{
|
|
336
|
+
id: z.ZodCoercedNumber<unknown>;
|
|
337
|
+
}, z.core.$strip>;
|
|
338
|
+
readonly response: z.ZodObject<{
|
|
339
|
+
ok: z.ZodLiteral<true>;
|
|
340
|
+
}, z.core.$strip>;
|
|
341
|
+
readonly requiresAuth: true;
|
|
342
|
+
};
|
|
343
|
+
};
|
|
344
|
+
export {};
|
|
345
|
+
//# sourceMappingURL=passkeys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passkeys.d.ts","sourceRoot":"","sources":["../../../src/domains/auth/passkeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;;GAGG;AAEH,QAAA,MAAM,6BAA6B;;;;;;;;;;iBAS1B,CAAC;AACV,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAEpF,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;iBAWpC,CAAC;AACV,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F,eAAO,MAAM,yBAAyB;;;;;;iBAQ7B,CAAC;AACV,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,aAAa;;;;;;;iBAOxB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD,eAAO,MAAM,sCAAsC;;;;;;;;;;;;;iBAGjD,CAAC;AACH,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sCAAsC,CAAC,CAAC;AAEtG,eAAO,MAAM,+BAA+B;;;;;;;;;;;;iBAE1C,CAAC;AACH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,eAAO,MAAM,0BAA0B;;;;;;iBAAwD,CAAC;AAChG,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,yBAAyB;;;;;;;kBAAyB,CAAC;AAEhE,eAAO,MAAM,qBAAqB;;iBAAuD,CAAC;AAE1F,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;CAKV,CAAC;AAEtC,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;CAMT,CAAC;AAEtC,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;CAKH,CAAC;AAEtC,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMF,CAAC;AAEtC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;CAKK,CAAC;AAEtC,eAAO,MAAM,qBAAqB;;;;;;;;;;CAMG,CAAC;AAEtC,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOf,CAAC"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AuthPasskeys = exports.PasskeyRemoveEndpoint = exports.PasskeyListEndpoint = exports.PasskeyLoginVerifyEndpoint = exports.PasskeyLoginOptionsEndpoint = exports.PasskeyRegistrationVerifyEndpoint = exports.PasskeyRegistrationOptionsEndpoint = exports.PasskeyIdParamsSchema = exports.PasskeyListResponseSchema = exports.PasskeyLoginResponseSchema = exports.PasskeyLoginVerifyRequestSchema = exports.PasskeyRegistrationVerifyRequestSchema = exports.PasskeySchema = exports.PasskeyLoginOptionsSchema = exports.PasskeyRegistrationOptionsSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const common_1 = require("../../shared/common");
|
|
6
|
+
const dtos_1 = require("./dtos");
|
|
7
|
+
/**
|
|
8
|
+
* Passkey (WebAuthn). Объекты options и credential описаны минимально:
|
|
9
|
+
* полную структуру проверяет браузер и @simplewebauthn/server на бэкенде.
|
|
10
|
+
*/
|
|
11
|
+
const PublicKeyCredentialJSONSchema = zod_1.z
|
|
12
|
+
.object({
|
|
13
|
+
id: zod_1.z.string().min(1),
|
|
14
|
+
rawId: zod_1.z.string().min(1),
|
|
15
|
+
type: zod_1.z.literal("public-key"),
|
|
16
|
+
response: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()),
|
|
17
|
+
clientExtensionResults: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
|
|
18
|
+
authenticatorAttachment: zod_1.z.enum(["platform", "cross-platform"]).optional(),
|
|
19
|
+
})
|
|
20
|
+
.loose();
|
|
21
|
+
exports.PasskeyRegistrationOptionsSchema = zod_1.z
|
|
22
|
+
.object({
|
|
23
|
+
challenge: zod_1.z.string().min(1),
|
|
24
|
+
rp: zod_1.z.object({ id: zod_1.z.string().optional(), name: zod_1.z.string() }).loose(),
|
|
25
|
+
user: zod_1.z.object({ id: zod_1.z.string(), name: zod_1.z.string(), displayName: zod_1.z.string() }).loose(),
|
|
26
|
+
pubKeyCredParams: zod_1.z.array(zod_1.z.object({ type: zod_1.z.literal("public-key"), alg: zod_1.z.number() })),
|
|
27
|
+
timeout: zod_1.z.number().optional(),
|
|
28
|
+
attestation: zod_1.z.string().optional(),
|
|
29
|
+
excludeCredentials: zod_1.z.array(zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())).optional(),
|
|
30
|
+
authenticatorSelection: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()).optional(),
|
|
31
|
+
})
|
|
32
|
+
.loose();
|
|
33
|
+
exports.PasskeyLoginOptionsSchema = zod_1.z
|
|
34
|
+
.object({
|
|
35
|
+
challenge: zod_1.z.string().min(1),
|
|
36
|
+
rpId: zod_1.z.string().optional(),
|
|
37
|
+
timeout: zod_1.z.number().optional(),
|
|
38
|
+
userVerification: zod_1.z.string().optional(),
|
|
39
|
+
allowCredentials: zod_1.z.array(zod_1.z.record(zod_1.z.string(), zod_1.z.unknown())).optional(),
|
|
40
|
+
})
|
|
41
|
+
.loose();
|
|
42
|
+
exports.PasskeySchema = zod_1.z.object({
|
|
43
|
+
id: zod_1.z.number().int().positive(),
|
|
44
|
+
name: zod_1.z.string().nullable(),
|
|
45
|
+
deviceType: zod_1.z.string(),
|
|
46
|
+
backedUp: zod_1.z.boolean(),
|
|
47
|
+
createdAt: zod_1.z.string(),
|
|
48
|
+
lastUsedAt: zod_1.z.string().nullable(),
|
|
49
|
+
});
|
|
50
|
+
exports.PasskeyRegistrationVerifyRequestSchema = zod_1.z.object({
|
|
51
|
+
response: PublicKeyCredentialJSONSchema,
|
|
52
|
+
name: zod_1.z.string().trim().min(1).max(64).optional(),
|
|
53
|
+
});
|
|
54
|
+
exports.PasskeyLoginVerifyRequestSchema = zod_1.z.object({
|
|
55
|
+
response: PublicKeyCredentialJSONSchema,
|
|
56
|
+
});
|
|
57
|
+
exports.PasskeyLoginResponseSchema = dtos_1.TokensResponseSchema.extend({ role: dtos_1.UserRoleSchema });
|
|
58
|
+
exports.PasskeyListResponseSchema = zod_1.z.array(exports.PasskeySchema);
|
|
59
|
+
exports.PasskeyIdParamsSchema = zod_1.z.object({ id: zod_1.z.coerce.number().int().positive() });
|
|
60
|
+
exports.PasskeyRegistrationOptionsEndpoint = {
|
|
61
|
+
method: "POST",
|
|
62
|
+
path: "/api/auth/passkeys/registration/options",
|
|
63
|
+
response: exports.PasskeyRegistrationOptionsSchema,
|
|
64
|
+
requiresAuth: true,
|
|
65
|
+
};
|
|
66
|
+
exports.PasskeyRegistrationVerifyEndpoint = {
|
|
67
|
+
method: "POST",
|
|
68
|
+
path: "/api/auth/passkeys/registration/verify",
|
|
69
|
+
request: exports.PasskeyRegistrationVerifyRequestSchema,
|
|
70
|
+
response: exports.PasskeySchema,
|
|
71
|
+
requiresAuth: true,
|
|
72
|
+
};
|
|
73
|
+
exports.PasskeyLoginOptionsEndpoint = {
|
|
74
|
+
method: "POST",
|
|
75
|
+
path: "/api/auth/passkeys/login/options",
|
|
76
|
+
response: exports.PasskeyLoginOptionsSchema,
|
|
77
|
+
rateLimit: { limit: 10, ttlSec: 900 },
|
|
78
|
+
};
|
|
79
|
+
exports.PasskeyLoginVerifyEndpoint = {
|
|
80
|
+
method: "POST",
|
|
81
|
+
path: "/api/auth/passkeys/login/verify",
|
|
82
|
+
request: exports.PasskeyLoginVerifyRequestSchema,
|
|
83
|
+
response: exports.PasskeyLoginResponseSchema,
|
|
84
|
+
rateLimit: { limit: 5, ttlSec: 900 },
|
|
85
|
+
};
|
|
86
|
+
exports.PasskeyListEndpoint = {
|
|
87
|
+
method: "GET",
|
|
88
|
+
path: "/api/auth/passkeys",
|
|
89
|
+
response: exports.PasskeyListResponseSchema,
|
|
90
|
+
requiresAuth: true,
|
|
91
|
+
};
|
|
92
|
+
exports.PasskeyRemoveEndpoint = {
|
|
93
|
+
method: "DELETE",
|
|
94
|
+
path: "/api/auth/passkeys/:id",
|
|
95
|
+
params: exports.PasskeyIdParamsSchema,
|
|
96
|
+
response: common_1.SuccessResponseSchema,
|
|
97
|
+
requiresAuth: true,
|
|
98
|
+
};
|
|
99
|
+
exports.AuthPasskeys = {
|
|
100
|
+
passkeyRegistrationOptions: exports.PasskeyRegistrationOptionsEndpoint,
|
|
101
|
+
passkeyRegistrationVerify: exports.PasskeyRegistrationVerifyEndpoint,
|
|
102
|
+
passkeyLoginOptions: exports.PasskeyLoginOptionsEndpoint,
|
|
103
|
+
passkeyLoginVerify: exports.PasskeyLoginVerifyEndpoint,
|
|
104
|
+
passkeyList: exports.PasskeyListEndpoint,
|
|
105
|
+
passkeyRemove: exports.PasskeyRemoveEndpoint,
|
|
106
|
+
};
|
|
107
|
+
//# sourceMappingURL=passkeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"passkeys.js","sourceRoot":"","sources":["../../../src/domains/auth/passkeys.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,12 +64,13 @@ export declare const CreateVariantRequestSchema: z.ZodObject<{
|
|
|
64
64
|
export type CreateVariantRequest = z.infer<typeof CreateVariantRequestSchema>;
|
|
65
65
|
/** Частичное обновление торгового варианта из админки. */
|
|
66
66
|
export declare const UpdateVariantRequestSchema: z.ZodObject<{
|
|
67
|
+
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
68
|
+
name: z.ZodOptional<z.ZodString>;
|
|
67
69
|
deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
68
70
|
AUTOMATIC: "AUTOMATIC";
|
|
69
71
|
MANUAL: "MANUAL";
|
|
70
72
|
BOT: "BOT";
|
|
71
73
|
}>>>;
|
|
72
|
-
name: z.ZodOptional<z.ZodString>;
|
|
73
74
|
sku: z.ZodOptional<z.ZodString>;
|
|
74
75
|
imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
|
|
75
76
|
desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
@@ -79,7 +80,6 @@ export declare const UpdateVariantRequestSchema: z.ZodObject<{
|
|
|
79
80
|
MOBILE_REFILL: "MOBILE_REFILL";
|
|
80
81
|
CRYPTO_REFILL: "CRYPTO_REFILL";
|
|
81
82
|
}>>>;
|
|
82
|
-
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
83
83
|
regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
84
84
|
desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
85
85
|
priceUsd: z.ZodOptional<z.ZodString>;
|
|
@@ -612,12 +612,13 @@ export declare const UpdateVariantEndpoint: {
|
|
|
612
612
|
id: z.ZodCoercedNumber<unknown>;
|
|
613
613
|
}, z.core.$strip>;
|
|
614
614
|
readonly request: z.ZodObject<{
|
|
615
|
+
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
616
|
+
name: z.ZodOptional<z.ZodString>;
|
|
615
617
|
deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
616
618
|
AUTOMATIC: "AUTOMATIC";
|
|
617
619
|
MANUAL: "MANUAL";
|
|
618
620
|
BOT: "BOT";
|
|
619
621
|
}>>>;
|
|
620
|
-
name: z.ZodOptional<z.ZodString>;
|
|
621
622
|
sku: z.ZodOptional<z.ZodString>;
|
|
622
623
|
imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
|
|
623
624
|
desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
@@ -627,7 +628,6 @@ export declare const UpdateVariantEndpoint: {
|
|
|
627
628
|
MOBILE_REFILL: "MOBILE_REFILL";
|
|
628
629
|
CRYPTO_REFILL: "CRYPTO_REFILL";
|
|
629
630
|
}>>>;
|
|
630
|
-
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
631
631
|
regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
632
632
|
desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
633
633
|
priceUsd: z.ZodOptional<z.ZodString>;
|
|
@@ -1088,12 +1088,13 @@ export declare const ProductCommands: {
|
|
|
1088
1088
|
id: z.ZodCoercedNumber<unknown>;
|
|
1089
1089
|
}, z.core.$strip>;
|
|
1090
1090
|
readonly request: z.ZodObject<{
|
|
1091
|
+
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1092
|
+
name: z.ZodOptional<z.ZodString>;
|
|
1091
1093
|
deliveryType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
1092
1094
|
AUTOMATIC: "AUTOMATIC";
|
|
1093
1095
|
MANUAL: "MANUAL";
|
|
1094
1096
|
BOT: "BOT";
|
|
1095
1097
|
}>>>;
|
|
1096
|
-
name: z.ZodOptional<z.ZodString>;
|
|
1097
1098
|
sku: z.ZodOptional<z.ZodString>;
|
|
1098
1099
|
imageUrl: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodURL>>>;
|
|
1099
1100
|
desslyServiceType: z.ZodOptional<z.ZodOptional<z.ZodEnum<{
|
|
@@ -1103,7 +1104,6 @@ export declare const ProductCommands: {
|
|
|
1103
1104
|
MOBILE_REFILL: "MOBILE_REFILL";
|
|
1104
1105
|
CRYPTO_REFILL: "CRYPTO_REFILL";
|
|
1105
1106
|
}>>>;
|
|
1106
|
-
platform: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1107
1107
|
regionCode: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1108
1108
|
desslyRegion: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1109
1109
|
priceUsd: z.ZodOptional<z.ZodString>;
|
|
@@ -158,6 +158,7 @@ export declare const VariantStockSchema: z.ZodObject<{
|
|
|
158
158
|
export type VariantStock = z.infer<typeof VariantStockSchema>;
|
|
159
159
|
export declare const AdminProductVariantSchema: z.ZodObject<{
|
|
160
160
|
id: z.ZodNumber;
|
|
161
|
+
name: z.ZodString;
|
|
161
162
|
price: z.ZodObject<{
|
|
162
163
|
usd: z.ZodString;
|
|
163
164
|
rub: z.ZodString;
|
|
@@ -169,7 +170,6 @@ export declare const AdminProductVariantSchema: z.ZodObject<{
|
|
|
169
170
|
MANUAL: "MANUAL";
|
|
170
171
|
BOT: "BOT";
|
|
171
172
|
}>;
|
|
172
|
-
name: z.ZodString;
|
|
173
173
|
sku: z.ZodString;
|
|
174
174
|
imageUrl: z.ZodNullable<z.ZodString>;
|
|
175
175
|
desslyServiceType: z.ZodNullable<z.ZodEnum<{
|
|
@@ -530,6 +530,7 @@ export declare const AdminProductSchema: z.ZodObject<{
|
|
|
530
530
|
steamDetailsSyncedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
531
531
|
variants: z.ZodArray<z.ZodObject<{
|
|
532
532
|
id: z.ZodNumber;
|
|
533
|
+
name: z.ZodString;
|
|
533
534
|
price: z.ZodObject<{
|
|
534
535
|
usd: z.ZodString;
|
|
535
536
|
rub: z.ZodString;
|
|
@@ -541,7 +542,6 @@ export declare const AdminProductSchema: z.ZodObject<{
|
|
|
541
542
|
MANUAL: "MANUAL";
|
|
542
543
|
BOT: "BOT";
|
|
543
544
|
}>;
|
|
544
|
-
name: z.ZodString;
|
|
545
545
|
sku: z.ZodString;
|
|
546
546
|
imageUrl: z.ZodNullable<z.ZodString>;
|
|
547
547
|
desslyServiceType: z.ZodNullable<z.ZodEnum<{
|
|
@@ -233,12 +233,13 @@ export declare const ProductEndpoints: {
|
|
|
233
233
|
id: import("zod").ZodCoercedNumber<unknown>;
|
|
234
234
|
}, import("zod/v4/core").$strip>;
|
|
235
235
|
readonly request: import("zod").ZodObject<{
|
|
236
|
+
platform: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
|
|
237
|
+
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
236
238
|
deliveryType: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
237
239
|
AUTOMATIC: "AUTOMATIC";
|
|
238
240
|
MANUAL: "MANUAL";
|
|
239
241
|
BOT: "BOT";
|
|
240
242
|
}>>>;
|
|
241
|
-
name: import("zod").ZodOptional<import("zod").ZodString>;
|
|
242
243
|
sku: import("zod").ZodOptional<import("zod").ZodString>;
|
|
243
244
|
imageUrl: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodURL>>>;
|
|
244
245
|
desslyServiceType: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodEnum<{
|
|
@@ -248,7 +249,6 @@ export declare const ProductEndpoints: {
|
|
|
248
249
|
MOBILE_REFILL: "MOBILE_REFILL";
|
|
249
250
|
CRYPTO_REFILL: "CRYPTO_REFILL";
|
|
250
251
|
}>>>;
|
|
251
|
-
platform: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
|
|
252
252
|
regionCode: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
|
|
253
253
|
desslyRegion: import("zod").ZodOptional<import("zod").ZodOptional<import("zod").ZodString>>;
|
|
254
254
|
priceUsd: import("zod").ZodOptional<import("zod").ZodString>;
|
|
@@ -905,6 +905,7 @@ export declare const ProductEndpoints: {
|
|
|
905
905
|
steamDetailsSyncedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
|
|
906
906
|
variants: import("zod").ZodArray<import("zod").ZodObject<{
|
|
907
907
|
id: import("zod").ZodNumber;
|
|
908
|
+
name: import("zod").ZodString;
|
|
908
909
|
price: import("zod").ZodObject<{
|
|
909
910
|
usd: import("zod").ZodString;
|
|
910
911
|
rub: import("zod").ZodString;
|
|
@@ -916,7 +917,6 @@ export declare const ProductEndpoints: {
|
|
|
916
917
|
MANUAL: "MANUAL";
|
|
917
918
|
BOT: "BOT";
|
|
918
919
|
}>;
|
|
919
|
-
name: import("zod").ZodString;
|
|
920
920
|
sku: import("zod").ZodString;
|
|
921
921
|
imageUrl: import("zod").ZodNullable<import("zod").ZodString>;
|
|
922
922
|
desslyServiceType: import("zod").ZodNullable<import("zod").ZodEnum<{
|
|
@@ -1118,6 +1118,7 @@ export declare const ProductEndpoints: {
|
|
|
1118
1118
|
steamDetailsSyncedAt: import("zod").ZodOptional<import("zod").ZodNullable<import("zod").ZodString>>;
|
|
1119
1119
|
variants: import("zod").ZodArray<import("zod").ZodObject<{
|
|
1120
1120
|
id: import("zod").ZodNumber;
|
|
1121
|
+
name: import("zod").ZodString;
|
|
1121
1122
|
price: import("zod").ZodObject<{
|
|
1122
1123
|
usd: import("zod").ZodString;
|
|
1123
1124
|
rub: import("zod").ZodString;
|
|
@@ -1129,7 +1130,6 @@ export declare const ProductEndpoints: {
|
|
|
1129
1130
|
MANUAL: "MANUAL";
|
|
1130
1131
|
BOT: "BOT";
|
|
1131
1132
|
}>;
|
|
1132
|
-
name: import("zod").ZodString;
|
|
1133
1133
|
sku: import("zod").ZodString;
|
|
1134
1134
|
imageUrl: import("zod").ZodNullable<import("zod").ZodString>;
|
|
1135
1135
|
desslyServiceType: import("zod").ZodNullable<import("zod").ZodEnum<{
|