@stashfin/grpc 1.2.51 → 1.2.54

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 (208) hide show
  1. package/README.md +74 -0
  2. package/package.json +3 -2
  3. package/src/proto/customers/addaddress.proto +25 -0
  4. package/src/proto/customers/addbankaccountdetails.proto +13 -0
  5. package/src/proto/customers/createcustomerreference.proto +21 -0
  6. package/src/proto/customers/forgotmpin.proto +12 -0
  7. package/src/proto/customers/forgotmpinotp.proto +10 -0
  8. package/src/proto/customers/getbankaccountdetails.proto +11 -0
  9. package/src/proto/customers/getbasicinfo.proto +24 -0
  10. package/src/proto/customers/getcities.proto +16 -0
  11. package/src/proto/customers/getcustomerbyid.proto +31 -0
  12. package/src/proto/customers/getdashboard.proto +47 -0
  13. package/src/proto/customers/getdashboardmaincard.proto +37 -0
  14. package/src/proto/customers/getkycweburl.proto +10 -0
  15. package/src/proto/customers/getprofessionalinfo.proto +22 -0
  16. package/src/proto/customers/getprofile.proto +22 -0
  17. package/src/proto/customers/getstates.proto +15 -0
  18. package/src/proto/customers/getstep.proto +30 -0
  19. package/src/proto/customers/profilebasic.proto +14 -0
  20. package/src/proto/customers/profileupdatetnc.proto +11 -0
  21. package/src/proto/customers/resetmpin.proto +13 -0
  22. package/src/proto/customers/savebasicdetails.proto +16 -0
  23. package/src/proto/customers/saveunlocklimit.proto +10 -0
  24. package/src/proto/customers/sendemailtoken.proto +11 -0
  25. package/src/proto/customers/sendotp.proto +14 -0
  26. package/src/proto/customers/setmpin.proto +12 -0
  27. package/src/proto/customers/step10.proto +34 -0
  28. package/src/proto/customers/step7.proto +29 -0
  29. package/src/proto/customers/step8.proto +30 -0
  30. package/src/proto/customers/step9.proto +36 -0
  31. package/src/proto/customers/stepstatic.proto +27 -0
  32. package/src/proto/customers/updatedigilockertxn.proto +13 -0
  33. package/src/proto/customers/updatedob.proto +13 -0
  34. package/src/proto/customers/updatehypervergetxn.proto +12 -0
  35. package/src/proto/customers/verifyemail.proto +11 -0
  36. package/src/proto/customers/verifympin.proto +13 -0
  37. package/src/proto/customers/verifyotp.proto +17 -0
  38. package/src/proto/customers.proto +83 -0
  39. package/src/proto/example.proto +20 -0
  40. package/src/proto/loans/approveloan.proto +15 -0
  41. package/src/proto/loans/banklist.proto +12 -0
  42. package/src/proto/loans/calculateemi.proto +20 -0
  43. package/src/proto/loans/creditlimit.proto +18 -0
  44. package/src/proto/loans/restructureloan.proto +12 -0
  45. package/src/proto/loans/transactionlist.proto +18 -0
  46. package/src/proto/loans/updateinstallments.proto +19 -0
  47. package/src/proto/loans/updateloan.proto +15 -0
  48. package/src/proto/loans.proto +23 -0
  49. package/src/proto/stashcash/creditsc.proto +22 -0
  50. package/src/proto/stashcash/debitsc.proto +27 -0
  51. package/src/proto/stashcash/getscbalance.proto +21 -0
  52. package/src/proto/stashcash/getschistory.proto +35 -0
  53. package/src/proto/stashcash/reversesc.proto +20 -0
  54. package/src/proto/stashcash.proto +17 -0
  55. package/src/ts/customers/addaddress.ts +310 -0
  56. package/src/ts/customers/addbankaccountdetails.ts +184 -0
  57. package/src/ts/customers/createcustomerreference.ts +276 -0
  58. package/src/ts/customers/getbankaccountdetails.ts +169 -0
  59. package/src/ts/customers/getbasicinfo.ts +385 -0
  60. package/src/ts/customers/getcities.ts +227 -0
  61. package/src/ts/customers/getcustomerbyid.ts +492 -0
  62. package/src/ts/customers/getdashboard.ts +728 -0
  63. package/src/ts/customers/getdashboardmaincard.ts +608 -0
  64. package/src/ts/customers/getkycweburl.ts +133 -0
  65. package/src/ts/customers/getprofessionalinfo.ts +344 -0
  66. package/src/ts/customers/getprofile.ts +338 -0
  67. package/src/ts/customers/getstates.ts +212 -0
  68. package/src/ts/customers/getstep.ts +483 -0
  69. package/src/ts/customers/profilebasic.ts +198 -0
  70. package/src/ts/customers/profileupdatetnc.ts +148 -0
  71. package/src/ts/customers/resetmpin.ts +166 -0
  72. package/src/ts/customers/savebasicdetails.ts +229 -0
  73. package/src/ts/customers/saveunlocklimit.ts +133 -0
  74. package/src/ts/customers/sendemailtoken.ts +148 -0
  75. package/src/ts/customers/sendotp.ts +202 -0
  76. package/src/ts/customers/setmpin.ts +166 -0
  77. package/src/ts/customers/step10.ts +544 -0
  78. package/src/ts/customers/step7.ts +456 -0
  79. package/src/ts/customers/step8.ts +472 -0
  80. package/src/ts/customers/step9.ts +578 -0
  81. package/src/ts/customers/stepstatic.ts +425 -0
  82. package/src/ts/customers/updatedigilockertxn.ts +182 -0
  83. package/src/ts/customers/updatehypervergetxn.ts +166 -0
  84. package/src/ts/customers/verifyemail.ts +148 -0
  85. package/src/ts/customers/verifympin.ts +184 -0
  86. package/src/ts/customers/verifyotp.ts +232 -0
  87. package/src/ts/customers.ts +1038 -0
  88. package/src/ts/example.ts +294 -0
  89. package/{ts/google/protobuf/timestamp.d.ts → src/ts/google/protobuf/timestamp.ts} +126 -30
  90. package/src/ts/loans/approveloan.ts +214 -0
  91. package/src/ts/loans/banklist.ts +183 -0
  92. package/src/ts/loans/calculateemi.ts +295 -0
  93. package/src/ts/loans/creditlimit.ts +294 -0
  94. package/src/ts/loans/restructureloan.ts +166 -0
  95. package/src/ts/loans/transactionlist.ts +281 -0
  96. package/src/ts/loans/updateinstallments.ts +271 -0
  97. package/src/ts/loans/updateloan.ts +214 -0
  98. package/src/ts/loans.ts +221 -0
  99. package/src/ts/stashcash/creditsc.ts +361 -0
  100. package/src/ts/stashcash/debitsc.ts +450 -0
  101. package/src/ts/stashcash/getscbalance.ts +351 -0
  102. package/src/ts/stashcash/getschistory.ts +566 -0
  103. package/src/ts/stashcash/reversesc.ts +329 -0
  104. package/src/ts/stashcash.ts +152 -0
  105. package/tsconfig.json +18 -0
  106. package/ts/customers/addaddress.d.ts +0 -50
  107. package/ts/customers/addaddress.js +0 -265
  108. package/ts/customers/addbankaccountdetails.d.ts +0 -37
  109. package/ts/customers/addbankaccountdetails.js +0 -147
  110. package/ts/customers/createcustomerreference.d.ts +0 -43
  111. package/ts/customers/createcustomerreference.js +0 -226
  112. package/ts/customers/getbankaccountdetails.d.ts +0 -36
  113. package/ts/customers/getbankaccountdetails.js +0 -134
  114. package/ts/customers/getbasicinfo.d.ts +0 -56
  115. package/ts/customers/getbasicinfo.js +0 -323
  116. package/ts/customers/getcities.d.ts +0 -47
  117. package/ts/customers/getcities.js +0 -183
  118. package/ts/customers/getcustomerbyid.d.ts +0 -55
  119. package/ts/customers/getcustomerbyid.js +0 -421
  120. package/ts/customers/getdashboard.d.ts +0 -91
  121. package/ts/customers/getdashboard.js +0 -618
  122. package/ts/customers/getdashboardmaincard.d.ts +0 -69
  123. package/ts/customers/getdashboardmaincard.js +0 -520
  124. package/ts/customers/getkycweburl.d.ts +0 -34
  125. package/ts/customers/getkycweburl.js +0 -104
  126. package/ts/customers/getprofessionalinfo.d.ts +0 -54
  127. package/ts/customers/getprofessionalinfo.js +0 -286
  128. package/ts/customers/getprofile.d.ts +0 -53
  129. package/ts/customers/getprofile.js +0 -282
  130. package/ts/customers/getstates.d.ts +0 -46
  131. package/ts/customers/getstates.js +0 -170
  132. package/ts/customers/getstep.d.ts +0 -69
  133. package/ts/customers/getstep.js +0 -406
  134. package/ts/customers/profilebasic.d.ts +0 -38
  135. package/ts/customers/profilebasic.js +0 -161
  136. package/ts/customers/profileupdatetnc.d.ts +0 -35
  137. package/ts/customers/profileupdatetnc.js +0 -117
  138. package/ts/customers/resetmpin.d.ts +0 -36
  139. package/ts/customers/resetmpin.js +0 -133
  140. package/ts/customers/savebasicdetails.d.ts +0 -47
  141. package/ts/customers/savebasicdetails.js +0 -185
  142. package/ts/customers/saveunlocklimit.d.ts +0 -34
  143. package/ts/customers/saveunlocklimit.js +0 -104
  144. package/ts/customers/sendemailtoken.d.ts +0 -35
  145. package/ts/customers/sendemailtoken.js +0 -117
  146. package/ts/customers/sendotp.d.ts +0 -38
  147. package/ts/customers/sendotp.js +0 -165
  148. package/ts/customers/setmpin.d.ts +0 -36
  149. package/ts/customers/setmpin.js +0 -133
  150. package/ts/customers/step1.d.ts +0 -71
  151. package/ts/customers/step1.js +0 -423
  152. package/ts/customers/step10.d.ts +0 -73
  153. package/ts/customers/step10.js +0 -459
  154. package/ts/customers/step2.d.ts +0 -67
  155. package/ts/customers/step2.js +0 -366
  156. package/ts/customers/step7.d.ts +0 -68
  157. package/ts/customers/step7.js +0 -381
  158. package/ts/customers/step8.d.ts +0 -69
  159. package/ts/customers/step8.js +0 -395
  160. package/ts/customers/step9.d.ts +0 -75
  161. package/ts/customers/step9.js +0 -489
  162. package/ts/customers/stepstatic.d.ts +0 -66
  163. package/ts/customers/stepstatic.js +0 -354
  164. package/ts/customers/updatedigilockertxn.d.ts +0 -37
  165. package/ts/customers/updatedigilockertxn.js +0 -147
  166. package/ts/customers/updatehypervergetxn.d.ts +0 -36
  167. package/ts/customers/updatehypervergetxn.js +0 -133
  168. package/ts/customers/verifyemail.d.ts +0 -35
  169. package/ts/customers/verifyemail.js +0 -117
  170. package/ts/customers/verifympin.d.ts +0 -37
  171. package/ts/customers/verifympin.js +0 -149
  172. package/ts/customers/verifyotp.d.ts +0 -40
  173. package/ts/customers/verifyotp.js +0 -191
  174. package/ts/customers.d.ts +0 -540
  175. package/ts/customers.js +0 -388
  176. package/ts/example.d.ts +0 -78
  177. package/ts/example.js +0 -199
  178. package/ts/google/protobuf/timestamp.js +0 -97
  179. package/ts/loans/approveloan.d.ts +0 -39
  180. package/ts/loans/approveloan.js +0 -175
  181. package/ts/loans/banklist.d.ts +0 -37
  182. package/ts/loans/banklist.js +0 -148
  183. package/ts/loans/calculateemi.d.ts +0 -51
  184. package/ts/loans/calculateemi.js +0 -243
  185. package/ts/loans/creditlimit.d.ts +0 -43
  186. package/ts/loans/creditlimit.js +0 -247
  187. package/ts/loans/restructureloan.d.ts +0 -36
  188. package/ts/loans/restructureloan.js +0 -133
  189. package/ts/loans/transactionlist.d.ts +0 -50
  190. package/ts/loans/transactionlist.js +0 -229
  191. package/ts/loans/updateinstallments.d.ts +0 -42
  192. package/ts/loans/updateinstallments.js +0 -226
  193. package/ts/loans/updateloan.d.ts +0 -39
  194. package/ts/loans/updateloan.js +0 -175
  195. package/ts/loans.d.ts +0 -112
  196. package/ts/loans.js +0 -84
  197. package/ts/stashcash/creditsc.d.ts +0 -54
  198. package/ts/stashcash/creditsc.js +0 -301
  199. package/ts/stashcash/debitsc.d.ts +0 -59
  200. package/ts/stashcash/debitsc.js +0 -380
  201. package/ts/stashcash/getscbalance.d.ts +0 -53
  202. package/ts/stashcash/getscbalance.js +0 -293
  203. package/ts/stashcash/getschistory.d.ts +0 -73
  204. package/ts/stashcash/getschistory.js +0 -479
  205. package/ts/stashcash/reversesc.d.ts +0 -52
  206. package/ts/stashcash/reversesc.js +0 -273
  207. package/ts/stashcash.d.ts +0 -84
  208. package/ts/stashcash.js +0 -64
@@ -0,0 +1,183 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v1.181.0
4
+ // protoc v3.20.3
5
+ // source: loans/banklist.proto
6
+
7
+ /* eslint-disable */
8
+ import _m0 from "protobufjs/minimal";
9
+
10
+ export const protobufPackage = "loans.banklist";
11
+
12
+ export interface bankListRequest {
13
+ }
14
+
15
+ export interface bankListResponse {
16
+ id: number;
17
+ account_number: number;
18
+ bank_name: string;
19
+ ifsc_code: number;
20
+ }
21
+
22
+ function createBasebankListRequest(): bankListRequest {
23
+ return {};
24
+ }
25
+
26
+ export const bankListRequest = {
27
+ encode(_: bankListRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
28
+ return writer;
29
+ },
30
+
31
+ decode(input: _m0.Reader | Uint8Array, length?: number): bankListRequest {
32
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
33
+ let end = length === undefined ? reader.len : reader.pos + length;
34
+ const message = createBasebankListRequest();
35
+ while (reader.pos < end) {
36
+ const tag = reader.uint32();
37
+ switch (tag >>> 3) {
38
+ }
39
+ if ((tag & 7) === 4 || tag === 0) {
40
+ break;
41
+ }
42
+ reader.skipType(tag & 7);
43
+ }
44
+ return message;
45
+ },
46
+
47
+ fromJSON(_: any): bankListRequest {
48
+ return {};
49
+ },
50
+
51
+ toJSON(_: bankListRequest): unknown {
52
+ const obj: any = {};
53
+ return obj;
54
+ },
55
+
56
+ create<I extends Exact<DeepPartial<bankListRequest>, I>>(base?: I): bankListRequest {
57
+ return bankListRequest.fromPartial(base ?? ({} as any));
58
+ },
59
+ fromPartial<I extends Exact<DeepPartial<bankListRequest>, I>>(_: I): bankListRequest {
60
+ const message = createBasebankListRequest();
61
+ return message;
62
+ },
63
+ };
64
+
65
+ function createBasebankListResponse(): bankListResponse {
66
+ return { id: 0, account_number: 0, bank_name: "", ifsc_code: 0 };
67
+ }
68
+
69
+ export const bankListResponse = {
70
+ encode(message: bankListResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
71
+ if (message.id !== 0) {
72
+ writer.uint32(8).int32(message.id);
73
+ }
74
+ if (message.account_number !== 0) {
75
+ writer.uint32(16).int32(message.account_number);
76
+ }
77
+ if (message.bank_name !== "") {
78
+ writer.uint32(26).string(message.bank_name);
79
+ }
80
+ if (message.ifsc_code !== 0) {
81
+ writer.uint32(32).int32(message.ifsc_code);
82
+ }
83
+ return writer;
84
+ },
85
+
86
+ decode(input: _m0.Reader | Uint8Array, length?: number): bankListResponse {
87
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
88
+ let end = length === undefined ? reader.len : reader.pos + length;
89
+ const message = createBasebankListResponse();
90
+ while (reader.pos < end) {
91
+ const tag = reader.uint32();
92
+ switch (tag >>> 3) {
93
+ case 1:
94
+ if (tag !== 8) {
95
+ break;
96
+ }
97
+
98
+ message.id = reader.int32();
99
+ continue;
100
+ case 2:
101
+ if (tag !== 16) {
102
+ break;
103
+ }
104
+
105
+ message.account_number = reader.int32();
106
+ continue;
107
+ case 3:
108
+ if (tag !== 26) {
109
+ break;
110
+ }
111
+
112
+ message.bank_name = reader.string();
113
+ continue;
114
+ case 4:
115
+ if (tag !== 32) {
116
+ break;
117
+ }
118
+
119
+ message.ifsc_code = reader.int32();
120
+ continue;
121
+ }
122
+ if ((tag & 7) === 4 || tag === 0) {
123
+ break;
124
+ }
125
+ reader.skipType(tag & 7);
126
+ }
127
+ return message;
128
+ },
129
+
130
+ fromJSON(object: any): bankListResponse {
131
+ return {
132
+ id: isSet(object.id) ? globalThis.Number(object.id) : 0,
133
+ account_number: isSet(object.account_number) ? globalThis.Number(object.account_number) : 0,
134
+ bank_name: isSet(object.bank_name) ? globalThis.String(object.bank_name) : "",
135
+ ifsc_code: isSet(object.ifsc_code) ? globalThis.Number(object.ifsc_code) : 0,
136
+ };
137
+ },
138
+
139
+ toJSON(message: bankListResponse): unknown {
140
+ const obj: any = {};
141
+ if (message.id !== 0) {
142
+ obj.id = Math.round(message.id);
143
+ }
144
+ if (message.account_number !== 0) {
145
+ obj.account_number = Math.round(message.account_number);
146
+ }
147
+ if (message.bank_name !== "") {
148
+ obj.bank_name = message.bank_name;
149
+ }
150
+ if (message.ifsc_code !== 0) {
151
+ obj.ifsc_code = Math.round(message.ifsc_code);
152
+ }
153
+ return obj;
154
+ },
155
+
156
+ create<I extends Exact<DeepPartial<bankListResponse>, I>>(base?: I): bankListResponse {
157
+ return bankListResponse.fromPartial(base ?? ({} as any));
158
+ },
159
+ fromPartial<I extends Exact<DeepPartial<bankListResponse>, I>>(object: I): bankListResponse {
160
+ const message = createBasebankListResponse();
161
+ message.id = object.id ?? 0;
162
+ message.account_number = object.account_number ?? 0;
163
+ message.bank_name = object.bank_name ?? "";
164
+ message.ifsc_code = object.ifsc_code ?? 0;
165
+ return message;
166
+ },
167
+ };
168
+
169
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
170
+
171
+ export type DeepPartial<T> = T extends Builtin ? T
172
+ : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
173
+ : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
174
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
175
+ : Partial<T>;
176
+
177
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
178
+ export type Exact<P, I extends P> = P extends Builtin ? P
179
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
180
+
181
+ function isSet(value: any): boolean {
182
+ return value !== null && value !== undefined;
183
+ }
@@ -0,0 +1,295 @@
1
+ // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
+ // versions:
3
+ // protoc-gen-ts_proto v1.181.0
4
+ // protoc v3.20.3
5
+ // source: loans/calculateemi.proto
6
+
7
+ /* eslint-disable */
8
+ import _m0 from "protobufjs/minimal";
9
+
10
+ export const protobufPackage = "loans.calculateemi";
11
+
12
+ export interface calculateEmiRequest {
13
+ amount: number;
14
+ }
15
+
16
+ export interface calculateEmiResponse {
17
+ disbursal_amount: number;
18
+ tenure: number;
19
+ expected_emi: calculateEmiResponse_Field[];
20
+ min_tenure: number;
21
+ max_tenure: number;
22
+ }
23
+
24
+ export interface calculateEmiResponse_Field {
25
+ tenure: number;
26
+ emi_amount: number;
27
+ }
28
+
29
+ function createBasecalculateEmiRequest(): calculateEmiRequest {
30
+ return { amount: 0 };
31
+ }
32
+
33
+ export const calculateEmiRequest = {
34
+ encode(message: calculateEmiRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
35
+ if (message.amount !== 0) {
36
+ writer.uint32(8).int32(message.amount);
37
+ }
38
+ return writer;
39
+ },
40
+
41
+ decode(input: _m0.Reader | Uint8Array, length?: number): calculateEmiRequest {
42
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
43
+ let end = length === undefined ? reader.len : reader.pos + length;
44
+ const message = createBasecalculateEmiRequest();
45
+ while (reader.pos < end) {
46
+ const tag = reader.uint32();
47
+ switch (tag >>> 3) {
48
+ case 1:
49
+ if (tag !== 8) {
50
+ break;
51
+ }
52
+
53
+ message.amount = reader.int32();
54
+ continue;
55
+ }
56
+ if ((tag & 7) === 4 || tag === 0) {
57
+ break;
58
+ }
59
+ reader.skipType(tag & 7);
60
+ }
61
+ return message;
62
+ },
63
+
64
+ fromJSON(object: any): calculateEmiRequest {
65
+ return { amount: isSet(object.amount) ? globalThis.Number(object.amount) : 0 };
66
+ },
67
+
68
+ toJSON(message: calculateEmiRequest): unknown {
69
+ const obj: any = {};
70
+ if (message.amount !== 0) {
71
+ obj.amount = Math.round(message.amount);
72
+ }
73
+ return obj;
74
+ },
75
+
76
+ create<I extends Exact<DeepPartial<calculateEmiRequest>, I>>(base?: I): calculateEmiRequest {
77
+ return calculateEmiRequest.fromPartial(base ?? ({} as any));
78
+ },
79
+ fromPartial<I extends Exact<DeepPartial<calculateEmiRequest>, I>>(object: I): calculateEmiRequest {
80
+ const message = createBasecalculateEmiRequest();
81
+ message.amount = object.amount ?? 0;
82
+ return message;
83
+ },
84
+ };
85
+
86
+ function createBasecalculateEmiResponse(): calculateEmiResponse {
87
+ return { disbursal_amount: 0, tenure: 0, expected_emi: [], min_tenure: 0, max_tenure: 0 };
88
+ }
89
+
90
+ export const calculateEmiResponse = {
91
+ encode(message: calculateEmiResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
92
+ if (message.disbursal_amount !== 0) {
93
+ writer.uint32(8).int32(message.disbursal_amount);
94
+ }
95
+ if (message.tenure !== 0) {
96
+ writer.uint32(16).int32(message.tenure);
97
+ }
98
+ for (const v of message.expected_emi) {
99
+ calculateEmiResponse_Field.encode(v!, writer.uint32(26).fork()).ldelim();
100
+ }
101
+ if (message.min_tenure !== 0) {
102
+ writer.uint32(32).int32(message.min_tenure);
103
+ }
104
+ if (message.max_tenure !== 0) {
105
+ writer.uint32(40).int32(message.max_tenure);
106
+ }
107
+ return writer;
108
+ },
109
+
110
+ decode(input: _m0.Reader | Uint8Array, length?: number): calculateEmiResponse {
111
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
112
+ let end = length === undefined ? reader.len : reader.pos + length;
113
+ const message = createBasecalculateEmiResponse();
114
+ while (reader.pos < end) {
115
+ const tag = reader.uint32();
116
+ switch (tag >>> 3) {
117
+ case 1:
118
+ if (tag !== 8) {
119
+ break;
120
+ }
121
+
122
+ message.disbursal_amount = reader.int32();
123
+ continue;
124
+ case 2:
125
+ if (tag !== 16) {
126
+ break;
127
+ }
128
+
129
+ message.tenure = reader.int32();
130
+ continue;
131
+ case 3:
132
+ if (tag !== 26) {
133
+ break;
134
+ }
135
+
136
+ message.expected_emi.push(calculateEmiResponse_Field.decode(reader, reader.uint32()));
137
+ continue;
138
+ case 4:
139
+ if (tag !== 32) {
140
+ break;
141
+ }
142
+
143
+ message.min_tenure = reader.int32();
144
+ continue;
145
+ case 5:
146
+ if (tag !== 40) {
147
+ break;
148
+ }
149
+
150
+ message.max_tenure = reader.int32();
151
+ continue;
152
+ }
153
+ if ((tag & 7) === 4 || tag === 0) {
154
+ break;
155
+ }
156
+ reader.skipType(tag & 7);
157
+ }
158
+ return message;
159
+ },
160
+
161
+ fromJSON(object: any): calculateEmiResponse {
162
+ return {
163
+ disbursal_amount: isSet(object.disbursal_amount) ? globalThis.Number(object.disbursal_amount) : 0,
164
+ tenure: isSet(object.tenure) ? globalThis.Number(object.tenure) : 0,
165
+ expected_emi: globalThis.Array.isArray(object?.expected_emi)
166
+ ? object.expected_emi.map((e: any) => calculateEmiResponse_Field.fromJSON(e))
167
+ : [],
168
+ min_tenure: isSet(object.min_tenure) ? globalThis.Number(object.min_tenure) : 0,
169
+ max_tenure: isSet(object.max_tenure) ? globalThis.Number(object.max_tenure) : 0,
170
+ };
171
+ },
172
+
173
+ toJSON(message: calculateEmiResponse): unknown {
174
+ const obj: any = {};
175
+ if (message.disbursal_amount !== 0) {
176
+ obj.disbursal_amount = Math.round(message.disbursal_amount);
177
+ }
178
+ if (message.tenure !== 0) {
179
+ obj.tenure = Math.round(message.tenure);
180
+ }
181
+ if (message.expected_emi?.length) {
182
+ obj.expected_emi = message.expected_emi.map((e) => calculateEmiResponse_Field.toJSON(e));
183
+ }
184
+ if (message.min_tenure !== 0) {
185
+ obj.min_tenure = Math.round(message.min_tenure);
186
+ }
187
+ if (message.max_tenure !== 0) {
188
+ obj.max_tenure = Math.round(message.max_tenure);
189
+ }
190
+ return obj;
191
+ },
192
+
193
+ create<I extends Exact<DeepPartial<calculateEmiResponse>, I>>(base?: I): calculateEmiResponse {
194
+ return calculateEmiResponse.fromPartial(base ?? ({} as any));
195
+ },
196
+ fromPartial<I extends Exact<DeepPartial<calculateEmiResponse>, I>>(object: I): calculateEmiResponse {
197
+ const message = createBasecalculateEmiResponse();
198
+ message.disbursal_amount = object.disbursal_amount ?? 0;
199
+ message.tenure = object.tenure ?? 0;
200
+ message.expected_emi = object.expected_emi?.map((e) => calculateEmiResponse_Field.fromPartial(e)) || [];
201
+ message.min_tenure = object.min_tenure ?? 0;
202
+ message.max_tenure = object.max_tenure ?? 0;
203
+ return message;
204
+ },
205
+ };
206
+
207
+ function createBasecalculateEmiResponse_Field(): calculateEmiResponse_Field {
208
+ return { tenure: 0, emi_amount: 0 };
209
+ }
210
+
211
+ export const calculateEmiResponse_Field = {
212
+ encode(message: calculateEmiResponse_Field, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
213
+ if (message.tenure !== 0) {
214
+ writer.uint32(8).int32(message.tenure);
215
+ }
216
+ if (message.emi_amount !== 0) {
217
+ writer.uint32(16).int32(message.emi_amount);
218
+ }
219
+ return writer;
220
+ },
221
+
222
+ decode(input: _m0.Reader | Uint8Array, length?: number): calculateEmiResponse_Field {
223
+ const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);
224
+ let end = length === undefined ? reader.len : reader.pos + length;
225
+ const message = createBasecalculateEmiResponse_Field();
226
+ while (reader.pos < end) {
227
+ const tag = reader.uint32();
228
+ switch (tag >>> 3) {
229
+ case 1:
230
+ if (tag !== 8) {
231
+ break;
232
+ }
233
+
234
+ message.tenure = reader.int32();
235
+ continue;
236
+ case 2:
237
+ if (tag !== 16) {
238
+ break;
239
+ }
240
+
241
+ message.emi_amount = reader.int32();
242
+ continue;
243
+ }
244
+ if ((tag & 7) === 4 || tag === 0) {
245
+ break;
246
+ }
247
+ reader.skipType(tag & 7);
248
+ }
249
+ return message;
250
+ },
251
+
252
+ fromJSON(object: any): calculateEmiResponse_Field {
253
+ return {
254
+ tenure: isSet(object.tenure) ? globalThis.Number(object.tenure) : 0,
255
+ emi_amount: isSet(object.emi_amount) ? globalThis.Number(object.emi_amount) : 0,
256
+ };
257
+ },
258
+
259
+ toJSON(message: calculateEmiResponse_Field): unknown {
260
+ const obj: any = {};
261
+ if (message.tenure !== 0) {
262
+ obj.tenure = Math.round(message.tenure);
263
+ }
264
+ if (message.emi_amount !== 0) {
265
+ obj.emi_amount = Math.round(message.emi_amount);
266
+ }
267
+ return obj;
268
+ },
269
+
270
+ create<I extends Exact<DeepPartial<calculateEmiResponse_Field>, I>>(base?: I): calculateEmiResponse_Field {
271
+ return calculateEmiResponse_Field.fromPartial(base ?? ({} as any));
272
+ },
273
+ fromPartial<I extends Exact<DeepPartial<calculateEmiResponse_Field>, I>>(object: I): calculateEmiResponse_Field {
274
+ const message = createBasecalculateEmiResponse_Field();
275
+ message.tenure = object.tenure ?? 0;
276
+ message.emi_amount = object.emi_amount ?? 0;
277
+ return message;
278
+ },
279
+ };
280
+
281
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
282
+
283
+ export type DeepPartial<T> = T extends Builtin ? T
284
+ : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>
285
+ : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
286
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
287
+ : Partial<T>;
288
+
289
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
290
+ export type Exact<P, I extends P> = P extends Builtin ? P
291
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
292
+
293
+ function isSet(value: any): boolean {
294
+ return value !== null && value !== undefined;
295
+ }