@stashfin/grpc 1.2.50 → 1.2.52
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/package.json +1 -1
- package/ts/customer/getprofile.d.ts +38 -0
- package/ts/customer/getprofile.js +162 -0
- package/ts/customer/getstep.d.ts +78 -0
- package/ts/customer/getstep.js +420 -0
- package/ts/customer/profileupdatetnc.d.ts +35 -0
- package/ts/{customers/saveunlocklimit.js → customer/profileupdatetnc.js} +33 -20
- package/ts/customer/sendotp.d.ts +36 -0
- package/ts/{customers/resetmpin.js → customer/sendotp.js} +47 -47
- package/ts/customer/setmpin.d.ts +36 -0
- package/ts/{customers/updatehypervergetxn.js → customer/setmpin.js} +30 -30
- package/ts/customer/step1.d.ts +69 -0
- package/ts/customer/step1.js +395 -0
- package/ts/customer/step10.d.ts +73 -0
- package/ts/customer/step10.js +459 -0
- package/ts/customer/step2.d.ts +68 -0
- package/ts/customer/step2.js +381 -0
- package/ts/customer/step7.d.ts +68 -0
- package/ts/customer/step7.js +381 -0
- package/ts/customer/step8.d.ts +69 -0
- package/ts/customer/step8.js +395 -0
- package/ts/customer/step9.d.ts +75 -0
- package/ts/customer/step9.js +489 -0
- package/ts/customer/stepstatic.d.ts +66 -0
- package/ts/customer/stepstatic.js +352 -0
- package/ts/customer/verifympin.d.ts +37 -0
- package/ts/{customers/updatedigilockertxn.js → customer/verifympin.js} +48 -46
- package/ts/customer/verifyotp.d.ts +39 -0
- package/ts/customer/verifyotp.js +177 -0
- package/ts/customer.d.ts +262 -0
- package/ts/customer.js +190 -0
- package/ts/customers/getbankaccountdetails.js +1 -1
- package/ts/customers/getbasicinfo.d.ts +3 -20
- package/ts/customers/getbasicinfo.js +24 -171
- package/ts/customers/getcustomerbyid.d.ts +0 -5
- package/ts/customers/getcustomerbyid.js +1 -76
- package/ts/customers/getdashboard.d.ts +0 -1
- package/ts/customers/getdashboard.js +34 -49
- package/ts/customers/getdashboardmaincard.js +1 -1
- package/ts/customers/getprofessionalinfo.d.ts +1 -18
- package/ts/customers/getprofessionalinfo.js +10 -148
- package/ts/customers/getprofile.d.ts +2 -17
- package/ts/customers/getprofile.js +26 -146
- package/ts/customers/getstep.d.ts +28 -19
- package/ts/customers/getstep.js +173 -159
- package/ts/customers/profilebasic.js +1 -1
- package/ts/customers/profileupdatetnc.js +1 -1
- package/ts/customers/sendemailtoken.js +1 -1
- package/ts/customers/sendotp.js +1 -1
- package/ts/customers/setmpin.js +1 -1
- package/ts/customers/step1.d.ts +0 -2
- package/ts/customers/step1.js +4 -32
- package/ts/customers/step10.js +1 -1
- package/ts/customers/step2.d.ts +6 -5
- package/ts/customers/step2.js +37 -22
- package/ts/customers/step7.js +1 -1
- package/ts/customers/step8.js +1 -1
- package/ts/customers/step9.js +1 -1
- package/ts/customers/stepstatic.js +1 -1
- package/ts/customers/verifyemail.js +1 -1
- package/ts/customers/verifympin.js +1 -1
- package/ts/customers/verifyotp.js +1 -1
- package/ts/customers.d.ts +28 -180
- package/ts/customers.js +17 -125
- package/ts/example.js +1 -1
- package/ts/google/protobuf/any.d.ts +138 -0
- package/ts/google/protobuf/any.js +108 -0
- package/ts/google/protobuf/timestamp.js +1 -1
- package/ts/loans/approveloan.js +1 -1
- package/ts/loans/banklist.d.ts +11 -0
- package/ts/loans/banklist.js +60 -6
- package/ts/loans/calculateemi.d.ts +2 -16
- package/ts/loans/calculateemi.js +19 -115
- package/ts/loans/creditlimit.d.ts +0 -8
- package/ts/loans/creditlimit.js +2 -129
- package/ts/loans/updateinstallments.js +1 -1
- package/ts/loans/updateloan.js +1 -1
- package/ts/loans.d.ts +0 -14
- package/ts/loans.js +1 -11
- package/ts/payments/checkpaymentstatus.d.ts +51 -0
- package/ts/payments/checkpaymentstatus.js +259 -0
- package/ts/payments/createorder.d.ts +39 -0
- package/ts/payments/createorder.js +191 -0
- package/ts/payments/getpaymentdetails.d.ts +58 -0
- package/ts/payments/getpaymentdetails.js +367 -0
- package/ts/payments/getpaymentoptions.d.ts +50 -0
- package/ts/payments/getpaymentoptions.js +231 -0
- package/ts/payments/initiatepayment.d.ts +54 -0
- package/ts/payments/initiatepayment.js +299 -0
- package/ts/payments.d.ts +70 -0
- package/ts/payments.js +54 -0
- package/ts/stashcash/creditsc.js +1 -1
- package/ts/stashcash/debitsc.js +1 -1
- package/ts/stashcash/getscbalance.js +1 -1
- package/ts/stashcash/getschistory.js +1 -1
- package/ts/stashcash/reversesc.js +1 -1
- package/ts/stashcash.js +1 -1
- package/ts/customers/addaddress.d.ts +0 -50
- package/ts/customers/addaddress.js +0 -265
- package/ts/customers/addbankaccountdetails.d.ts +0 -37
- package/ts/customers/addbankaccountdetails.js +0 -147
- package/ts/customers/createcustomerreference.d.ts +0 -43
- package/ts/customers/createcustomerreference.js +0 -226
- package/ts/customers/getcities.d.ts +0 -47
- package/ts/customers/getcities.js +0 -183
- package/ts/customers/getkycweburl.d.ts +0 -34
- package/ts/customers/getkycweburl.js +0 -104
- package/ts/customers/getstates.d.ts +0 -46
- package/ts/customers/getstates.js +0 -170
- package/ts/customers/resetmpin.d.ts +0 -36
- package/ts/customers/savebasicdetails.d.ts +0 -47
- package/ts/customers/savebasicdetails.js +0 -185
- package/ts/customers/saveunlocklimit.d.ts +0 -34
- package/ts/customers/updatedigilockertxn.d.ts +0 -37
- package/ts/customers/updatehypervergetxn.d.ts +0 -36
- package/ts/loans/restructureloan.d.ts +0 -36
- package/ts/loans/restructureloan.js +0 -133
- package/ts/loans/transactionlist.d.ts +0 -50
- package/ts/loans/transactionlist.js +0 -229
package/ts/customers.js
CHANGED
|
@@ -1,42 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
3
|
// versions:
|
|
4
|
-
// protoc-gen-ts_proto v1.
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
5
|
// protoc v3.20.3
|
|
6
6
|
// source: customers.proto
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.customersClient = exports.customersService = exports.protobufPackage = void 0;
|
|
9
9
|
/* eslint-disable */
|
|
10
10
|
const grpc_js_1 = require("@grpc/grpc-js");
|
|
11
|
-
const addaddress_1 = require("./customers/addaddress");
|
|
12
|
-
const addbankaccountdetails_1 = require("./customers/addbankaccountdetails");
|
|
13
|
-
const createcustomerreference_1 = require("./customers/createcustomerreference");
|
|
14
11
|
const getbankaccountdetails_1 = require("./customers/getbankaccountdetails");
|
|
15
12
|
const getbasicinfo_1 = require("./customers/getbasicinfo");
|
|
16
|
-
const getcities_1 = require("./customers/getcities");
|
|
17
13
|
const getcustomerbyid_1 = require("./customers/getcustomerbyid");
|
|
18
14
|
const getdashboard_1 = require("./customers/getdashboard");
|
|
19
15
|
const getdashboardmaincard_1 = require("./customers/getdashboardmaincard");
|
|
20
|
-
const getkycweburl_1 = require("./customers/getkycweburl");
|
|
21
16
|
const getprofessionalinfo_1 = require("./customers/getprofessionalinfo");
|
|
22
17
|
const getprofile_1 = require("./customers/getprofile");
|
|
23
|
-
const getstates_1 = require("./customers/getstates");
|
|
24
18
|
const getstep_1 = require("./customers/getstep");
|
|
25
19
|
const profilebasic_1 = require("./customers/profilebasic");
|
|
26
20
|
const profileupdatetnc_1 = require("./customers/profileupdatetnc");
|
|
27
|
-
const resetmpin_1 = require("./customers/resetmpin");
|
|
28
|
-
const savebasicdetails_1 = require("./customers/savebasicdetails");
|
|
29
|
-
const saveunlocklimit_1 = require("./customers/saveunlocklimit");
|
|
30
21
|
const sendemailtoken_1 = require("./customers/sendemailtoken");
|
|
31
22
|
const sendotp_1 = require("./customers/sendotp");
|
|
32
23
|
const setmpin_1 = require("./customers/setmpin");
|
|
24
|
+
const step1_1 = require("./customers/step1");
|
|
33
25
|
const step10_1 = require("./customers/step10");
|
|
26
|
+
const step2_1 = require("./customers/step2");
|
|
34
27
|
const step7_1 = require("./customers/step7");
|
|
35
28
|
const step8_1 = require("./customers/step8");
|
|
36
29
|
const step9_1 = require("./customers/step9");
|
|
37
30
|
const stepstatic_1 = require("./customers/stepstatic");
|
|
38
|
-
const updatedigilockertxn_1 = require("./customers/updatedigilockertxn");
|
|
39
|
-
const updatehypervergetxn_1 = require("./customers/updatehypervergetxn");
|
|
40
31
|
const verifyemail_1 = require("./customers/verifyemail");
|
|
41
32
|
const verifympin_1 = require("./customers/verifympin");
|
|
42
33
|
const verifyotp_1 = require("./customers/verifyotp");
|
|
@@ -78,15 +69,6 @@ exports.customersService = {
|
|
|
78
69
|
responseSerialize: (value) => Buffer.from(verifympin_1.verifyMpinResponse.encode(value).finish()),
|
|
79
70
|
responseDeserialize: (value) => verifympin_1.verifyMpinResponse.decode(value),
|
|
80
71
|
},
|
|
81
|
-
resetMpin: {
|
|
82
|
-
path: "/service.customers/resetMpin",
|
|
83
|
-
requestStream: false,
|
|
84
|
-
responseStream: false,
|
|
85
|
-
requestSerialize: (value) => Buffer.from(resetmpin_1.resetMpinRequest.encode(value).finish()),
|
|
86
|
-
requestDeserialize: (value) => resetmpin_1.resetMpinRequest.decode(value),
|
|
87
|
-
responseSerialize: (value) => Buffer.from(resetmpin_1.resetMpinResponse.encode(value).finish()),
|
|
88
|
-
responseDeserialize: (value) => resetmpin_1.resetMpinResponse.decode(value),
|
|
89
|
-
},
|
|
90
72
|
profileUpdatetnc: {
|
|
91
73
|
path: "/service.customers/profileUpdatetnc",
|
|
92
74
|
requestStream: false,
|
|
@@ -114,8 +96,8 @@ exports.customersService = {
|
|
|
114
96
|
responseSerialize: (value) => Buffer.from(getprofile_1.getCustomerProfileResponse.encode(value).finish()),
|
|
115
97
|
responseDeserialize: (value) => getprofile_1.getCustomerProfileResponse.decode(value),
|
|
116
98
|
},
|
|
117
|
-
|
|
118
|
-
path: "/service.customers/
|
|
99
|
+
getstep: {
|
|
100
|
+
path: "/service.customers/getstep",
|
|
119
101
|
requestStream: false,
|
|
120
102
|
responseStream: false,
|
|
121
103
|
requestSerialize: (value) => Buffer.from(getstep_1.getstepRequest.encode(value).finish()),
|
|
@@ -123,23 +105,23 @@ exports.customersService = {
|
|
|
123
105
|
responseSerialize: (value) => Buffer.from(getstep_1.getstepResponse.encode(value).finish()),
|
|
124
106
|
responseDeserialize: (value) => getstep_1.getstepResponse.decode(value),
|
|
125
107
|
},
|
|
126
|
-
|
|
127
|
-
path: "/service.customers/
|
|
108
|
+
step1: {
|
|
109
|
+
path: "/service.customers/step1",
|
|
128
110
|
requestStream: false,
|
|
129
111
|
responseStream: false,
|
|
130
|
-
requestSerialize: (value) => Buffer.from(
|
|
131
|
-
requestDeserialize: (value) =>
|
|
132
|
-
responseSerialize: (value) => Buffer.from(
|
|
133
|
-
responseDeserialize: (value) =>
|
|
112
|
+
requestSerialize: (value) => Buffer.from(step1_1.step1Request.encode(value).finish()),
|
|
113
|
+
requestDeserialize: (value) => step1_1.step1Request.decode(value),
|
|
114
|
+
responseSerialize: (value) => Buffer.from(step1_1.step1Response.encode(value).finish()),
|
|
115
|
+
responseDeserialize: (value) => step1_1.step1Response.decode(value),
|
|
134
116
|
},
|
|
135
|
-
|
|
136
|
-
path: "/service.customers/
|
|
117
|
+
step2: {
|
|
118
|
+
path: "/service.customers/step2",
|
|
137
119
|
requestStream: false,
|
|
138
120
|
responseStream: false,
|
|
139
|
-
requestSerialize: (value) => Buffer.from(
|
|
140
|
-
requestDeserialize: (value) =>
|
|
141
|
-
responseSerialize: (value) => Buffer.from(
|
|
142
|
-
responseDeserialize: (value) =>
|
|
121
|
+
requestSerialize: (value) => Buffer.from(step2_1.step2Request.encode(value).finish()),
|
|
122
|
+
requestDeserialize: (value) => step2_1.step2Request.decode(value),
|
|
123
|
+
responseSerialize: (value) => Buffer.from(step2_1.step2Response.encode(value).finish()),
|
|
124
|
+
responseDeserialize: (value) => step2_1.step2Response.decode(value),
|
|
143
125
|
},
|
|
144
126
|
step3: {
|
|
145
127
|
path: "/service.customers/step3",
|
|
@@ -267,15 +249,6 @@ exports.customersService = {
|
|
|
267
249
|
responseSerialize: (value) => Buffer.from(getdashboardmaincard_1.getDashboardMainCardResponse.encode(value).finish()),
|
|
268
250
|
responseDeserialize: (value) => getdashboardmaincard_1.getDashboardMainCardResponse.decode(value),
|
|
269
251
|
},
|
|
270
|
-
addBankAccountDetails: {
|
|
271
|
-
path: "/service.customers/addBankAccountDetails",
|
|
272
|
-
requestStream: false,
|
|
273
|
-
responseStream: false,
|
|
274
|
-
requestSerialize: (value) => Buffer.from(addbankaccountdetails_1.addBankAccountDetailsRequest.encode(value).finish()),
|
|
275
|
-
requestDeserialize: (value) => addbankaccountdetails_1.addBankAccountDetailsRequest.decode(value),
|
|
276
|
-
responseSerialize: (value) => Buffer.from(addbankaccountdetails_1.addBankAccountDetailsResponse.encode(value).finish()),
|
|
277
|
-
responseDeserialize: (value) => addbankaccountdetails_1.addBankAccountDetailsResponse.decode(value),
|
|
278
|
-
},
|
|
279
252
|
getBankAccountDetails: {
|
|
280
253
|
path: "/service.customers/getBankAccountDetails",
|
|
281
254
|
requestStream: false,
|
|
@@ -303,86 +276,5 @@ exports.customersService = {
|
|
|
303
276
|
responseSerialize: (value) => Buffer.from(getprofessionalinfo_1.getProfessionalInfoResponse.encode(value).finish()),
|
|
304
277
|
responseDeserialize: (value) => getprofessionalinfo_1.getProfessionalInfoResponse.decode(value),
|
|
305
278
|
},
|
|
306
|
-
createCustomerReference: {
|
|
307
|
-
path: "/service.customers/createCustomerReference",
|
|
308
|
-
requestStream: false,
|
|
309
|
-
responseStream: false,
|
|
310
|
-
requestSerialize: (value) => Buffer.from(createcustomerreference_1.createCustomerReferenceRequest.encode(value).finish()),
|
|
311
|
-
requestDeserialize: (value) => createcustomerreference_1.createCustomerReferenceRequest.decode(value),
|
|
312
|
-
responseSerialize: (value) => Buffer.from(createcustomerreference_1.createCustomerReferenceResponse.encode(value).finish()),
|
|
313
|
-
responseDeserialize: (value) => createcustomerreference_1.createCustomerReferenceResponse.decode(value),
|
|
314
|
-
},
|
|
315
|
-
sendEmailTokenToProfessionalEmail: {
|
|
316
|
-
path: "/service.customers/sendEmailTokenToProfessionalEmail",
|
|
317
|
-
requestStream: false,
|
|
318
|
-
responseStream: false,
|
|
319
|
-
requestSerialize: (value) => Buffer.from(sendemailtoken_1.sendEmailTokenRequest.encode(value).finish()),
|
|
320
|
-
requestDeserialize: (value) => sendemailtoken_1.sendEmailTokenRequest.decode(value),
|
|
321
|
-
responseSerialize: (value) => Buffer.from(sendemailtoken_1.sendEmailTokenResponse.encode(value).finish()),
|
|
322
|
-
responseDeserialize: (value) => sendemailtoken_1.sendEmailTokenResponse.decode(value),
|
|
323
|
-
},
|
|
324
|
-
verifyProfessionalEmail: {
|
|
325
|
-
path: "/service.customers/verifyProfessionalEmail",
|
|
326
|
-
requestStream: false,
|
|
327
|
-
responseStream: false,
|
|
328
|
-
requestSerialize: (value) => Buffer.from(verifyemail_1.verifyEmailRequest.encode(value).finish()),
|
|
329
|
-
requestDeserialize: (value) => verifyemail_1.verifyEmailRequest.decode(value),
|
|
330
|
-
responseSerialize: (value) => Buffer.from(verifyemail_1.verifyEmailResponse.encode(value).finish()),
|
|
331
|
-
responseDeserialize: (value) => verifyemail_1.verifyEmailResponse.decode(value),
|
|
332
|
-
},
|
|
333
|
-
getAllStates: {
|
|
334
|
-
path: "/service.customers/getAllStates",
|
|
335
|
-
requestStream: false,
|
|
336
|
-
responseStream: false,
|
|
337
|
-
requestSerialize: (value) => Buffer.from(getstates_1.getAllStatesRequest.encode(value).finish()),
|
|
338
|
-
requestDeserialize: (value) => getstates_1.getAllStatesRequest.decode(value),
|
|
339
|
-
responseSerialize: (value) => Buffer.from(getstates_1.getAllStatesResponse.encode(value).finish()),
|
|
340
|
-
responseDeserialize: (value) => getstates_1.getAllStatesResponse.decode(value),
|
|
341
|
-
},
|
|
342
|
-
getCitiesByStateId: {
|
|
343
|
-
path: "/service.customers/getCitiesByStateId",
|
|
344
|
-
requestStream: false,
|
|
345
|
-
responseStream: false,
|
|
346
|
-
requestSerialize: (value) => Buffer.from(getcities_1.getCitiesRequest.encode(value).finish()),
|
|
347
|
-
requestDeserialize: (value) => getcities_1.getCitiesRequest.decode(value),
|
|
348
|
-
responseSerialize: (value) => Buffer.from(getcities_1.getCitiesResponse.encode(value).finish()),
|
|
349
|
-
responseDeserialize: (value) => getcities_1.getCitiesResponse.decode(value),
|
|
350
|
-
},
|
|
351
|
-
updateDigiLockerTxn: {
|
|
352
|
-
path: "/service.customers/updateDigiLockerTxn",
|
|
353
|
-
requestStream: false,
|
|
354
|
-
responseStream: false,
|
|
355
|
-
requestSerialize: (value) => Buffer.from(updatedigilockertxn_1.updateDigiLockerTxnRequest.encode(value).finish()),
|
|
356
|
-
requestDeserialize: (value) => updatedigilockertxn_1.updateDigiLockerTxnRequest.decode(value),
|
|
357
|
-
responseSerialize: (value) => Buffer.from(updatedigilockertxn_1.updateDigiLockerTxnResponse.encode(value).finish()),
|
|
358
|
-
responseDeserialize: (value) => updatedigilockertxn_1.updateDigiLockerTxnResponse.decode(value),
|
|
359
|
-
},
|
|
360
|
-
updateHypervergeTxn: {
|
|
361
|
-
path: "/service.customers/updateHypervergeTxn",
|
|
362
|
-
requestStream: false,
|
|
363
|
-
responseStream: false,
|
|
364
|
-
requestSerialize: (value) => Buffer.from(updatehypervergetxn_1.updateHypervergeTxnRequest.encode(value).finish()),
|
|
365
|
-
requestDeserialize: (value) => updatehypervergetxn_1.updateHypervergeTxnRequest.decode(value),
|
|
366
|
-
responseSerialize: (value) => Buffer.from(updatehypervergetxn_1.updateHypervergeTxnResponse.encode(value).finish()),
|
|
367
|
-
responseDeserialize: (value) => updatehypervergetxn_1.updateHypervergeTxnResponse.decode(value),
|
|
368
|
-
},
|
|
369
|
-
addAddress: {
|
|
370
|
-
path: "/service.customers/addAddress",
|
|
371
|
-
requestStream: false,
|
|
372
|
-
responseStream: false,
|
|
373
|
-
requestSerialize: (value) => Buffer.from(addaddress_1.addAddressRequest.encode(value).finish()),
|
|
374
|
-
requestDeserialize: (value) => addaddress_1.addAddressRequest.decode(value),
|
|
375
|
-
responseSerialize: (value) => Buffer.from(addaddress_1.addAddressResponse.encode(value).finish()),
|
|
376
|
-
responseDeserialize: (value) => addaddress_1.addAddressResponse.decode(value),
|
|
377
|
-
},
|
|
378
|
-
getKycWebUrl: {
|
|
379
|
-
path: "/service.customers/getKycWebUrl",
|
|
380
|
-
requestStream: false,
|
|
381
|
-
responseStream: false,
|
|
382
|
-
requestSerialize: (value) => Buffer.from(getkycweburl_1.getKycWebUrlRequest.encode(value).finish()),
|
|
383
|
-
requestDeserialize: (value) => getkycweburl_1.getKycWebUrlRequest.decode(value),
|
|
384
|
-
responseSerialize: (value) => Buffer.from(getkycweburl_1.getKycWebUrlResponse.encode(value).finish()),
|
|
385
|
-
responseDeserialize: (value) => getkycweburl_1.getKycWebUrlResponse.decode(value),
|
|
386
|
-
},
|
|
387
279
|
};
|
|
388
280
|
exports.customersClient = (0, grpc_js_1.makeGenericClientConstructor)(exports.customersService, "service.customers");
|
package/ts/example.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
3
|
// versions:
|
|
4
|
-
// protoc-gen-ts_proto v1.
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
5
|
// protoc v3.20.3
|
|
6
6
|
// source: example.proto
|
|
7
7
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import _m0 from "protobufjs/minimal";
|
|
2
|
+
export declare const protobufPackage = "google.protobuf";
|
|
3
|
+
/**
|
|
4
|
+
* `Any` contains an arbitrary serialized protocol buffer message along with a
|
|
5
|
+
* URL that describes the type of the serialized message.
|
|
6
|
+
*
|
|
7
|
+
* Protobuf library provides support to pack/unpack Any values in the form
|
|
8
|
+
* of utility functions or additional generated methods of the Any type.
|
|
9
|
+
*
|
|
10
|
+
* Example 1: Pack and unpack a message in C++.
|
|
11
|
+
*
|
|
12
|
+
* Foo foo = ...;
|
|
13
|
+
* Any any;
|
|
14
|
+
* any.PackFrom(foo);
|
|
15
|
+
* ...
|
|
16
|
+
* if (any.UnpackTo(&foo)) {
|
|
17
|
+
* ...
|
|
18
|
+
* }
|
|
19
|
+
*
|
|
20
|
+
* Example 2: Pack and unpack a message in Java.
|
|
21
|
+
*
|
|
22
|
+
* Foo foo = ...;
|
|
23
|
+
* Any any = Any.pack(foo);
|
|
24
|
+
* ...
|
|
25
|
+
* if (any.is(Foo.class)) {
|
|
26
|
+
* foo = any.unpack(Foo.class);
|
|
27
|
+
* }
|
|
28
|
+
*
|
|
29
|
+
* Example 3: Pack and unpack a message in Python.
|
|
30
|
+
*
|
|
31
|
+
* foo = Foo(...)
|
|
32
|
+
* any = Any()
|
|
33
|
+
* any.Pack(foo)
|
|
34
|
+
* ...
|
|
35
|
+
* if any.Is(Foo.DESCRIPTOR):
|
|
36
|
+
* any.Unpack(foo)
|
|
37
|
+
* ...
|
|
38
|
+
*
|
|
39
|
+
* Example 4: Pack and unpack a message in Go
|
|
40
|
+
*
|
|
41
|
+
* foo := &pb.Foo{...}
|
|
42
|
+
* any, err := anypb.New(foo)
|
|
43
|
+
* if err != nil {
|
|
44
|
+
* ...
|
|
45
|
+
* }
|
|
46
|
+
* ...
|
|
47
|
+
* foo := &pb.Foo{}
|
|
48
|
+
* if err := any.UnmarshalTo(foo); err != nil {
|
|
49
|
+
* ...
|
|
50
|
+
* }
|
|
51
|
+
*
|
|
52
|
+
* The pack methods provided by protobuf library will by default use
|
|
53
|
+
* 'type.googleapis.com/full.type.name' as the type URL and the unpack
|
|
54
|
+
* methods only use the fully qualified type name after the last '/'
|
|
55
|
+
* in the type URL, for example "foo.bar.com/x/y.z" will yield type
|
|
56
|
+
* name "y.z".
|
|
57
|
+
*
|
|
58
|
+
* JSON
|
|
59
|
+
*
|
|
60
|
+
* The JSON representation of an `Any` value uses the regular
|
|
61
|
+
* representation of the deserialized, embedded message, with an
|
|
62
|
+
* additional field `@type` which contains the type URL. Example:
|
|
63
|
+
*
|
|
64
|
+
* package google.profile;
|
|
65
|
+
* message Person {
|
|
66
|
+
* string first_name = 1;
|
|
67
|
+
* string last_name = 2;
|
|
68
|
+
* }
|
|
69
|
+
*
|
|
70
|
+
* {
|
|
71
|
+
* "@type": "type.googleapis.com/google.profile.Person",
|
|
72
|
+
* "firstName": <string>,
|
|
73
|
+
* "lastName": <string>
|
|
74
|
+
* }
|
|
75
|
+
*
|
|
76
|
+
* If the embedded message type is well-known and has a custom JSON
|
|
77
|
+
* representation, that representation will be embedded adding a field
|
|
78
|
+
* `value` which holds the custom JSON in addition to the `@type`
|
|
79
|
+
* field. Example (for message [google.protobuf.Duration][]):
|
|
80
|
+
*
|
|
81
|
+
* {
|
|
82
|
+
* "@type": "type.googleapis.com/google.protobuf.Duration",
|
|
83
|
+
* "value": "1.212s"
|
|
84
|
+
* }
|
|
85
|
+
*/
|
|
86
|
+
export interface Any {
|
|
87
|
+
/**
|
|
88
|
+
* A URL/resource name that uniquely identifies the type of the serialized
|
|
89
|
+
* protocol buffer message. This string must contain at least
|
|
90
|
+
* one "/" character. The last segment of the URL's path must represent
|
|
91
|
+
* the fully qualified name of the type (as in
|
|
92
|
+
* `path/google.protobuf.Duration`). The name should be in a canonical form
|
|
93
|
+
* (e.g., leading "." is not accepted).
|
|
94
|
+
*
|
|
95
|
+
* In practice, teams usually precompile into the binary all types that they
|
|
96
|
+
* expect it to use in the context of Any. However, for URLs which use the
|
|
97
|
+
* scheme `http`, `https`, or no scheme, one can optionally set up a type
|
|
98
|
+
* server that maps type URLs to message definitions as follows:
|
|
99
|
+
*
|
|
100
|
+
* * If no scheme is provided, `https` is assumed.
|
|
101
|
+
* * An HTTP GET on the URL must yield a [google.protobuf.Type][]
|
|
102
|
+
* value in binary format, or produce an error.
|
|
103
|
+
* * Applications are allowed to cache lookup results based on the
|
|
104
|
+
* URL, or have them precompiled into a binary to avoid any
|
|
105
|
+
* lookup. Therefore, binary compatibility needs to be preserved
|
|
106
|
+
* on changes to types. (Use versioned type names to manage
|
|
107
|
+
* breaking changes.)
|
|
108
|
+
*
|
|
109
|
+
* Note: this functionality is not currently available in the official
|
|
110
|
+
* protobuf release, and it is not used for type URLs beginning with
|
|
111
|
+
* type.googleapis.com.
|
|
112
|
+
*
|
|
113
|
+
* Schemes other than `http`, `https` (or the empty scheme) might be
|
|
114
|
+
* used with implementation specific semantics.
|
|
115
|
+
*/
|
|
116
|
+
type_url: string;
|
|
117
|
+
/** Must be a valid serialized protocol buffer of the above specified type. */
|
|
118
|
+
value: Uint8Array;
|
|
119
|
+
}
|
|
120
|
+
export declare const Any: {
|
|
121
|
+
encode(message: Any, writer?: _m0.Writer): _m0.Writer;
|
|
122
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): Any;
|
|
123
|
+
fromJSON(object: any): Any;
|
|
124
|
+
toJSON(message: Any): unknown;
|
|
125
|
+
create<I extends Exact<DeepPartial<Any>, I>>(base?: I): Any;
|
|
126
|
+
fromPartial<I extends Exact<DeepPartial<Any>, I>>(object: I): Any;
|
|
127
|
+
};
|
|
128
|
+
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
|
|
129
|
+
export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
|
|
130
|
+
[K in keyof T]?: DeepPartial<T[K]>;
|
|
131
|
+
} : Partial<T>;
|
|
132
|
+
type KeysOfUnion<T> = T extends T ? keyof T : never;
|
|
133
|
+
export type Exact<P, I extends P> = P extends Builtin ? P : P & {
|
|
134
|
+
[K in keyof P]: Exact<P[K], I[K]>;
|
|
135
|
+
} & {
|
|
136
|
+
[K in Exclude<keyof I, KeysOfUnion<P>>]: never;
|
|
137
|
+
};
|
|
138
|
+
export {};
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
|
+
// versions:
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
|
+
// protoc v3.20.3
|
|
6
|
+
// source: google/protobuf/any.proto
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.Any = exports.protobufPackage = void 0;
|
|
12
|
+
/* eslint-disable */
|
|
13
|
+
const minimal_1 = __importDefault(require("protobufjs/minimal"));
|
|
14
|
+
exports.protobufPackage = "google.protobuf";
|
|
15
|
+
function createBaseAny() {
|
|
16
|
+
return { type_url: "", value: new Uint8Array(0) };
|
|
17
|
+
}
|
|
18
|
+
exports.Any = {
|
|
19
|
+
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
20
|
+
if (message.type_url !== "") {
|
|
21
|
+
writer.uint32(10).string(message.type_url);
|
|
22
|
+
}
|
|
23
|
+
if (message.value.length !== 0) {
|
|
24
|
+
writer.uint32(18).bytes(message.value);
|
|
25
|
+
}
|
|
26
|
+
return writer;
|
|
27
|
+
},
|
|
28
|
+
decode(input, length) {
|
|
29
|
+
const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
|
|
30
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
31
|
+
const message = createBaseAny();
|
|
32
|
+
while (reader.pos < end) {
|
|
33
|
+
const tag = reader.uint32();
|
|
34
|
+
switch (tag >>> 3) {
|
|
35
|
+
case 1:
|
|
36
|
+
if (tag !== 10) {
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
message.type_url = reader.string();
|
|
40
|
+
continue;
|
|
41
|
+
case 2:
|
|
42
|
+
if (tag !== 18) {
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
message.value = reader.bytes();
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
reader.skipType(tag & 7);
|
|
52
|
+
}
|
|
53
|
+
return message;
|
|
54
|
+
},
|
|
55
|
+
fromJSON(object) {
|
|
56
|
+
return {
|
|
57
|
+
type_url: isSet(object.type_url) ? globalThis.String(object.type_url) : "",
|
|
58
|
+
value: isSet(object.value) ? bytesFromBase64(object.value) : new Uint8Array(0),
|
|
59
|
+
};
|
|
60
|
+
},
|
|
61
|
+
toJSON(message) {
|
|
62
|
+
const obj = {};
|
|
63
|
+
if (message.type_url !== "") {
|
|
64
|
+
obj.type_url = message.type_url;
|
|
65
|
+
}
|
|
66
|
+
if (message.value.length !== 0) {
|
|
67
|
+
obj.value = base64FromBytes(message.value);
|
|
68
|
+
}
|
|
69
|
+
return obj;
|
|
70
|
+
},
|
|
71
|
+
create(base) {
|
|
72
|
+
return exports.Any.fromPartial(base ?? {});
|
|
73
|
+
},
|
|
74
|
+
fromPartial(object) {
|
|
75
|
+
const message = createBaseAny();
|
|
76
|
+
message.type_url = object.type_url ?? "";
|
|
77
|
+
message.value = object.value ?? new Uint8Array(0);
|
|
78
|
+
return message;
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
function bytesFromBase64(b64) {
|
|
82
|
+
if (globalThis.Buffer) {
|
|
83
|
+
return Uint8Array.from(globalThis.Buffer.from(b64, "base64"));
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
const bin = globalThis.atob(b64);
|
|
87
|
+
const arr = new Uint8Array(bin.length);
|
|
88
|
+
for (let i = 0; i < bin.length; ++i) {
|
|
89
|
+
arr[i] = bin.charCodeAt(i);
|
|
90
|
+
}
|
|
91
|
+
return arr;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
function base64FromBytes(arr) {
|
|
95
|
+
if (globalThis.Buffer) {
|
|
96
|
+
return globalThis.Buffer.from(arr).toString("base64");
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
const bin = [];
|
|
100
|
+
arr.forEach((byte) => {
|
|
101
|
+
bin.push(globalThis.String.fromCharCode(byte));
|
|
102
|
+
});
|
|
103
|
+
return globalThis.btoa(bin.join(""));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
function isSet(value) {
|
|
107
|
+
return value !== null && value !== undefined;
|
|
108
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
3
|
// versions:
|
|
4
|
-
// protoc-gen-ts_proto v1.
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
5
|
// protoc v3.20.3
|
|
6
6
|
// source: google/protobuf/timestamp.proto
|
|
7
7
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
package/ts/loans/approveloan.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
3
|
// versions:
|
|
4
|
-
// protoc-gen-ts_proto v1.
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
5
|
// protoc v3.20.3
|
|
6
6
|
// source: loans/approveloan.proto
|
|
7
7
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
package/ts/loans/banklist.d.ts
CHANGED
|
@@ -3,6 +3,9 @@ export declare const protobufPackage = "loans.banklist";
|
|
|
3
3
|
export interface bankListRequest {
|
|
4
4
|
}
|
|
5
5
|
export interface bankListResponse {
|
|
6
|
+
data: bankListResponse_Field[];
|
|
7
|
+
}
|
|
8
|
+
export interface bankListResponse_Field {
|
|
6
9
|
id: number;
|
|
7
10
|
account_number: number;
|
|
8
11
|
bank_name: string;
|
|
@@ -24,6 +27,14 @@ export declare const bankListResponse: {
|
|
|
24
27
|
create<I extends Exact<DeepPartial<bankListResponse>, I>>(base?: I): bankListResponse;
|
|
25
28
|
fromPartial<I extends Exact<DeepPartial<bankListResponse>, I>>(object: I): bankListResponse;
|
|
26
29
|
};
|
|
30
|
+
export declare const bankListResponse_Field: {
|
|
31
|
+
encode(message: bankListResponse_Field, writer?: _m0.Writer): _m0.Writer;
|
|
32
|
+
decode(input: _m0.Reader | Uint8Array, length?: number): bankListResponse_Field;
|
|
33
|
+
fromJSON(object: any): bankListResponse_Field;
|
|
34
|
+
toJSON(message: bankListResponse_Field): unknown;
|
|
35
|
+
create<I extends Exact<DeepPartial<bankListResponse_Field>, I>>(base?: I): bankListResponse_Field;
|
|
36
|
+
fromPartial<I extends Exact<DeepPartial<bankListResponse_Field>, I>>(object: I): bankListResponse_Field;
|
|
37
|
+
};
|
|
27
38
|
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
|
|
28
39
|
export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
|
|
29
40
|
[K in keyof T]?: DeepPartial<T[K]>;
|
package/ts/loans/banklist.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
|
|
3
3
|
// versions:
|
|
4
|
-
// protoc-gen-ts_proto v1.
|
|
4
|
+
// protoc-gen-ts_proto v1.180.0
|
|
5
5
|
// protoc v3.20.3
|
|
6
6
|
// source: loans/banklist.proto
|
|
7
7
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
8
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
9
|
};
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.bankListResponse = exports.bankListRequest = exports.protobufPackage = void 0;
|
|
11
|
+
exports.bankListResponse_Field = exports.bankListResponse = exports.bankListRequest = exports.protobufPackage = void 0;
|
|
12
12
|
/* eslint-disable */
|
|
13
13
|
const minimal_1 = __importDefault(require("protobufjs/minimal"));
|
|
14
14
|
exports.protobufPackage = "loans.banklist";
|
|
@@ -50,9 +50,63 @@ exports.bankListRequest = {
|
|
|
50
50
|
},
|
|
51
51
|
};
|
|
52
52
|
function createBasebankListResponse() {
|
|
53
|
-
return {
|
|
53
|
+
return { data: [] };
|
|
54
54
|
}
|
|
55
55
|
exports.bankListResponse = {
|
|
56
|
+
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
57
|
+
for (const v of message.data) {
|
|
58
|
+
exports.bankListResponse_Field.encode(v, writer.uint32(18).fork()).ldelim();
|
|
59
|
+
}
|
|
60
|
+
return writer;
|
|
61
|
+
},
|
|
62
|
+
decode(input, length) {
|
|
63
|
+
const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
|
|
64
|
+
let end = length === undefined ? reader.len : reader.pos + length;
|
|
65
|
+
const message = createBasebankListResponse();
|
|
66
|
+
while (reader.pos < end) {
|
|
67
|
+
const tag = reader.uint32();
|
|
68
|
+
switch (tag >>> 3) {
|
|
69
|
+
case 2:
|
|
70
|
+
if (tag !== 18) {
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
message.data.push(exports.bankListResponse_Field.decode(reader, reader.uint32()));
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
if ((tag & 7) === 4 || tag === 0) {
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
reader.skipType(tag & 7);
|
|
80
|
+
}
|
|
81
|
+
return message;
|
|
82
|
+
},
|
|
83
|
+
fromJSON(object) {
|
|
84
|
+
return {
|
|
85
|
+
data: globalThis.Array.isArray(object?.data)
|
|
86
|
+
? object.data.map((e) => exports.bankListResponse_Field.fromJSON(e))
|
|
87
|
+
: [],
|
|
88
|
+
};
|
|
89
|
+
},
|
|
90
|
+
toJSON(message) {
|
|
91
|
+
const obj = {};
|
|
92
|
+
if (message.data?.length) {
|
|
93
|
+
obj.data = message.data.map((e) => exports.bankListResponse_Field.toJSON(e));
|
|
94
|
+
}
|
|
95
|
+
return obj;
|
|
96
|
+
},
|
|
97
|
+
create(base) {
|
|
98
|
+
return exports.bankListResponse.fromPartial(base ?? {});
|
|
99
|
+
},
|
|
100
|
+
fromPartial(object) {
|
|
101
|
+
const message = createBasebankListResponse();
|
|
102
|
+
message.data = object.data?.map((e) => exports.bankListResponse_Field.fromPartial(e)) || [];
|
|
103
|
+
return message;
|
|
104
|
+
},
|
|
105
|
+
};
|
|
106
|
+
function createBasebankListResponse_Field() {
|
|
107
|
+
return { id: 0, account_number: 0, bank_name: "", ifsc_code: 0 };
|
|
108
|
+
}
|
|
109
|
+
exports.bankListResponse_Field = {
|
|
56
110
|
encode(message, writer = minimal_1.default.Writer.create()) {
|
|
57
111
|
if (message.id !== 0) {
|
|
58
112
|
writer.uint32(8).int32(message.id);
|
|
@@ -71,7 +125,7 @@ exports.bankListResponse = {
|
|
|
71
125
|
decode(input, length) {
|
|
72
126
|
const reader = input instanceof minimal_1.default.Reader ? input : minimal_1.default.Reader.create(input);
|
|
73
127
|
let end = length === undefined ? reader.len : reader.pos + length;
|
|
74
|
-
const message =
|
|
128
|
+
const message = createBasebankListResponse_Field();
|
|
75
129
|
while (reader.pos < end) {
|
|
76
130
|
const tag = reader.uint32();
|
|
77
131
|
switch (tag >>> 3) {
|
|
@@ -132,10 +186,10 @@ exports.bankListResponse = {
|
|
|
132
186
|
return obj;
|
|
133
187
|
},
|
|
134
188
|
create(base) {
|
|
135
|
-
return exports.
|
|
189
|
+
return exports.bankListResponse_Field.fromPartial(base ?? {});
|
|
136
190
|
},
|
|
137
191
|
fromPartial(object) {
|
|
138
|
-
const message =
|
|
192
|
+
const message = createBasebankListResponse_Field();
|
|
139
193
|
message.id = object.id ?? 0;
|
|
140
194
|
message.account_number = object.account_number ?? 0;
|
|
141
195
|
message.bank_name = object.bank_name ?? "";
|
|
@@ -1,18 +1,12 @@
|
|
|
1
1
|
import _m0 from "protobufjs/minimal";
|
|
2
2
|
export declare const protobufPackage = "loans.calculateemi";
|
|
3
3
|
export interface calculateEmiRequest {
|
|
4
|
-
|
|
4
|
+
loc_limit: number;
|
|
5
5
|
}
|
|
6
6
|
export interface calculateEmiResponse {
|
|
7
7
|
disbursal_amount: number;
|
|
8
8
|
tenure: number;
|
|
9
|
-
|
|
10
|
-
min_tenure: number;
|
|
11
|
-
max_tenure: number;
|
|
12
|
-
}
|
|
13
|
-
export interface calculateEmiResponse_Field {
|
|
14
|
-
tenure: number;
|
|
15
|
-
emi_amount: number;
|
|
9
|
+
thirdparty_amount: number;
|
|
16
10
|
}
|
|
17
11
|
export declare const calculateEmiRequest: {
|
|
18
12
|
encode(message: calculateEmiRequest, writer?: _m0.Writer): _m0.Writer;
|
|
@@ -30,14 +24,6 @@ export declare const calculateEmiResponse: {
|
|
|
30
24
|
create<I extends Exact<DeepPartial<calculateEmiResponse>, I>>(base?: I): calculateEmiResponse;
|
|
31
25
|
fromPartial<I extends Exact<DeepPartial<calculateEmiResponse>, I>>(object: I): calculateEmiResponse;
|
|
32
26
|
};
|
|
33
|
-
export declare const calculateEmiResponse_Field: {
|
|
34
|
-
encode(message: calculateEmiResponse_Field, writer?: _m0.Writer): _m0.Writer;
|
|
35
|
-
decode(input: _m0.Reader | Uint8Array, length?: number): calculateEmiResponse_Field;
|
|
36
|
-
fromJSON(object: any): calculateEmiResponse_Field;
|
|
37
|
-
toJSON(message: calculateEmiResponse_Field): unknown;
|
|
38
|
-
create<I extends Exact<DeepPartial<calculateEmiResponse_Field>, I>>(base?: I): calculateEmiResponse_Field;
|
|
39
|
-
fromPartial<I extends Exact<DeepPartial<calculateEmiResponse_Field>, I>>(object: I): calculateEmiResponse_Field;
|
|
40
|
-
};
|
|
41
27
|
type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
|
|
42
28
|
export type DeepPartial<T> = T extends Builtin ? T : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
|
|
43
29
|
[K in keyof T]?: DeepPartial<T[K]>;
|