@firela/api-types 0.0.0-canary.209966 → 0.0.0-canary.32edff08

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.
@@ -5,6 +5,10 @@ export type CreateAccountDto = {
5
5
  * Account path (hierarchical, colon-separated)
6
6
  */
7
7
  path: string;
8
+ /**
9
+ * Display name to distinguish accounts at the same path (default: "")
10
+ */
11
+ displayName?: string;
8
12
  /**
9
13
  * Account open date
10
14
  */
@@ -73,6 +77,10 @@ export type AccountResponseDto = {
73
77
  * Account path (hierarchical, colon-separated)
74
78
  */
75
79
  path: string;
80
+ /**
81
+ * Display name distinguishing multiple accounts at the same path
82
+ */
83
+ displayName: string;
76
84
  /**
77
85
  * Account type (root segment)
78
86
  */
@@ -170,6 +178,10 @@ export type AccountListResponseDto = {
170
178
  };
171
179
 
172
180
  export type UpdateAccountDto = {
181
+ /**
182
+ * Display name to distinguish accounts at the same path
183
+ */
184
+ displayName?: string;
173
185
  /**
174
186
  * Allowed currencies (null = no restriction)
175
187
  */
@@ -202,9 +214,7 @@ export type UpdateAccountDto = {
202
214
  /**
203
215
  * Platform ID (references Platform.id), null to clear association
204
216
  */
205
- platformId?: {
206
- [key: string]: unknown;
207
- } | null;
217
+ platformId?: string | null;
208
218
  };
209
219
 
210
220
  export type CloseAccountDto = {
@@ -227,6 +237,85 @@ export type ReopenAccountDto = {
227
237
  reopenDate?: string;
228
238
  };
229
239
 
240
+ export type AccountStandardResponseDto = {
241
+ /**
242
+ * Account path (hierarchical, colon-separated)
243
+ */
244
+ path: string;
245
+ /**
246
+ * Account type in Beancount hierarchy
247
+ */
248
+ type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
249
+ /**
250
+ * i18n key for localized display name
251
+ */
252
+ i18nKey: string;
253
+ /**
254
+ * Short localized display name
255
+ */
256
+ name?: string;
257
+ /**
258
+ * Account description (stable semantics only)
259
+ */
260
+ description: string;
261
+ /**
262
+ * Account tags for categorization
263
+ */
264
+ tags: Array<string>;
265
+ /**
266
+ * Icon identifier for UI display
267
+ */
268
+ icon: string;
269
+ };
270
+
271
+ export type AccountStandardListResponseDto = {
272
+ /**
273
+ * Array of account templates
274
+ */
275
+ items: Array<AccountStandardResponseDto>;
276
+ /**
277
+ * Total number of account templates
278
+ */
279
+ total: number;
280
+ /**
281
+ * Region code
282
+ */
283
+ region: string;
284
+ };
285
+
286
+ export type TemplateMetadataDto = {
287
+ /**
288
+ * Whether this path can be extended
289
+ */
290
+ extendable: boolean;
291
+ /**
292
+ * Root account type
293
+ */
294
+ rootType: string;
295
+ };
296
+
297
+ export type TemplateMetadataResponseDto = {
298
+ metadata?: TemplateMetadataDto;
299
+ };
300
+
301
+ export type RegionConfigDto = {
302
+ currency: string;
303
+ dateFormat: string;
304
+ locale: string;
305
+ };
306
+
307
+ export type RegionInfoDto = {
308
+ code: string;
309
+ displayName: string;
310
+ parent?: string;
311
+ chain: Array<string>;
312
+ config: RegionConfigDto;
313
+ };
314
+
315
+ export type RegionsMetadataResponseDto = {
316
+ regions: Array<RegionInfoDto>;
317
+ };
318
+
230
319
  export type CreatePostingDto = {
231
320
  /**
232
321
  * Account name in Beancount format (must start with uppercase, colon-separated)
@@ -304,7 +393,7 @@ export type PostingResponseDto = {
304
393
  */
305
394
  account: string;
306
395
  /**
307
- * Amount (may be null if interpolated)
396
+ * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
308
397
  */
309
398
  units?: string;
310
399
  /**
@@ -439,6 +528,39 @@ export type ApiProblemResponseDto = {
439
528
  };
440
529
  };
441
530
 
531
+ export type BatchCreateTransactionDto = {
532
+ /**
533
+ * Array of transactions to create
534
+ */
535
+ transactions: Array<CreateTransactionDto>;
536
+ };
537
+
538
+ export type BatchTransactionErrorDto = {
539
+ /**
540
+ * Index of failed transaction in the input array
541
+ */
542
+ index: number;
543
+ /**
544
+ * Error message describing the failure
545
+ */
546
+ error: string;
547
+ /**
548
+ * Structured error code for programmatic handling
549
+ */
550
+ errorCode?: string;
551
+ };
552
+
553
+ export type BatchTransactionResponseDto = {
554
+ /**
555
+ * Successfully created transactions
556
+ */
557
+ succeeded: Array<TransactionResponseDto>;
558
+ /**
559
+ * Failed transactions with error details
560
+ */
561
+ failed: Array<BatchTransactionErrorDto>;
562
+ };
563
+
442
564
  export type PostingDetailDto = {
443
565
  /**
444
566
  * Posting ID
@@ -453,7 +575,7 @@ export type PostingDetailDto = {
453
575
  */
454
576
  accountName: string;
455
577
  /**
456
- * Amount (may be null if interpolated)
578
+ * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
457
579
  */
458
580
  units?: string;
459
581
  /**
@@ -542,9 +664,9 @@ export type TransactionDetailDto = {
542
664
  */
543
665
  status: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
544
666
  /**
545
- * Source type (how the transaction was created)
667
+ * Source type (free-form string from transaction metadata, e.g. import, api)
546
668
  */
547
- sourceType?: 'NLP' | 'CSV' | 'OCR' | 'API';
669
+ sourceType?: string;
548
670
  /**
549
671
  * Source platform (e.g., alipay, wechat)
550
672
  */
@@ -587,11 +709,6 @@ export type flag2 =
587
709
  */
588
710
  export type status2 = 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
589
711
 
590
- /**
591
- * Source type (how the transaction was created)
592
- */
593
- export type sourceType = 'NLP' | 'CSV' | 'OCR' | 'API';
594
-
595
712
  export type TransactionListResponseDto = {
596
713
  /**
597
714
  * List of transactions
@@ -611,6 +728,24 @@ export type TransactionListResponseDto = {
611
728
  offset: number;
612
729
  };
613
730
 
731
+ export type TagSuggestionDto = {
732
+ /**
733
+ * Tag name
734
+ */
735
+ tag: string;
736
+ /**
737
+ * Usage count across ACTIVE transactions
738
+ */
739
+ count: number;
740
+ };
741
+
742
+ export type TagSuggestionsResponseDto = {
743
+ /**
744
+ * Tag suggestions sorted as requested
745
+ */
746
+ data: Array<TagSuggestionDto>;
747
+ };
748
+
614
749
  export type UpdateTransactionDto = {
615
750
  /**
616
751
  * Transaction flag (CLEARED, PENDING, etc.)
@@ -646,48 +781,6 @@ export type UpdateTransactionDto = {
646
781
  };
647
782
  };
648
783
 
649
- export type AccountStandardResponseDto = {
650
- /**
651
- * Account path (hierarchical, colon-separated)
652
- */
653
- path: string;
654
- /**
655
- * Account type in Beancount hierarchy
656
- */
657
- type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
658
- /**
659
- * i18n key for localized display name
660
- */
661
- i18nKey?: string;
662
- /**
663
- * Account description
664
- */
665
- description?: string;
666
- /**
667
- * Account tags for categorization
668
- */
669
- tags?: Array<string>;
670
- /**
671
- * Icon identifier for UI display
672
- */
673
- icon?: string;
674
- };
675
-
676
- export type AccountStandardListResponseDto = {
677
- /**
678
- * Array of account templates
679
- */
680
- items: Array<AccountStandardResponseDto>;
681
- /**
682
- * Total number of account templates
683
- */
684
- total: number;
685
- /**
686
- * Region code
687
- */
688
- region: string;
689
- };
690
-
691
784
  export type BalanceResponseDto = {
692
785
  /**
693
786
  * Account name
@@ -754,9 +847,9 @@ export type TransactionSummaryDto = {
754
847
  */
755
848
  accountName?: string;
756
849
  /**
757
- * Source type (NLP, CSV, OCR, API)
850
+ * Source type (free-form string from transaction metadata, e.g. import, api)
758
851
  */
759
- sourceType?: 'NLP' | 'CSV' | 'OCR' | 'API';
852
+ sourceType?: string;
760
853
  /**
761
854
  * Source platform (e.g., alipay, wechat)
762
855
  */
@@ -786,19 +879,25 @@ export type ReviewSummaryDto = {
786
879
  */
787
880
  confidence: number;
788
881
  /**
789
- * Confidence level derived from score
882
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
883
+ */
884
+ confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW' | null;
885
+ /**
886
+ * i18n message key for summary (e.g., review.summary.duplicate). Translate on frontend with summaryParams.
790
887
  */
791
- confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW';
888
+ summaryKey: string;
792
889
  /**
793
- * Human-readable summary of the review item
890
+ * Parameters for summary message interpolation (e.g., { date: "2024-01-15", amount: "50" })
794
891
  */
795
- summary: string;
892
+ summaryParams?: {
893
+ [key: string]: string;
894
+ };
796
895
  /**
797
896
  * Human-readable reasons for branching
798
897
  */
799
898
  matchReasons: Array<string>;
800
899
  /**
801
- * Source type (NLP, CSV, OCR, API)
900
+ * Source type (free-form string from transaction metadata, e.g. import, api)
802
901
  */
803
902
  sourceType: string;
804
903
  /**
@@ -851,7 +950,7 @@ export type type2 =
851
950
  export type status3 = 'PENDING' | 'RESOLVED' | 'EXPIRED' | 'CANCELLED';
852
951
 
853
952
  /**
854
- * Confidence level derived from score
953
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
855
954
  */
856
955
  export type confidenceLevel = 'HIGH' | 'MEDIUM' | 'LOW';
857
956
 
@@ -896,7 +995,18 @@ export type DecisionOptionDto = {
896
995
  /**
897
996
  * The action value to submit (e.g., UPGRADE_REPLACE, ACCEPT)
898
997
  */
899
- value: string;
998
+ value:
999
+ | 'UPGRADE_REPLACE'
1000
+ | 'LINK_KEEP_BOTH'
1001
+ | 'IGNORE_NEW'
1002
+ | 'CONFIRM_DIFFERENT'
1003
+ | 'ACCEPT'
1004
+ | 'REJECT'
1005
+ | 'ACCEPT_AND_LEARN'
1006
+ | 'CHOOSE_OTHER'
1007
+ | 'CANCEL'
1008
+ | 'FIX'
1009
+ | 'IGNORE';
900
1010
  /**
901
1011
  * i18n message key for display label (e.g., review.payee.accept.label)
902
1012
  */
@@ -911,6 +1021,22 @@ export type DecisionOptionDto = {
911
1021
  recommended?: boolean;
912
1022
  };
913
1023
 
1024
+ /**
1025
+ * The action value to submit (e.g., UPGRADE_REPLACE, ACCEPT)
1026
+ */
1027
+ export type value =
1028
+ | 'UPGRADE_REPLACE'
1029
+ | 'LINK_KEEP_BOTH'
1030
+ | 'IGNORE_NEW'
1031
+ | 'CONFIRM_DIFFERENT'
1032
+ | 'ACCEPT'
1033
+ | 'REJECT'
1034
+ | 'ACCEPT_AND_LEARN'
1035
+ | 'CHOOSE_OTHER'
1036
+ | 'CANCEL'
1037
+ | 'FIX'
1038
+ | 'IGNORE';
1039
+
914
1040
  export type ReviewDetailDto = {
915
1041
  /**
916
1042
  * Review item ID
@@ -934,19 +1060,25 @@ export type ReviewDetailDto = {
934
1060
  */
935
1061
  confidence: number;
936
1062
  /**
937
- * Confidence level derived from score
1063
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
1064
+ */
1065
+ confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW' | null;
1066
+ /**
1067
+ * i18n message key for summary (e.g., review.summary.duplicate). Translate on frontend with summaryParams.
938
1068
  */
939
- confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW';
1069
+ summaryKey: string;
940
1070
  /**
941
- * Human-readable summary of the review item
1071
+ * Parameters for summary message interpolation (e.g., { date: "2024-01-15", amount: "50" })
942
1072
  */
943
- summary: string;
1073
+ summaryParams?: {
1074
+ [key: string]: string;
1075
+ };
944
1076
  /**
945
1077
  * Human-readable reasons for branching
946
1078
  */
947
1079
  matchReasons: Array<string>;
948
1080
  /**
949
- * Source type (NLP, CSV, OCR, API)
1081
+ * Source type (free-form string from transaction metadata, e.g. import, api)
950
1082
  */
951
1083
  sourceType: string;
952
1084
  /**
@@ -997,6 +1129,162 @@ export type ReviewDetailDto = {
997
1129
  transactionId?: string;
998
1130
  };
999
1131
 
1132
+ export type ResolveReviewDto = {
1133
+ /**
1134
+ * Decision action. Valid actions vary by review type — see DecisionOptionDto.value returned by the review detail endpoint.
1135
+ */
1136
+ action:
1137
+ | 'UPGRADE_REPLACE'
1138
+ | 'LINK_KEEP_BOTH'
1139
+ | 'IGNORE_NEW'
1140
+ | 'CONFIRM_DIFFERENT'
1141
+ | 'ACCEPT'
1142
+ | 'REJECT'
1143
+ | 'ACCEPT_AND_LEARN'
1144
+ | 'CHOOSE_OTHER'
1145
+ | 'CANCEL'
1146
+ | 'FIX'
1147
+ | 'IGNORE';
1148
+ /**
1149
+ * Additional data for the decision (e.g., selected account ID)
1150
+ */
1151
+ data?: {
1152
+ [key: string]: unknown;
1153
+ };
1154
+ };
1155
+
1156
+ /**
1157
+ * Decision action. Valid actions vary by review type — see DecisionOptionDto.value returned by the review detail endpoint.
1158
+ */
1159
+ export type action =
1160
+ | 'UPGRADE_REPLACE'
1161
+ | 'LINK_KEEP_BOTH'
1162
+ | 'IGNORE_NEW'
1163
+ | 'CONFIRM_DIFFERENT'
1164
+ | 'ACCEPT'
1165
+ | 'REJECT'
1166
+ | 'ACCEPT_AND_LEARN'
1167
+ | 'CHOOSE_OTHER'
1168
+ | 'CANCEL'
1169
+ | 'FIX'
1170
+ | 'IGNORE';
1171
+
1172
+ export type ResolveResultDto = {
1173
+ /**
1174
+ * Whether resolution was successful
1175
+ */
1176
+ success: boolean;
1177
+ /**
1178
+ * i18n message key for result message (e.g., review.payee.result.mapped)
1179
+ */
1180
+ messageKey?: string;
1181
+ /**
1182
+ * Parameters for message interpolation (e.g., { name: "PayeeName" })
1183
+ */
1184
+ messageParams?: {
1185
+ [key: string]: string;
1186
+ };
1187
+ /**
1188
+ * Resolution ID for undo
1189
+ */
1190
+ resolutionId: string;
1191
+ /**
1192
+ * Whether this decision can be undone
1193
+ */
1194
+ canUndo: boolean;
1195
+ /**
1196
+ * Deadline for undo (24h from resolution)
1197
+ */
1198
+ undoDeadline: string;
1199
+ /**
1200
+ * Rule ID if learning was triggered (ACCEPT_AND_LEARN actions). Use this to deep-link to the rule management page.
1201
+ */
1202
+ learnedRuleId?: string;
1203
+ };
1204
+
1205
+ export type UndoResultDto = {
1206
+ /**
1207
+ * Whether undo was successful
1208
+ */
1209
+ success: boolean;
1210
+ /**
1211
+ * Message
1212
+ */
1213
+ message?: string;
1214
+ /**
1215
+ * Review item ID that was restored
1216
+ */
1217
+ reviewId: string;
1218
+ };
1219
+
1220
+ export type BatchResolveDto = {
1221
+ /**
1222
+ * Review item IDs to resolve
1223
+ */
1224
+ reviewIds: Array<string>;
1225
+ /**
1226
+ * Decision action to apply to all items
1227
+ */
1228
+ action:
1229
+ | 'UPGRADE_REPLACE'
1230
+ | 'LINK_KEEP_BOTH'
1231
+ | 'IGNORE_NEW'
1232
+ | 'CONFIRM_DIFFERENT'
1233
+ | 'ACCEPT'
1234
+ | 'REJECT'
1235
+ | 'ACCEPT_AND_LEARN'
1236
+ | 'CHOOSE_OTHER'
1237
+ | 'CANCEL'
1238
+ | 'FIX'
1239
+ | 'IGNORE';
1240
+ /**
1241
+ * Additional data for the decision
1242
+ */
1243
+ data?: {
1244
+ [key: string]: unknown;
1245
+ };
1246
+ };
1247
+
1248
+ export type BatchResolveResultDto = {
1249
+ /**
1250
+ * Number of successfully resolved items
1251
+ */
1252
+ successCount: number;
1253
+ /**
1254
+ * Number of failed items
1255
+ */
1256
+ failedCount: number;
1257
+ /**
1258
+ * Details for each item
1259
+ */
1260
+ results: Array<string>;
1261
+ };
1262
+
1263
+ export type CreatePayeeDto = {
1264
+ /**
1265
+ * User's original payee name (e.g., 'Starbucks', 'McDonald'). This is the raw payee string as entered by the user.
1266
+ */
1267
+ payee: string;
1268
+ /**
1269
+ * Optional reference to global PayeeProfile for standardized data (merchant info, i18n keys, categories)
1270
+ */
1271
+ payeeProfileId?: string;
1272
+ /**
1273
+ * User's custom category for this payee (overrides PayeeProfile category)
1274
+ */
1275
+ customCategory?: string;
1276
+ /**
1277
+ * User's custom tags for this payee (e.g., ['favorite', 'work_meal'])
1278
+ */
1279
+ customTags?: Array<string>;
1280
+ /**
1281
+ * Metadata for extended information (location, notes, contact info, etc.)
1282
+ */
1283
+ meta?: {
1284
+ [key: string]: unknown;
1285
+ };
1286
+ };
1287
+
1000
1288
  export type PayeeResponseDto = {
1001
1289
  /**
1002
1290
  * Unique identifier (UUID)
@@ -1013,15 +1301,11 @@ export type PayeeResponseDto = {
1013
1301
  /**
1014
1302
  * Reference to global PayeeProfile (merchant info, i18n keys, categories)
1015
1303
  */
1016
- payeeProfileId?: {
1017
- [key: string]: unknown;
1018
- } | null;
1304
+ payeeProfileId?: string | null;
1019
1305
  /**
1020
1306
  * User's custom category (overrides PayeeProfile category if set)
1021
1307
  */
1022
- customCategory?: {
1023
- [key: string]: unknown;
1024
- } | null;
1308
+ customCategory?: string | null;
1025
1309
  /**
1026
1310
  * User's custom tags (e.g., ['favorite', 'work_meal'])
1027
1311
  */
@@ -1087,27 +1371,46 @@ export type PayeeStatsResponseDto = {
1087
1371
  lastUsedAt: string;
1088
1372
  };
1089
1373
 
1090
- export type PayeeProfileResponseDto = {
1374
+ export type UpdatePayeeDto = {
1091
1375
  /**
1092
- * Unique identifier (UUID)
1376
+ * Optional reference to global PayeeProfile for standardized data (merchant info, i18n keys, categories)
1093
1377
  */
1094
- id: string;
1378
+ payeeProfileId?: string;
1095
1379
  /**
1096
- * Canonical payee name (unique, case-insensitive)
1380
+ * User's custom category for this payee (overrides PayeeProfile category)
1097
1381
  */
1098
- canonical: string;
1382
+ customCategory?: string;
1099
1383
  /**
1100
- * Multi-language aliases
1384
+ * User's custom tags for this payee (e.g., ['favorite', 'work_meal'])
1101
1385
  */
1102
- aliases: Array<string>;
1386
+ customTags?: Array<string>;
1103
1387
  /**
1104
- * Translation key for i18n
1388
+ * Metadata for extended information (location, notes, contact info, etc.). Will merge with existing metadata.
1105
1389
  */
1106
- i18nKey?: {
1390
+ meta?: {
1107
1391
  [key: string]: unknown;
1108
- } | null;
1392
+ };
1109
1393
  /**
1110
- * Payee category
1394
+ * Enable or disable this payee. Disabled payees will not appear in autocomplete suggestions.
1395
+ */
1396
+ isActive?: boolean;
1397
+ };
1398
+
1399
+ export type CreatePayeeProfileDto = {
1400
+ /**
1401
+ * Canonical payee name (unique, case-insensitive). This is the primary identifier for the payee.
1402
+ */
1403
+ canonical: string;
1404
+ /**
1405
+ * Multi-language aliases for the payee. Used for matching user input in different languages.
1406
+ */
1407
+ aliases?: Array<string>;
1408
+ /**
1409
+ * Translation key for i18n integration (XLIFF translation system)
1410
+ */
1411
+ i18nKey?: string;
1412
+ /**
1413
+ * Payee category classification
1111
1414
  */
1112
1415
  category:
1113
1416
  | 'RESTAURANT'
@@ -1134,75 +1437,47 @@ export type PayeeProfileResponseDto = {
1134
1437
  | 'HOTEL'
1135
1438
  | 'OTHER';
1136
1439
  /**
1137
- * Sub-category
1440
+ * Sub-category for more specific classification
1138
1441
  */
1139
- subCategory?: {
1140
- [key: string]: unknown;
1141
- } | null;
1442
+ subCategory?: string;
1142
1443
  /**
1143
- * Country codes where payee operates
1444
+ * Country/region codes where the payee operates (ISO 3166-1 alpha-2)
1144
1445
  */
1145
- countries: Array<string>;
1446
+ countries?: Array<string>;
1146
1447
  /**
1147
- * Primary operating country
1448
+ * Primary operating country (ISO 3166-1 alpha-2)
1148
1449
  */
1149
- primaryCountry?: {
1150
- [key: string]: unknown;
1151
- } | null;
1450
+ primaryCountry?: string;
1152
1451
  /**
1153
- * Search keywords
1452
+ * Search keywords for fuzzy matching
1154
1453
  */
1155
- keywords: Array<string>;
1454
+ keywords?: Array<string>;
1156
1455
  /**
1157
- * Logo URL
1456
+ * Payee logo URL
1158
1457
  */
1159
- logoUrl?: {
1160
- [key: string]: unknown;
1161
- } | null;
1458
+ logoUrl?: string;
1162
1459
  /**
1163
- * Official website
1460
+ * Official website URL
1164
1461
  */
1165
- website?: {
1166
- [key: string]: unknown;
1167
- } | null;
1462
+ website?: string;
1168
1463
  /**
1169
- * Description
1464
+ * Payee description
1170
1465
  */
1171
- description?: {
1172
- [key: string]: unknown;
1173
- } | null;
1466
+ description?: string;
1174
1467
  /**
1175
- * Extended metadata
1468
+ * Extended metadata (business hours, contact info, additional details)
1176
1469
  */
1177
- meta: {
1470
+ meta?: {
1178
1471
  [key: string]: unknown;
1179
1472
  };
1180
1473
  /**
1181
- * Data source
1474
+ * Data source for this profile
1182
1475
  */
1183
- dataSource: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1184
- /**
1185
- * Verification timestamp (null if not verified)
1186
- */
1187
- verifiedAt?: {
1188
- [key: string]: unknown;
1189
- } | null;
1190
- /**
1191
- * Whether the profile is active
1192
- */
1193
- isActive: boolean;
1194
- /**
1195
- * Creation timestamp
1196
- */
1197
- createdAt: string;
1198
- /**
1199
- * Last update timestamp
1200
- */
1201
- updatedAt: string;
1476
+ dataSource?: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1202
1477
  };
1203
1478
 
1204
1479
  /**
1205
- * Payee category
1480
+ * Payee category classification
1206
1481
  */
1207
1482
  export type category =
1208
1483
  | 'RESTAURANT'
@@ -1230,10 +1505,110 @@ export type category =
1230
1505
  | 'OTHER';
1231
1506
 
1232
1507
  /**
1233
- * Data source
1508
+ * Data source for this profile
1234
1509
  */
1235
1510
  export type dataSource = 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1236
1511
 
1512
+ export type PayeeProfileResponseDto = {
1513
+ /**
1514
+ * Unique identifier (UUID)
1515
+ */
1516
+ id: string;
1517
+ /**
1518
+ * Canonical payee name (unique, case-insensitive)
1519
+ */
1520
+ canonical: string;
1521
+ /**
1522
+ * Multi-language aliases
1523
+ */
1524
+ aliases: Array<string>;
1525
+ /**
1526
+ * Translation key for i18n
1527
+ */
1528
+ i18nKey?: string | null;
1529
+ /**
1530
+ * Payee category
1531
+ */
1532
+ category:
1533
+ | 'RESTAURANT'
1534
+ | 'CAFE'
1535
+ | 'FAST_FOOD'
1536
+ | 'BAR'
1537
+ | 'SUPERMARKET'
1538
+ | 'CONVENIENCE_STORE'
1539
+ | 'SHOPPING_MALL'
1540
+ | 'ONLINE_SHOPPING'
1541
+ | 'TAXI'
1542
+ | 'RIDE_SHARING'
1543
+ | 'PUBLIC_TRANSPORT'
1544
+ | 'PARKING'
1545
+ | 'GAS_STATION'
1546
+ | 'UTILITIES'
1547
+ | 'TELECOM'
1548
+ | 'STREAMING'
1549
+ | 'HEALTHCARE'
1550
+ | 'EDUCATION'
1551
+ | 'ENTERTAINMENT'
1552
+ | 'SPORTS'
1553
+ | 'TRAVEL'
1554
+ | 'HOTEL'
1555
+ | 'OTHER';
1556
+ /**
1557
+ * Sub-category
1558
+ */
1559
+ subCategory?: string | null;
1560
+ /**
1561
+ * Country codes where payee operates
1562
+ */
1563
+ countries: Array<string>;
1564
+ /**
1565
+ * Primary operating country
1566
+ */
1567
+ primaryCountry?: string | null;
1568
+ /**
1569
+ * Search keywords
1570
+ */
1571
+ keywords: Array<string>;
1572
+ /**
1573
+ * Logo URL
1574
+ */
1575
+ logoUrl?: string | null;
1576
+ /**
1577
+ * Official website
1578
+ */
1579
+ website?: string | null;
1580
+ /**
1581
+ * Description
1582
+ */
1583
+ description?: string | null;
1584
+ /**
1585
+ * Extended metadata
1586
+ */
1587
+ meta: {
1588
+ [key: string]: unknown;
1589
+ };
1590
+ /**
1591
+ * Data source
1592
+ */
1593
+ dataSource: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1594
+ /**
1595
+ * Verification timestamp (null if not verified)
1596
+ */
1597
+ verifiedAt?: string | null;
1598
+ /**
1599
+ * Whether the profile is active
1600
+ */
1601
+ isActive: boolean;
1602
+ /**
1603
+ * Creation timestamp
1604
+ */
1605
+ createdAt: string;
1606
+ /**
1607
+ * Last update timestamp
1608
+ */
1609
+ updatedAt: string;
1610
+ };
1611
+
1237
1612
  export type PayeeProfileListResponseDto = {
1238
1613
  /**
1239
1614
  * List of payee profiles
@@ -1245,6 +1620,107 @@ export type PayeeProfileListResponseDto = {
1245
1620
  total: number;
1246
1621
  };
1247
1622
 
1623
+ export type UpdatePayeeProfileDto = {
1624
+ /**
1625
+ * Multi-language aliases for the payee. Used for matching user input in different languages.
1626
+ */
1627
+ aliases?: Array<string>;
1628
+ /**
1629
+ * Translation key for i18n integration (XLIFF translation system)
1630
+ */
1631
+ i18nKey?: string;
1632
+ /**
1633
+ * Payee category classification
1634
+ */
1635
+ category?:
1636
+ | 'RESTAURANT'
1637
+ | 'CAFE'
1638
+ | 'FAST_FOOD'
1639
+ | 'BAR'
1640
+ | 'SUPERMARKET'
1641
+ | 'CONVENIENCE_STORE'
1642
+ | 'SHOPPING_MALL'
1643
+ | 'ONLINE_SHOPPING'
1644
+ | 'TAXI'
1645
+ | 'RIDE_SHARING'
1646
+ | 'PUBLIC_TRANSPORT'
1647
+ | 'PARKING'
1648
+ | 'GAS_STATION'
1649
+ | 'UTILITIES'
1650
+ | 'TELECOM'
1651
+ | 'STREAMING'
1652
+ | 'HEALTHCARE'
1653
+ | 'EDUCATION'
1654
+ | 'ENTERTAINMENT'
1655
+ | 'SPORTS'
1656
+ | 'TRAVEL'
1657
+ | 'HOTEL'
1658
+ | 'OTHER';
1659
+ /**
1660
+ * Sub-category for more specific classification
1661
+ */
1662
+ subCategory?: string;
1663
+ /**
1664
+ * Country/region codes where the payee operates (ISO 3166-1 alpha-2)
1665
+ */
1666
+ countries?: Array<string>;
1667
+ /**
1668
+ * Primary operating country (ISO 3166-1 alpha-2)
1669
+ */
1670
+ primaryCountry?: string;
1671
+ /**
1672
+ * Search keywords for fuzzy matching
1673
+ */
1674
+ keywords?: Array<string>;
1675
+ /**
1676
+ * Payee logo URL
1677
+ */
1678
+ logoUrl?: string;
1679
+ /**
1680
+ * Official website URL
1681
+ */
1682
+ website?: string;
1683
+ /**
1684
+ * Payee description
1685
+ */
1686
+ description?: string;
1687
+ /**
1688
+ * Extended metadata (business hours, contact info, additional details)
1689
+ */
1690
+ meta?: {
1691
+ [key: string]: unknown;
1692
+ };
1693
+ /**
1694
+ * Data source for this profile
1695
+ */
1696
+ dataSource?: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1697
+ /**
1698
+ * Whether the payee profile is active (soft delete)
1699
+ */
1700
+ isActive?: boolean;
1701
+ /**
1702
+ * Verification timestamp. Set to current time to verify, or null to unverify.
1703
+ */
1704
+ verifiedAt?: string | null;
1705
+ };
1706
+
1707
+ export type CreateCommodityDto = {
1708
+ /**
1709
+ * Commodity symbol (e.g., AAPL, USD, BTC) - corresponds to Beancount currency field
1710
+ */
1711
+ symbol: string;
1712
+ /**
1713
+ * Commodity definition date (ISO 8601, required per Beancount spec). Represents when this commodity was first defined in the accounting system.
1714
+ */
1715
+ date: string;
1716
+ /**
1717
+ * Metadata (corresponds to Beancount meta field). Can contain name, assetClass, precision, note, tags, etc.
1718
+ */
1719
+ metadata?: {
1720
+ [key: string]: unknown;
1721
+ };
1722
+ };
1723
+
1248
1724
  export type CommodityResponseDto = {
1249
1725
  /**
1250
1726
  * Unique identifier
@@ -1253,9 +1729,7 @@ export type CommodityResponseDto = {
1253
1729
  /**
1254
1730
  * User ID (owner of the commodity)
1255
1731
  */
1256
- userId?: {
1257
- [key: string]: unknown;
1258
- } | null;
1732
+ userId?: string | null;
1259
1733
  /**
1260
1734
  * Commodity symbol (corresponds to Beancount currency field)
1261
1735
  */
@@ -1270,12 +1744,6 @@ export type CommodityResponseDto = {
1270
1744
  metadata: {
1271
1745
  [key: string]: unknown;
1272
1746
  };
1273
- /**
1274
- * Reference to SymbolProfile (market data integration, SaaS feature)
1275
- */
1276
- symbolProfileId?: {
1277
- [key: string]: unknown;
1278
- } | null;
1279
1747
  /**
1280
1748
  * Creation timestamp
1281
1749
  */
@@ -1297,6 +1765,101 @@ export type CommodityListResponseDto = {
1297
1765
  total: number;
1298
1766
  };
1299
1767
 
1768
+ export type UpdateCommodityDto = {
1769
+ /**
1770
+ * Commodity definition date (ISO 8601). Represents when this commodity was first defined in the accounting system.
1771
+ */
1772
+ date?: string;
1773
+ /**
1774
+ * Metadata (corresponds to Beancount meta field). Will merge with existing metadata. Can contain name, assetClass, precision, note, tags, etc.
1775
+ */
1776
+ metadata?: {
1777
+ [key: string]: unknown;
1778
+ };
1779
+ };
1780
+
1781
+ export type CreateRecurringRuleDto = {
1782
+ /**
1783
+ * Rule name (unique per user)
1784
+ */
1785
+ name: string;
1786
+ /**
1787
+ * Icon emoji
1788
+ */
1789
+ icon?: string;
1790
+ /**
1791
+ * Recurring frequency
1792
+ */
1793
+ frequency:
1794
+ | 'WEEKLY'
1795
+ | 'BIWEEKLY'
1796
+ | 'MONTHLY'
1797
+ | 'BIMONTHLY'
1798
+ | 'QUARTERLY'
1799
+ | 'YEARLY'
1800
+ | 'CUSTOM';
1801
+ /**
1802
+ * Expected amount (positive number)
1803
+ */
1804
+ expectedAmount: number;
1805
+ /**
1806
+ * Expected day of month (1-31)
1807
+ */
1808
+ expectedDay?: number;
1809
+ /**
1810
+ * Custom interval in days (required for CUSTOM frequency)
1811
+ */
1812
+ customIntervalDays?: number;
1813
+ /**
1814
+ * Currency code
1815
+ */
1816
+ currency: string;
1817
+ /**
1818
+ * Payee matching pattern (supports wildcards)
1819
+ */
1820
+ matchPayeePattern?: string;
1821
+ /**
1822
+ * Amount tolerance percentage (0-1)
1823
+ */
1824
+ matchAmountTolerance: number;
1825
+ /**
1826
+ * Default expense account for auto-create
1827
+ */
1828
+ defaultExpenseAccount?: string;
1829
+ /**
1830
+ * Default payment account for auto-create
1831
+ */
1832
+ defaultPaymentAccount?: string;
1833
+ /**
1834
+ * Default payee for auto-create
1835
+ */
1836
+ defaultPayee?: string;
1837
+ /**
1838
+ * Auto-create transaction when expected date arrives
1839
+ */
1840
+ autoCreate: boolean;
1841
+ /**
1842
+ * Rule start date (ISO format)
1843
+ */
1844
+ startDate?: string;
1845
+ /**
1846
+ * Rule end date (ISO format)
1847
+ */
1848
+ endDate?: string;
1849
+ };
1850
+
1851
+ /**
1852
+ * Recurring frequency
1853
+ */
1854
+ export type frequency =
1855
+ | 'WEEKLY'
1856
+ | 'BIWEEKLY'
1857
+ | 'MONTHLY'
1858
+ | 'BIMONTHLY'
1859
+ | 'QUARTERLY'
1860
+ | 'YEARLY'
1861
+ | 'CUSTOM';
1862
+
1300
1863
  export type RecurringRuleResponseDto = {
1301
1864
  /**
1302
1865
  * Rule ID
@@ -1406,6 +1969,28 @@ export type RecurringRuleResponseDto = {
1406
1969
  updatedAt: string;
1407
1970
  };
1408
1971
 
1972
+ export type CreateRuleFromTransactionDto = {
1973
+ /**
1974
+ * Recurring frequency
1975
+ */
1976
+ frequency:
1977
+ | 'WEEKLY'
1978
+ | 'BIWEEKLY'
1979
+ | 'MONTHLY'
1980
+ | 'BIMONTHLY'
1981
+ | 'QUARTERLY'
1982
+ | 'YEARLY'
1983
+ | 'CUSTOM';
1984
+ /**
1985
+ * Optional name override (default: transaction payee)
1986
+ */
1987
+ name?: string;
1988
+ /**
1989
+ * Optional icon emoji
1990
+ */
1991
+ icon?: string;
1992
+ };
1993
+
1409
1994
  export type RecurringRuleWithStatsResponseDto = {
1410
1995
  /**
1411
1996
  * Rule ID
@@ -1561,6 +2146,76 @@ export type RecurringRuleWithStatsResponseDto = {
1561
2146
  upcomingCount: number;
1562
2147
  };
1563
2148
 
2149
+ export type UpdateRecurringRuleDto = {
2150
+ /**
2151
+ * Rule name
2152
+ */
2153
+ name?: string;
2154
+ /**
2155
+ * Icon emoji
2156
+ */
2157
+ icon?: string;
2158
+ /**
2159
+ * Recurring frequency
2160
+ */
2161
+ frequency?:
2162
+ | 'WEEKLY'
2163
+ | 'BIWEEKLY'
2164
+ | 'MONTHLY'
2165
+ | 'BIMONTHLY'
2166
+ | 'QUARTERLY'
2167
+ | 'YEARLY'
2168
+ | 'CUSTOM';
2169
+ /**
2170
+ * Expected amount
2171
+ */
2172
+ expectedAmount?: number;
2173
+ /**
2174
+ * Expected day of month (1-31)
2175
+ */
2176
+ expectedDay?: number;
2177
+ /**
2178
+ * Custom interval in days
2179
+ */
2180
+ customIntervalDays?: number;
2181
+ /**
2182
+ * Currency code
2183
+ */
2184
+ currency?: string;
2185
+ /**
2186
+ * Payee matching pattern
2187
+ */
2188
+ matchPayeePattern?: string;
2189
+ /**
2190
+ * Amount tolerance percentage (0-1)
2191
+ */
2192
+ matchAmountTolerance?: number;
2193
+ /**
2194
+ * Default expense account
2195
+ */
2196
+ defaultExpenseAccount?: string;
2197
+ /**
2198
+ * Default payment account
2199
+ */
2200
+ defaultPaymentAccount?: string;
2201
+ /**
2202
+ * Default payee
2203
+ */
2204
+ defaultPayee?: string;
2205
+ /**
2206
+ * Auto-create transaction
2207
+ */
2208
+ autoCreate?: boolean;
2209
+ /**
2210
+ * Rule active status
2211
+ */
2212
+ isActive?: boolean;
2213
+ /**
2214
+ * Rule end date (ISO format)
2215
+ */
2216
+ endDate?: string;
2217
+ };
2218
+
1564
2219
  export type ExpectedTransactionRuleDto = {
1565
2220
  /**
1566
2221
  * Rule name
@@ -1651,6 +2306,36 @@ export type ExpectedTransactionListResponseDto = {
1651
2306
  total: number;
1652
2307
  };
1653
2308
 
2309
+ export type ConfirmMatchDto = {
2310
+ /**
2311
+ * Transaction ID to match with
2312
+ */
2313
+ transactionId: string;
2314
+ };
2315
+
2316
+ export type EnterNowDto = {
2317
+ /**
2318
+ * Override expense account (uses rule default if not provided)
2319
+ */
2320
+ expenseAccount?: string;
2321
+ /**
2322
+ * Override payment account (uses rule default if not provided)
2323
+ */
2324
+ paymentAccount?: string;
2325
+ /**
2326
+ * Override amount (uses expected amount if not provided)
2327
+ */
2328
+ amount?: number;
2329
+ /**
2330
+ * Override payee (uses rule default if not provided)
2331
+ */
2332
+ payee?: string;
2333
+ /**
2334
+ * Optional narration
2335
+ */
2336
+ narration?: string;
2337
+ };
2338
+
1654
2339
  export type ForecastItemDto = {
1655
2340
  /**
1656
2341
  * Rule name
@@ -1671,9 +2356,7 @@ export type ForecastItemDto = {
1671
2356
  /**
1672
2357
  * Rule icon emoji
1673
2358
  */
1674
- icon: {
1675
- [key: string]: unknown;
1676
- } | null;
2359
+ icon: string | null;
1677
2360
  /**
1678
2361
  * Currency code
1679
2362
  */
@@ -1734,6 +2417,53 @@ export type ForecastResponseDto = {
1734
2417
  periodEnd: string;
1735
2418
  };
1736
2419
 
2420
+ export type CreateTransactionRuleDto = {
2421
+ name: string;
2422
+ description?: string;
2423
+ narrationKeywords?: Array<unknown[]>;
2424
+ payeeKeywords?: Array<unknown[]>;
2425
+ categoryKeywords?: Array<unknown[]>;
2426
+ /**
2427
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2428
+ */
2429
+ methodKeywords?: Array<unknown[]>;
2430
+ /**
2431
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2432
+ */
2433
+ categoryAccount?: string;
2434
+ matchLogic: 'OR' | 'AND';
2435
+ /**
2436
+ * Minimum transaction amount (inclusive)
2437
+ */
2438
+ amountMin?: number;
2439
+ /**
2440
+ * Maximum transaction amount (inclusive)
2441
+ */
2442
+ amountMax?: number;
2443
+ priority: number;
2444
+ additionalTags?: Array<unknown[]>;
2445
+ additionalMetadata?: {
2446
+ [key: string]: unknown;
2447
+ };
2448
+ /**
2449
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2450
+ */
2451
+ upsertByPayee?: boolean;
2452
+ };
2453
+
2454
+ export type matchLogic = 'OR' | 'AND';
2455
+
2456
+ export type AmountRangeDto = {
2457
+ /**
2458
+ * Minimum amount
2459
+ */
2460
+ min?: number;
2461
+ /**
2462
+ * Maximum amount
2463
+ */
2464
+ max?: number;
2465
+ };
2466
+
1737
2467
  export type TransactionRuleResponseDto = {
1738
2468
  /**
1739
2469
  * Rule ID
@@ -1774,9 +2504,7 @@ export type TransactionRuleResponseDto = {
1774
2504
  /**
1775
2505
  * Amount range for matching
1776
2506
  */
1777
- amountRange?: {
1778
- [key: string]: unknown;
1779
- };
2507
+ amountRange?: AmountRangeDto;
1780
2508
  /**
1781
2509
  * Rule priority (0-1000, higher = first match)
1782
2510
  */
@@ -1788,7 +2516,7 @@ export type TransactionRuleResponseDto = {
1788
2516
  /**
1789
2517
  * Learning source: NLP, REVIEW_CENTER, or null for manual
1790
2518
  */
1791
- learningSource?: 'NLP' | 'REVIEW_CENTER';
2519
+ learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
1792
2520
  /**
1793
2521
  * Whether auto-apply is enabled for this rule
1794
2522
  */
@@ -1805,7 +2533,7 @@ export type TransactionRuleResponseDto = {
1805
2533
  * Additional metadata
1806
2534
  */
1807
2535
  additionalMetadata?: {
1808
- [key: string]: unknown;
2536
+ [key: string]: string;
1809
2537
  };
1810
2538
  /**
1811
2539
  * Created timestamp
@@ -1817,11 +2545,6 @@ export type TransactionRuleResponseDto = {
1817
2545
  updatedAt: string;
1818
2546
  };
1819
2547
 
1820
- /**
1821
- * Keyword matching logic
1822
- */
1823
- export type matchLogic = 'OR' | 'AND';
1824
-
1825
2548
  /**
1826
2549
  * Learning source: NLP, REVIEW_CENTER, or null for manual
1827
2550
  */
@@ -1892,6 +2615,44 @@ export type ValidateRuleResponseDto = {
1892
2615
  warnings: Array<unknown[]>;
1893
2616
  };
1894
2617
 
2618
+ export type BulkCreateRulesDto = {
2619
+ /**
2620
+ * Array of rules to import
2621
+ */
2622
+ rules: Array<unknown[]>;
2623
+ /**
2624
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2625
+ */
2626
+ conflictStrategy: 'replace' | 'skip';
2627
+ };
2628
+
2629
+ /**
2630
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2631
+ */
2632
+ export type conflictStrategy = 'replace' | 'skip';
2633
+
2634
+ export type BulkCreateRulesResponseDto = {
2635
+ /**
2636
+ * Number of successfully created rules
2637
+ */
2638
+ successCount: number;
2639
+ /**
2640
+ * Number of failed rules
2641
+ */
2642
+ failureCount: number;
2643
+ /**
2644
+ * Error details for failed rules
2645
+ */
2646
+ errors: Array<{
2647
+ index?: number;
2648
+ message?: string;
2649
+ }>;
2650
+ /**
2651
+ * IDs of successfully created rules
2652
+ */
2653
+ createdRuleIds: Array<string>;
2654
+ };
2655
+
1895
2656
  export type ExportRulesResponseDto = {
1896
2657
  /**
1897
2658
  * Export timestamp
@@ -1943,11 +2704,45 @@ export type RuleStatisticsResponseDto = {
1943
2704
  }>;
1944
2705
  };
1945
2706
 
1946
- /**
1947
- * Statistics time period
1948
- */
1949
- export type period = '7d' | '30d' | '90d';
1950
-
2707
+ /**
2708
+ * Statistics time period
2709
+ */
2710
+ export type period = '7d' | '30d' | '90d';
2711
+
2712
+ export type UpdateTransactionRuleDto = {
2713
+ name?: string;
2714
+ description?: string;
2715
+ narrationKeywords?: Array<unknown[]>;
2716
+ payeeKeywords?: Array<unknown[]>;
2717
+ categoryKeywords?: Array<unknown[]>;
2718
+ /**
2719
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2720
+ */
2721
+ methodKeywords?: Array<unknown[]>;
2722
+ /**
2723
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2724
+ */
2725
+ categoryAccount?: string;
2726
+ matchLogic?: 'OR' | 'AND';
2727
+ /**
2728
+ * Minimum transaction amount (inclusive)
2729
+ */
2730
+ amountMin?: number;
2731
+ /**
2732
+ * Maximum transaction amount (inclusive)
2733
+ */
2734
+ amountMax?: number;
2735
+ priority?: number;
2736
+ /**
2737
+ * Enable or disable the rule
2738
+ */
2739
+ enabled?: boolean;
2740
+ additionalTags?: Array<unknown[]>;
2741
+ additionalMetadata?: {
2742
+ [key: string]: unknown;
2743
+ };
2744
+ };
2745
+
1951
2746
  export type TestRuleDto = {
1952
2747
  narration: string;
1953
2748
  payee?: string;
@@ -2088,6 +2883,13 @@ export type colorScheme = 'DARK' | 'LIGHT';
2088
2883
  */
2089
2884
  export type viewMode = 'DEFAULT' | 'ZEN';
2090
2885
 
2886
+ export type UpdatePropertyDto = {
2887
+ /**
2888
+ * Property value
2889
+ */
2890
+ value: string;
2891
+ };
2892
+
2091
2893
  export type FileImportDto = {
2092
2894
  /**
2093
2895
  * Bill file to import (CSV, PDF, OFX, etc.)
@@ -2303,7 +3105,8 @@ export type ImporterConfigDto = {
2303
3105
  | 'cmbc-credit'
2304
3106
  | 'icbc'
2305
3107
  | 'icbc-credit'
2306
- | 'hsbc-hk';
3108
+ | 'hsbc-hk-credit'
3109
+ | 'hsbc-hk-debit';
2307
3110
  /**
2308
3111
  * Configuration version (semver)
2309
3112
  */
@@ -2343,7 +3146,135 @@ export type importerId =
2343
3146
  | 'cmbc-credit'
2344
3147
  | 'icbc'
2345
3148
  | 'icbc-credit'
2346
- | 'hsbc-hk';
3149
+ | 'hsbc-hk-credit'
3150
+ | 'hsbc-hk-debit';
3151
+
3152
+ export type UpdateMapperDefaultsDto = {
3153
+ /**
3154
+ * Source account for transactions (Beancount format)
3155
+ */
3156
+ sourceAccount?: string;
3157
+ /**
3158
+ * Default currency (ISO 4217 code)
3159
+ */
3160
+ currency?: string;
3161
+ /**
3162
+ * Default expense account (optional)
3163
+ */
3164
+ expenseAccount?: string;
3165
+ /**
3166
+ * Default income account (optional)
3167
+ */
3168
+ incomeAccount?: string;
3169
+ /**
3170
+ * Payment method to source account mapping. Maps payment method keywords to Beancount account paths. Used by Alipay/WeChat importers to determine sourceAccount based on payment method (e.g., HuaBei, CreditCard).
3171
+ */
3172
+ methodAccountMapping?: {
3173
+ [key: string]: unknown;
3174
+ };
3175
+ };
3176
+
3177
+ export type UpdateConfigDataDto = {
3178
+ /**
3179
+ * Mapper defaults configuration
3180
+ */
3181
+ defaults?: UpdateMapperDefaultsDto;
3182
+ };
3183
+
3184
+ export type UpdateImporterConfigDto = {
3185
+ /**
3186
+ * Configuration data (v1 schema)
3187
+ */
3188
+ data?: UpdateConfigDataDto;
3189
+ };
3190
+
3191
+ export type CreatePlatformDto = {
3192
+ /**
3193
+ * Platform name
3194
+ */
3195
+ name: string;
3196
+ /**
3197
+ * Platform canonical identifier (lowercase, kebab-case)
3198
+ */
3199
+ canonical: string;
3200
+ /**
3201
+ * Platform aliases (multi-language names for lookup)
3202
+ */
3203
+ aliases: Array<string>;
3204
+ /**
3205
+ * Platform URL
3206
+ */
3207
+ url: string;
3208
+ /**
3209
+ * Platform type
3210
+ */
3211
+ type:
3212
+ | 'BANK'
3213
+ | 'BROKERAGE'
3214
+ | 'CRYPTO_EXCHANGE'
3215
+ | 'PAYMENT'
3216
+ | 'INVESTMENT'
3217
+ | 'INSURANCE'
3218
+ | 'OTHER';
3219
+ /**
3220
+ * Platform logo URL
3221
+ */
3222
+ logoUrl?: string;
3223
+ /**
3224
+ * Whether the platform is active
3225
+ */
3226
+ isActive?: boolean;
3227
+ };
3228
+
3229
+ /**
3230
+ * Platform type
3231
+ */
3232
+ export type type3 =
3233
+ | 'BANK'
3234
+ | 'BROKERAGE'
3235
+ | 'CRYPTO_EXCHANGE'
3236
+ | 'PAYMENT'
3237
+ | 'INVESTMENT'
3238
+ | 'INSURANCE'
3239
+ | 'OTHER';
3240
+
3241
+ export type UpdatePlatformDto = {
3242
+ /**
3243
+ * Platform name
3244
+ */
3245
+ name?: string;
3246
+ /**
3247
+ * Platform canonical identifier (lowercase, kebab-case)
3248
+ */
3249
+ canonical?: string;
3250
+ /**
3251
+ * Platform aliases (multi-language names for lookup)
3252
+ */
3253
+ aliases?: Array<string>;
3254
+ /**
3255
+ * Platform URL
3256
+ */
3257
+ url?: string;
3258
+ /**
3259
+ * Platform type
3260
+ */
3261
+ type?:
3262
+ | 'BANK'
3263
+ | 'BROKERAGE'
3264
+ | 'CRYPTO_EXCHANGE'
3265
+ | 'PAYMENT'
3266
+ | 'INVESTMENT'
3267
+ | 'INSURANCE'
3268
+ | 'OTHER';
3269
+ /**
3270
+ * Platform logo URL
3271
+ */
3272
+ logoUrl?: string;
3273
+ /**
3274
+ * Whether the platform is active
3275
+ */
3276
+ isActive?: boolean;
3277
+ };
2347
3278
 
2348
3279
  export type ProviderSyncConfigDto = {
2349
3280
  /**
@@ -2421,6 +3352,8 @@ export type SupportedProvidersResponseDto = {
2421
3352
  providers: Array<string>;
2422
3353
  };
2423
3354
 
3355
+ export type ParserTelemetryReportDto = unknown;
3356
+
2424
3357
  export type ProcessNlpDto = {
2425
3358
  /**
2426
3359
  * Natural language text describing a transaction (Chinese)
@@ -2430,6 +3363,12 @@ export type ProcessNlpDto = {
2430
3363
  * Session ID for multi-turn conversation (auto-generated if not provided)
2431
3364
  */
2432
3365
  sessionId?: string;
3366
+ /**
3367
+ * Parsed data from previous NLP response for session recovery. Send back the parsedData received in confirm_payee/confirm responses.
3368
+ */
3369
+ parsedData?: {
3370
+ [key: string]: unknown;
3371
+ };
2433
3372
  };
2434
3373
 
2435
3374
  export type NlpTransactionInfoDto = {
@@ -2960,7 +3899,7 @@ export type status4 = 'success' | 'pending' | 'error';
2960
3899
  /**
2961
3900
  * Action taken or requested
2962
3901
  */
2963
- export type action =
3902
+ export type action2 =
2964
3903
  | 'created'
2965
3904
  | 'ask'
2966
3905
  | 'confirm'
@@ -3492,7 +4431,7 @@ export type AccountControllerCreateData = {
3492
4431
  /**
3493
4432
  * Region code for tenant context
3494
4433
  */
3495
- region: 'cn' | 'us' | 'eu-core' | 'de';
4434
+ region: 'cn' | 'us' | 'de' | 'gb';
3496
4435
  requestBody: CreateAccountDto;
3497
4436
  };
3498
4437
 
@@ -3514,7 +4453,7 @@ export type AccountControllerFindAllData = {
3514
4453
  /**
3515
4454
  * Region code for tenant context
3516
4455
  */
3517
- region: 'cn' | 'us' | 'eu-core' | 'de';
4456
+ region: 'cn' | 'us' | 'de' | 'gb';
3518
4457
  /**
3519
4458
  * Search term for path or i18nKey
3520
4459
  */
@@ -3539,7 +4478,7 @@ export type AccountControllerFindOneData = {
3539
4478
  /**
3540
4479
  * Region code for tenant context
3541
4480
  */
3542
- region: 'cn' | 'us' | 'eu-core' | 'de';
4481
+ region: 'cn' | 'us' | 'de' | 'gb';
3543
4482
  };
3544
4483
 
3545
4484
  export type AccountControllerFindOneResponse = AccountResponseDto;
@@ -3552,7 +4491,7 @@ export type AccountControllerUpdateData = {
3552
4491
  /**
3553
4492
  * Region code for tenant context
3554
4493
  */
3555
- region: 'cn' | 'us' | 'eu-core' | 'de';
4494
+ region: 'cn' | 'us' | 'de' | 'gb';
3556
4495
  requestBody: UpdateAccountDto;
3557
4496
  };
3558
4497
 
@@ -3566,7 +4505,7 @@ export type AccountControllerDeleteData = {
3566
4505
  /**
3567
4506
  * Region code for tenant context
3568
4507
  */
3569
- region: 'cn' | 'us' | 'eu-core' | 'de';
4508
+ region: 'cn' | 'us' | 'de' | 'gb';
3570
4509
  };
3571
4510
 
3572
4511
  export type AccountControllerDeleteResponse = void;
@@ -3579,7 +4518,7 @@ export type AccountControllerCloseData = {
3579
4518
  /**
3580
4519
  * Region code for tenant context
3581
4520
  */
3582
- region: 'cn' | 'us' | 'eu-core' | 'de';
4521
+ region: 'cn' | 'us' | 'de' | 'gb';
3583
4522
  requestBody: CloseAccountDto;
3584
4523
  };
3585
4524
 
@@ -3593,17 +4532,59 @@ export type AccountControllerReopenData = {
3593
4532
  /**
3594
4533
  * Region code for tenant context
3595
4534
  */
3596
- region: 'cn' | 'us' | 'eu-core' | 'de';
4535
+ region: 'cn' | 'us' | 'de' | 'gb';
3597
4536
  requestBody: ReopenAccountDto;
3598
4537
  };
3599
4538
 
3600
4539
  export type AccountControllerReopenResponse = AccountResponseDto;
3601
4540
 
4541
+ export type AccountStandardsControllerGetTemplatesData = {
4542
+ /**
4543
+ * Region code (cn, us, de)
4544
+ */
4545
+ region: 'cn' | 'us' | 'de' | 'gb';
4546
+ /**
4547
+ * Search term for path or description
4548
+ */
4549
+ search?: string;
4550
+ /**
4551
+ * Filter by account type
4552
+ */
4553
+ type?: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
4554
+ };
4555
+
4556
+ export type AccountStandardsControllerGetTemplatesResponse =
4557
+ AccountStandardListResponseDto;
4558
+
4559
+ export type AccountStandardsControllerGetTemplateMetadataData = {
4560
+ /**
4561
+ * Account path to check
4562
+ */
4563
+ path: string;
4564
+ /**
4565
+ * Region code for tenant context
4566
+ */
4567
+ region: 'cn' | 'us' | 'de' | 'gb';
4568
+ };
4569
+
4570
+ export type AccountStandardsControllerGetTemplateMetadataResponse =
4571
+ TemplateMetadataResponseDto;
4572
+
4573
+ export type AccountStandardsControllerGetRegionsData = {
4574
+ /**
4575
+ * Region code for tenant context
4576
+ */
4577
+ region: 'cn' | 'us' | 'de' | 'gb';
4578
+ };
4579
+
4580
+ export type AccountStandardsControllerGetRegionsResponse =
4581
+ RegionsMetadataResponseDto;
4582
+
3602
4583
  export type TransactionControllerCreateData = {
3603
4584
  /**
3604
4585
  * Region code for tenant context
3605
4586
  */
3606
- region: 'cn' | 'us' | 'eu-core' | 'de';
4587
+ region: 'cn' | 'us' | 'de' | 'gb';
3607
4588
  /**
3608
4589
  * Transaction data with postings
3609
4590
  */
@@ -3636,7 +4617,7 @@ export type TransactionControllerListData = {
3636
4617
  /**
3637
4618
  * Region code for tenant context
3638
4619
  */
3639
- region: 'cn' | 'us' | 'eu-core' | 'de';
4620
+ region: 'cn' | 'us' | 'de' | 'gb';
3640
4621
  /**
3641
4622
  * Search in narration and payee fields (max 200 chars)
3642
4623
  */
@@ -3649,14 +4630,38 @@ export type TransactionControllerListData = {
3649
4630
 
3650
4631
  export type TransactionControllerListResponse = TransactionListResponseDto;
3651
4632
 
3652
- export type TransactionControllerData = {
4633
+ export type TransactionControllerCreateBatchData = {
4634
+ /**
4635
+ * Region code for tenant context
4636
+ */
4637
+ region: 'cn' | 'us' | 'de' | 'gb';
4638
+ requestBody: BatchCreateTransactionDto;
4639
+ };
4640
+
4641
+ export type TransactionControllerCreateBatchResponse =
4642
+ BatchTransactionResponseDto;
4643
+
4644
+ export type TransactionControllerSuggestTagsData = {
4645
+ /**
4646
+ * Max suggestions (1-100, default 10)
4647
+ */
4648
+ limit?: number;
4649
+ /**
4650
+ * Prefix match, case-insensitive (max 50 chars)
4651
+ */
4652
+ q?: string;
3653
4653
  /**
3654
4654
  * Region code for tenant context
3655
4655
  */
3656
- region: 'cn' | 'us' | 'eu-core' | 'de';
4656
+ region: 'cn' | 'us' | 'de' | 'gb';
4657
+ /**
4658
+ * usage (default) or name
4659
+ */
4660
+ sort?: 'usage' | 'name';
3657
4661
  };
3658
4662
 
3659
- export type TransactionControllerResponse = unknown;
4663
+ export type TransactionControllerSuggestTagsResponse =
4664
+ TagSuggestionsResponseDto;
3660
4665
 
3661
4666
  export type TransactionControllerGetDetailData = {
3662
4667
  /**
@@ -3666,7 +4671,7 @@ export type TransactionControllerGetDetailData = {
3666
4671
  /**
3667
4672
  * Region code for tenant context
3668
4673
  */
3669
- region: 'cn' | 'us' | 'eu-core' | 'de';
4674
+ region: 'cn' | 'us' | 'de' | 'gb';
3670
4675
  };
3671
4676
 
3672
4677
  export type TransactionControllerGetDetailResponse = TransactionDetailDto;
@@ -3679,7 +4684,7 @@ export type TransactionControllerUpdateData = {
3679
4684
  /**
3680
4685
  * Region code for tenant context
3681
4686
  */
3682
- region: 'cn' | 'us' | 'eu-core' | 'de';
4687
+ region: 'cn' | 'us' | 'de' | 'gb';
3683
4688
  /**
3684
4689
  * Fields to update (all optional)
3685
4690
  */
@@ -3688,43 +4693,18 @@ export type TransactionControllerUpdateData = {
3688
4693
 
3689
4694
  export type TransactionControllerUpdateResponse = TransactionDetailDto;
3690
4695
 
3691
- export type TransactionController1Data = {
3692
- /**
3693
- * Region code for tenant context
3694
- */
3695
- region: 'cn' | 'us' | 'eu-core' | 'de';
3696
- };
3697
-
3698
- export type TransactionController1Response = void;
3699
-
3700
- export type AccountStandardsControllerGetTemplatesData = {
3701
- /**
3702
- * Region code (cn, us, eu-core, de)
3703
- */
3704
- region: 'cn' | 'us' | 'eu-core' | 'de';
3705
- /**
3706
- * Search term for path or description
3707
- */
3708
- search?: string;
4696
+ export type TransactionControllerDeleteData = {
3709
4697
  /**
3710
- * Filter by account type
4698
+ * Transaction ID
3711
4699
  */
3712
- type?: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
3713
- };
3714
-
3715
- export type AccountStandardsControllerGetTemplatesResponse =
3716
- AccountStandardListResponseDto;
3717
-
3718
- export type AccountStandardsControllerGetRegionsData = {
4700
+ id: string;
3719
4701
  /**
3720
- * Region code (cn, us, eu-core, de)
4702
+ * Region code for tenant context
3721
4703
  */
3722
- region: 'cn' | 'us' | 'eu-core' | 'de';
4704
+ region: 'cn' | 'us' | 'de' | 'gb';
3723
4705
  };
3724
4706
 
3725
- export type AccountStandardsControllerGetRegionsResponse = {
3726
- regions?: Array<string>;
3727
- };
4707
+ export type TransactionControllerDeleteResponse = void;
3728
4708
 
3729
4709
  export type BalanceControllerGetBalanceData = {
3730
4710
  /**
@@ -3740,18 +4720,18 @@ export type BalanceControllerGetBalanceData = {
3740
4720
  */
3741
4721
  date?: string;
3742
4722
  /**
3743
- * Region code (cn, us, eu-core, de)
4723
+ * Region code for tenant context
3744
4724
  */
3745
- region: 'cn' | 'us' | 'eu-core' | 'de';
4725
+ region: 'cn' | 'us' | 'de' | 'gb';
3746
4726
  };
3747
4727
 
3748
4728
  export type BalanceControllerGetBalanceResponse = BalanceResponseDto;
3749
4729
 
3750
4730
  export type BalanceControllerGetMultiCurrencyBalanceData = {
3751
4731
  /**
3752
- * Region code (cn, us, eu-core, de)
4732
+ * Region code for tenant context
3753
4733
  */
3754
- region: 'cn' | 'us' | 'eu-core' | 'de';
4734
+ region: 'cn' | 'us' | 'de' | 'gb';
3755
4735
  };
3756
4736
 
3757
4737
  export type BalanceControllerGetMultiCurrencyBalanceResponse =
@@ -3771,9 +4751,9 @@ export type ReviewControllerFindAllData = {
3771
4751
  */
3772
4752
  page?: number;
3773
4753
  /**
3774
- * Region code (cn, us, eu-core, de)
4754
+ * Region code for tenant context
3775
4755
  */
3776
- region: 'cn' | 'us' | 'eu-core' | 'de';
4756
+ region: 'cn' | 'us' | 'de' | 'gb';
3777
4757
  /**
3778
4758
  * Sort order
3779
4759
  */
@@ -3793,9 +4773,9 @@ export type ReviewControllerFindAllResponse = ReviewListResponseDto;
3793
4773
 
3794
4774
  export type ReviewControllerGetStatsData = {
3795
4775
  /**
3796
- * Region code (cn, us, eu-core, de)
4776
+ * Region code for tenant context
3797
4777
  */
3798
- region: 'cn' | 'us' | 'eu-core' | 'de';
4778
+ region: 'cn' | 'us' | 'de' | 'gb';
3799
4779
  };
3800
4780
 
3801
4781
  export type ReviewControllerGetStatsResponse = ReviewStatsDto;
@@ -3806,48 +4786,58 @@ export type ReviewControllerFindOneData = {
3806
4786
  */
3807
4787
  id: string;
3808
4788
  /**
3809
- * Region code (cn, us, eu-core, de)
4789
+ * Region code for tenant context
3810
4790
  */
3811
- region: 'cn' | 'us' | 'eu-core' | 'de';
4791
+ region: 'cn' | 'us' | 'de' | 'gb';
3812
4792
  };
3813
4793
 
3814
4794
  export type ReviewControllerFindOneResponse = ReviewDetailDto;
3815
4795
 
3816
- export type ReviewControllerData = {
4796
+ export type ReviewControllerResolveData = {
4797
+ /**
4798
+ * Review ID
4799
+ */
4800
+ id: string;
3817
4801
  /**
3818
- * Region code (cn, us, eu-core, de)
4802
+ * Region code for tenant context
3819
4803
  */
3820
- region: 'cn' | 'us' | 'eu-core' | 'de';
4804
+ region: 'cn' | 'us' | 'de' | 'gb';
4805
+ requestBody: ResolveReviewDto;
3821
4806
  };
3822
4807
 
3823
- export type ReviewControllerResponse = unknown;
4808
+ export type ReviewControllerResolveResponse = ResolveResultDto;
3824
4809
 
3825
- export type ReviewController1Data = {
4810
+ export type ReviewControllerUndoData = {
4811
+ /**
4812
+ * Review ID
4813
+ */
4814
+ id: string;
3826
4815
  /**
3827
- * Region code (cn, us, eu-core, de)
4816
+ * Region code for tenant context
3828
4817
  */
3829
- region: 'cn' | 'us' | 'eu-core' | 'de';
4818
+ region: 'cn' | 'us' | 'de' | 'gb';
3830
4819
  };
3831
4820
 
3832
- export type ReviewController1Response = unknown;
4821
+ export type ReviewControllerUndoResponse = UndoResultDto;
3833
4822
 
3834
- export type ReviewController2Data = {
4823
+ export type ReviewControllerBatchResolveData = {
3835
4824
  /**
3836
- * Region code (cn, us, eu-core, de)
4825
+ * Region code for tenant context
4826
+ */
4827
+ region: 'cn' | 'us' | 'de' | 'gb';
4828
+ /**
4829
+ * Batch resolution request containing review IDs and action
3837
4830
  */
3838
- region: 'cn' | 'us' | 'eu-core' | 'de';
4831
+ requestBody: BatchResolveDto;
3839
4832
  };
3840
4833
 
3841
- export type ReviewController2Response = unknown;
4834
+ export type ReviewControllerBatchResolveResponse = BatchResolveResultDto;
3842
4835
 
3843
- export type PayeeControllerData = {
3844
- /**
3845
- * Region code (cn, us, eu-core, de)
3846
- */
3847
- region: 'cn' | 'us' | 'eu-core' | 'de';
4836
+ export type PayeeControllerCreateData = {
4837
+ requestBody: CreatePayeeDto;
3848
4838
  };
3849
4839
 
3850
- export type PayeeControllerResponse = unknown;
4840
+ export type PayeeControllerCreateResponse = PayeeResponseDto;
3851
4841
 
3852
4842
  export type PayeeControllerFindAllData = {
3853
4843
  /**
@@ -3862,10 +4852,6 @@ export type PayeeControllerFindAllData = {
3862
4852
  * Filter by exact payee name match
3863
4853
  */
3864
4854
  payee?: string;
3865
- /**
3866
- * Region code (cn, us, eu-core, de)
3867
- */
3868
- region: 'cn' | 'us' | 'eu-core' | 'de';
3869
4855
  /**
3870
4856
  * Search term for payee name (partial match, case-insensitive). Useful for autocomplete.
3871
4857
  */
@@ -3887,10 +4873,6 @@ export type PayeeControllerAutocompleteData = {
3887
4873
  * Search query for payee name (partial match, case-insensitive)
3888
4874
  */
3889
4875
  q: string;
3890
- /**
3891
- * Region code (cn, us, eu-core, de)
3892
- */
3893
- region: 'cn' | 'us' | 'eu-core' | 'de';
3894
4876
  };
3895
4877
 
3896
4878
  export type PayeeControllerAutocompleteResponse = PayeeAutocompleteResponseDto;
@@ -3900,10 +4882,6 @@ export type PayeeControllerGetTopPayeesData = {
3900
4882
  * Maximum number of results
3901
4883
  */
3902
4884
  limit?: number;
3903
- /**
3904
- * Region code (cn, us, eu-core, de)
3905
- */
3906
- region: 'cn' | 'us' | 'eu-core' | 'de';
3907
4885
  };
3908
4886
 
3909
4887
  export type PayeeControllerGetTopPayeesResponse = Array<PayeeStatsResponseDto>;
@@ -3913,40 +4891,34 @@ export type PayeeControllerFindOneData = {
3913
4891
  * Payee UUID
3914
4892
  */
3915
4893
  id: string;
3916
- /**
3917
- * Region code (cn, us, eu-core, de)
3918
- */
3919
- region: 'cn' | 'us' | 'eu-core' | 'de';
3920
4894
  };
3921
4895
 
3922
4896
  export type PayeeControllerFindOneResponse = PayeeResponseDto;
3923
4897
 
3924
- export type PayeeController1Data = {
4898
+ export type PayeeControllerUpdateData = {
3925
4899
  /**
3926
- * Region code (cn, us, eu-core, de)
4900
+ * Payee UUID
3927
4901
  */
3928
- region: 'cn' | 'us' | 'eu-core' | 'de';
4902
+ id: string;
4903
+ requestBody: UpdatePayeeDto;
3929
4904
  };
3930
4905
 
3931
- export type PayeeController1Response = unknown;
4906
+ export type PayeeControllerUpdateResponse = PayeeResponseDto;
3932
4907
 
3933
- export type PayeeController2Data = {
4908
+ export type PayeeControllerDeleteData = {
3934
4909
  /**
3935
- * Region code (cn, us, eu-core, de)
4910
+ * Payee UUID
3936
4911
  */
3937
- region: 'cn' | 'us' | 'eu-core' | 'de';
4912
+ id: string;
3938
4913
  };
3939
4914
 
3940
- export type PayeeController2Response = void;
4915
+ export type PayeeControllerDeleteResponse = void;
3941
4916
 
3942
- export type PayeeProfileAdminControllerData = {
3943
- /**
3944
- * Region code (cn, us, eu-core, de)
3945
- */
3946
- region: 'cn' | 'us' | 'eu-core' | 'de';
4917
+ export type PayeeProfileAdminControllerCreateData = {
4918
+ requestBody: CreatePayeeProfileDto;
3947
4919
  };
3948
4920
 
3949
- export type PayeeProfileAdminControllerResponse = unknown;
4921
+ export type PayeeProfileAdminControllerCreateResponse = PayeeProfileResponseDto;
3950
4922
 
3951
4923
  export type PayeeProfileAdminControllerFindAllData = {
3952
4924
  /**
@@ -3988,10 +4960,6 @@ export type PayeeProfileAdminControllerFindAllData = {
3988
4960
  * Filter by active status (default: true - show only active)
3989
4961
  */
3990
4962
  isActive?: boolean;
3991
- /**
3992
- * Region code (cn, us, eu-core, de)
3993
- */
3994
- region: 'cn' | 'us' | 'eu-core' | 'de';
3995
4963
  /**
3996
4964
  * Search term for canonical name and aliases (case-insensitive)
3997
4965
  */
@@ -4010,65 +4978,64 @@ export type PayeeProfileAdminControllerFindOneData = {
4010
4978
  * Payee profile ID (UUID)
4011
4979
  */
4012
4980
  id: string;
4013
- /**
4014
- * Region code (cn, us, eu-core, de)
4015
- */
4016
- region: 'cn' | 'us' | 'eu-core' | 'de';
4017
4981
  };
4018
4982
 
4019
4983
  export type PayeeProfileAdminControllerFindOneResponse =
4020
4984
  PayeeProfileResponseDto;
4021
4985
 
4022
- export type PayeeProfileAdminController1Data = {
4986
+ export type PayeeProfileAdminControllerUpdateData = {
4023
4987
  /**
4024
- * Region code (cn, us, eu-core, de)
4988
+ * Payee profile ID (UUID)
4025
4989
  */
4026
- region: 'cn' | 'us' | 'eu-core' | 'de';
4990
+ id: string;
4991
+ requestBody: UpdatePayeeProfileDto;
4027
4992
  };
4028
4993
 
4029
- export type PayeeProfileAdminController1Response = unknown;
4994
+ export type PayeeProfileAdminControllerUpdateResponse = PayeeProfileResponseDto;
4030
4995
 
4031
- export type PayeeProfileAdminController2Data = {
4996
+ export type PayeeProfileAdminControllerDeleteData = {
4032
4997
  /**
4033
- * Region code (cn, us, eu-core, de)
4998
+ * Payee profile ID (UUID)
4034
4999
  */
4035
- region: 'cn' | 'us' | 'eu-core' | 'de';
5000
+ id: string;
4036
5001
  };
4037
5002
 
4038
- export type PayeeProfileAdminController2Response = void;
5003
+ export type PayeeProfileAdminControllerDeleteResponse = void;
4039
5004
 
4040
- export type PayeeProfileAdminController3Data = {
5005
+ export type PayeeProfileAdminControllerVerifyData = {
4041
5006
  /**
4042
- * Region code (cn, us, eu-core, de)
5007
+ * Payee profile ID (UUID)
4043
5008
  */
4044
- region: 'cn' | 'us' | 'eu-core' | 'de';
5009
+ id: string;
4045
5010
  };
4046
5011
 
4047
- export type PayeeProfileAdminController3Response = unknown;
5012
+ export type PayeeProfileAdminControllerVerifyResponse = PayeeProfileResponseDto;
4048
5013
 
4049
- export type PayeeProfileAdminController4Data = {
5014
+ export type PayeeProfileAdminControllerUnverifyData = {
4050
5015
  /**
4051
- * Region code (cn, us, eu-core, de)
5016
+ * Payee profile ID (UUID)
4052
5017
  */
4053
- region: 'cn' | 'us' | 'eu-core' | 'de';
5018
+ id: string;
4054
5019
  };
4055
5020
 
4056
- export type PayeeProfileAdminController4Response = unknown;
5021
+ export type PayeeProfileAdminControllerUnverifyResponse =
5022
+ PayeeProfileResponseDto;
4057
5023
 
4058
- export type CommodityControllerData = {
5024
+ export type CommodityControllerCreateData = {
4059
5025
  /**
4060
- * Region code (cn, us, eu-core, de)
5026
+ * Region code for tenant context
4061
5027
  */
4062
- region: 'cn' | 'us' | 'eu-core' | 'de';
5028
+ region: 'cn' | 'us' | 'de' | 'gb';
5029
+ requestBody: CreateCommodityDto;
4063
5030
  };
4064
5031
 
4065
- export type CommodityControllerResponse = unknown;
5032
+ export type CommodityControllerCreateResponse = CommodityResponseDto;
4066
5033
 
4067
5034
  export type CommodityControllerFindAllData = {
4068
5035
  /**
4069
- * Region code (cn, us, eu-core, de)
5036
+ * Region code for tenant context
4070
5037
  */
4071
- region: 'cn' | 'us' | 'eu-core' | 'de';
5038
+ region: 'cn' | 'us' | 'de' | 'gb';
4072
5039
  /**
4073
5040
  * Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
4074
5041
  */
@@ -4083,9 +5050,9 @@ export type CommodityControllerFindAllResponse = CommodityListResponseDto;
4083
5050
 
4084
5051
  export type CommodityControllerFindOneData = {
4085
5052
  /**
4086
- * Region code (cn, us, eu-core, de)
5053
+ * Region code for tenant context
4087
5054
  */
4088
- region: 'cn' | 'us' | 'eu-core' | 'de';
5055
+ region: 'cn' | 'us' | 'de' | 'gb';
4089
5056
  /**
4090
5057
  * Commodity symbol
4091
5058
  */
@@ -4094,50 +5061,64 @@ export type CommodityControllerFindOneData = {
4094
5061
 
4095
5062
  export type CommodityControllerFindOneResponse = CommodityResponseDto;
4096
5063
 
4097
- export type CommodityController1Data = {
5064
+ export type CommodityControllerUpdateData = {
5065
+ /**
5066
+ * Region code for tenant context
5067
+ */
5068
+ region: 'cn' | 'us' | 'de' | 'gb';
5069
+ requestBody: UpdateCommodityDto;
4098
5070
  /**
4099
- * Region code (cn, us, eu-core, de)
5071
+ * Commodity symbol
4100
5072
  */
4101
- region: 'cn' | 'us' | 'eu-core' | 'de';
5073
+ symbol: string;
4102
5074
  };
4103
5075
 
4104
- export type CommodityController1Response = unknown;
5076
+ export type CommodityControllerUpdateResponse = CommodityResponseDto;
4105
5077
 
4106
- export type CommodityController2Data = {
5078
+ export type CommodityControllerDeleteData = {
4107
5079
  /**
4108
- * Region code (cn, us, eu-core, de)
5080
+ * Region code for tenant context
5081
+ */
5082
+ region: 'cn' | 'us' | 'de' | 'gb';
5083
+ /**
5084
+ * Commodity symbol
4109
5085
  */
4110
- region: 'cn' | 'us' | 'eu-core' | 'de';
5086
+ symbol: string;
4111
5087
  };
4112
5088
 
4113
- export type CommodityController2Response = void;
5089
+ export type CommodityControllerDeleteResponse = void;
4114
5090
 
4115
- export type CommodityController3Data = {
5091
+ export type CommodityControllerGetOrCreateData = {
5092
+ /**
5093
+ * Region code for tenant context
5094
+ */
5095
+ region: 'cn' | 'us' | 'de' | 'gb';
4116
5096
  /**
4117
- * Region code (cn, us, eu-core, de)
5097
+ * Commodity symbol
4118
5098
  */
4119
- region: 'cn' | 'us' | 'eu-core' | 'de';
5099
+ symbol: string;
4120
5100
  };
4121
5101
 
4122
- export type CommodityController3Response = unknown;
5102
+ export type CommodityControllerGetOrCreateResponse = CommodityResponseDto;
4123
5103
 
4124
- export type CommodityController4Data = {
5104
+ export type CommodityControllerBulkCreateData = {
4125
5105
  /**
4126
- * Region code (cn, us, eu-core, de)
5106
+ * Region code for tenant context
4127
5107
  */
4128
- region: 'cn' | 'us' | 'eu-core' | 'de';
5108
+ region: 'cn' | 'us' | 'de' | 'gb';
4129
5109
  };
4130
5110
 
4131
- export type CommodityController4Response = unknown;
5111
+ export type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
4132
5112
 
4133
- export type RecurringRuleControllerData = {
5113
+ export type RecurringRuleControllerCreateData = {
4134
5114
  /**
4135
- * Region code (cn, us, eu-core, de)
5115
+ * Region code for tenant context
4136
5116
  */
4137
- region: 'cn' | 'us' | 'eu-core' | 'de';
5117
+ region: 'cn' | 'us' | 'de' | 'gb';
5118
+ requestBody: CreateRecurringRuleDto;
4138
5119
  };
4139
5120
 
4140
- export type RecurringRuleControllerResponse = unknown;
5121
+ export type RecurringRuleControllerCreateResponse = RecurringRuleResponseDto;
4141
5122
 
4142
5123
  export type RecurringRuleControllerFindAllData = {
4143
5124
  /**
@@ -4153,22 +5134,28 @@ export type RecurringRuleControllerFindAllData = {
4153
5134
  */
4154
5135
  isActive?: boolean;
4155
5136
  /**
4156
- * Region code (cn, us, eu-core, de)
5137
+ * Region code for tenant context
4157
5138
  */
4158
- region: 'cn' | 'us' | 'eu-core' | 'de';
5139
+ region: 'cn' | 'us' | 'de' | 'gb';
4159
5140
  };
4160
5141
 
4161
5142
  export type RecurringRuleControllerFindAllResponse =
4162
5143
  Array<RecurringRuleResponseDto>;
4163
5144
 
4164
- export type RecurringRuleController1Data = {
5145
+ export type RecurringRuleControllerCreateFromTransactionData = {
5146
+ /**
5147
+ * Region code for tenant context
5148
+ */
5149
+ region: 'cn' | 'us' | 'de' | 'gb';
5150
+ requestBody: CreateRuleFromTransactionDto;
4165
5151
  /**
4166
- * Region code (cn, us, eu-core, de)
5152
+ * Source transaction ID
4167
5153
  */
4168
- region: 'cn' | 'us' | 'eu-core' | 'de';
5154
+ transactionId: string;
4169
5155
  };
4170
5156
 
4171
- export type RecurringRuleController1Response = unknown;
5157
+ export type RecurringRuleControllerCreateFromTransactionResponse =
5158
+ RecurringRuleResponseDto;
4172
5159
 
4173
5160
  export type RecurringRuleControllerFindOneData = {
4174
5161
  /**
@@ -4176,30 +5163,39 @@ export type RecurringRuleControllerFindOneData = {
4176
5163
  */
4177
5164
  id: string;
4178
5165
  /**
4179
- * Region code (cn, us, eu-core, de)
5166
+ * Region code for tenant context
5167
+ */
5168
+ region: 'cn' | 'us' | 'de' | 'gb';
5169
+ };
5170
+
5171
+ export type RecurringRuleControllerFindOneResponse = RecurringRuleResponseDto;
5172
+
5173
+ export type RecurringRuleControllerUpdateData = {
5174
+ /**
5175
+ * Rule ID
5176
+ */
5177
+ id: string;
5178
+ /**
5179
+ * Region code for tenant context
4180
5180
  */
4181
- region: 'cn' | 'us' | 'eu-core' | 'de';
5181
+ region: 'cn' | 'us' | 'de' | 'gb';
5182
+ requestBody: UpdateRecurringRuleDto;
4182
5183
  };
4183
5184
 
4184
- export type RecurringRuleControllerFindOneResponse = RecurringRuleResponseDto;
5185
+ export type RecurringRuleControllerUpdateResponse = RecurringRuleResponseDto;
4185
5186
 
4186
- export type RecurringRuleController2Data = {
5187
+ export type RecurringRuleControllerDeleteData = {
4187
5188
  /**
4188
- * Region code (cn, us, eu-core, de)
5189
+ * Rule ID
4189
5190
  */
4190
- region: 'cn' | 'us' | 'eu-core' | 'de';
4191
- };
4192
-
4193
- export type RecurringRuleController2Response = unknown;
4194
-
4195
- export type RecurringRuleController3Data = {
5191
+ id: string;
4196
5192
  /**
4197
- * Region code (cn, us, eu-core, de)
5193
+ * Region code for tenant context
4198
5194
  */
4199
- region: 'cn' | 'us' | 'eu-core' | 'de';
5195
+ region: 'cn' | 'us' | 'de' | 'gb';
4200
5196
  };
4201
5197
 
4202
- export type RecurringRuleController3Response = void;
5198
+ export type RecurringRuleControllerDeleteResponse = void;
4203
5199
 
4204
5200
  export type RecurringRuleControllerGetWithStatsData = {
4205
5201
  /**
@@ -4207,9 +5203,9 @@ export type RecurringRuleControllerGetWithStatsData = {
4207
5203
  */
4208
5204
  id: string;
4209
5205
  /**
4210
- * Region code (cn, us, eu-core, de)
5206
+ * Region code for tenant context
4211
5207
  */
4212
- region: 'cn' | 'us' | 'eu-core' | 'de';
5208
+ region: 'cn' | 'us' | 'de' | 'gb';
4213
5209
  };
4214
5210
 
4215
5211
  export type RecurringRuleControllerGetWithStatsResponse =
@@ -4221,9 +5217,9 @@ export type ExpectedTransactionControllerFindAllData = {
4221
5217
  */
4222
5218
  fromDate?: string;
4223
5219
  /**
4224
- * Region code (cn, us, eu-core, de)
5220
+ * Region code for tenant context
4225
5221
  */
4226
- region: 'cn' | 'us' | 'eu-core' | 'de';
5222
+ region: 'cn' | 'us' | 'de' | 'gb';
4227
5223
  /**
4228
5224
  * Filter by recurring rule ID
4229
5225
  */
@@ -4243,9 +5239,9 @@ export type ExpectedTransactionControllerFindAllResponse =
4243
5239
 
4244
5240
  export type ExpectedTransactionControllerFindOverdueData = {
4245
5241
  /**
4246
- * Region code (cn, us, eu-core, de)
5242
+ * Region code for tenant context
4247
5243
  */
4248
- region: 'cn' | 'us' | 'eu-core' | 'de';
5244
+ region: 'cn' | 'us' | 'de' | 'gb';
4249
5245
  };
4250
5246
 
4251
5247
  export type ExpectedTransactionControllerFindOverdueResponse =
@@ -4257,58 +5253,82 @@ export type ExpectedTransactionControllerFindOneData = {
4257
5253
  */
4258
5254
  id: string;
4259
5255
  /**
4260
- * Region code (cn, us, eu-core, de)
5256
+ * Region code for tenant context
4261
5257
  */
4262
- region: 'cn' | 'us' | 'eu-core' | 'de';
5258
+ region: 'cn' | 'us' | 'de' | 'gb';
4263
5259
  };
4264
5260
 
4265
5261
  export type ExpectedTransactionControllerFindOneResponse =
4266
5262
  ExpectedTransactionResponseDto;
4267
5263
 
4268
- export type ExpectedTransactionControllerData = {
5264
+ export type ExpectedTransactionControllerSkipData = {
5265
+ /**
5266
+ * Expected transaction ID
5267
+ */
5268
+ id: string;
4269
5269
  /**
4270
- * Region code (cn, us, eu-core, de)
5270
+ * Region code for tenant context
4271
5271
  */
4272
- region: 'cn' | 'us' | 'eu-core' | 'de';
5272
+ region: 'cn' | 'us' | 'de' | 'gb';
4273
5273
  };
4274
5274
 
4275
- export type ExpectedTransactionControllerResponse = unknown;
5275
+ export type ExpectedTransactionControllerSkipResponse =
5276
+ ExpectedTransactionResponseDto;
4276
5277
 
4277
- export type ExpectedTransactionController1Data = {
5278
+ export type ExpectedTransactionControllerUndoSkipData = {
5279
+ /**
5280
+ * Expected transaction ID
5281
+ */
5282
+ id: string;
4278
5283
  /**
4279
- * Region code (cn, us, eu-core, de)
5284
+ * Region code for tenant context
4280
5285
  */
4281
- region: 'cn' | 'us' | 'eu-core' | 'de';
5286
+ region: 'cn' | 'us' | 'de' | 'gb';
4282
5287
  };
4283
5288
 
4284
- export type ExpectedTransactionController1Response = unknown;
5289
+ export type ExpectedTransactionControllerUndoSkipResponse =
5290
+ ExpectedTransactionResponseDto;
4285
5291
 
4286
- export type ExpectedTransactionController2Data = {
5292
+ export type ExpectedTransactionControllerConfirmMatchData = {
4287
5293
  /**
4288
- * Region code (cn, us, eu-core, de)
5294
+ * Expected transaction ID
5295
+ */
5296
+ id: string;
5297
+ /**
5298
+ * Region code for tenant context
4289
5299
  */
4290
- region: 'cn' | 'us' | 'eu-core' | 'de';
5300
+ region: 'cn' | 'us' | 'de' | 'gb';
5301
+ requestBody: ConfirmMatchDto;
4291
5302
  };
4292
5303
 
4293
- export type ExpectedTransactionController2Response = unknown;
5304
+ export type ExpectedTransactionControllerConfirmMatchResponse = unknown;
4294
5305
 
4295
- export type ExpectedTransactionController3Data = {
5306
+ export type ExpectedTransactionControllerUnmatchData = {
5307
+ /**
5308
+ * Expected transaction ID
5309
+ */
5310
+ id: string;
4296
5311
  /**
4297
- * Region code (cn, us, eu-core, de)
5312
+ * Region code for tenant context
4298
5313
  */
4299
- region: 'cn' | 'us' | 'eu-core' | 'de';
5314
+ region: 'cn' | 'us' | 'de' | 'gb';
4300
5315
  };
4301
5316
 
4302
- export type ExpectedTransactionController3Response = unknown;
5317
+ export type ExpectedTransactionControllerUnmatchResponse = unknown;
4303
5318
 
4304
- export type ExpectedTransactionController4Data = {
5319
+ export type ExpectedTransactionControllerEnterNowData = {
5320
+ /**
5321
+ * Expected transaction ID
5322
+ */
5323
+ id: string;
4305
5324
  /**
4306
- * Region code (cn, us, eu-core, de)
5325
+ * Region code for tenant context
4307
5326
  */
4308
- region: 'cn' | 'us' | 'eu-core' | 'de';
5327
+ region: 'cn' | 'us' | 'de' | 'gb';
5328
+ requestBody: EnterNowDto;
4309
5329
  };
4310
5330
 
4311
- export type ExpectedTransactionController4Response = unknown;
5331
+ export type ExpectedTransactionControllerEnterNowResponse = unknown;
4312
5332
 
4313
5333
  export type ForecastControllerGetForecastData = {
4314
5334
  /**
@@ -4316,21 +5336,23 @@ export type ForecastControllerGetForecastData = {
4316
5336
  */
4317
5337
  months?: number;
4318
5338
  /**
4319
- * Region code (cn, us, eu-core, de)
5339
+ * Region code for tenant context
4320
5340
  */
4321
- region: 'cn' | 'us' | 'eu-core' | 'de';
5341
+ region: 'cn' | 'us' | 'de' | 'gb';
4322
5342
  };
4323
5343
 
4324
5344
  export type ForecastControllerGetForecastResponse = ForecastResponseDto;
4325
5345
 
4326
- export type TransactionRuleControllerData = {
5346
+ export type TransactionRuleControllerCreateData = {
4327
5347
  /**
4328
- * Region code (cn, us, eu-core, de)
5348
+ * Region code for tenant context
4329
5349
  */
4330
- region: 'cn' | 'us' | 'eu-core' | 'de';
5350
+ region: 'cn' | 'us' | 'de' | 'gb';
5351
+ requestBody: CreateTransactionRuleDto;
4331
5352
  };
4332
5353
 
4333
- export type TransactionRuleControllerResponse = unknown;
5354
+ export type TransactionRuleControllerCreateResponse =
5355
+ TransactionRuleResponseDto;
4334
5356
 
4335
5357
  export type TransactionRuleControllerListData = {
4336
5358
  /**
@@ -4354,9 +5376,9 @@ export type TransactionRuleControllerListData = {
4354
5376
  */
4355
5377
  offset?: number;
4356
5378
  /**
4357
- * Region code (cn, us, eu-core, de)
5379
+ * Region code for tenant context
4358
5380
  */
4359
- region: 'cn' | 'us' | 'eu-core' | 'de';
5381
+ region: 'cn' | 'us' | 'de' | 'gb';
4360
5382
  };
4361
5383
 
4362
5384
  export type TransactionRuleControllerListResponse =
@@ -4364,22 +5386,24 @@ export type TransactionRuleControllerListResponse =
4364
5386
 
4365
5387
  export type TransactionRuleControllerValidateData = {
4366
5388
  /**
4367
- * Region code (cn, us, eu-core, de)
5389
+ * Region code for tenant context
4368
5390
  */
4369
- region: 'cn' | 'us' | 'eu-core' | 'de';
5391
+ region: 'cn' | 'us' | 'de' | 'gb';
4370
5392
  requestBody: ValidateRuleDto;
4371
5393
  };
4372
5394
 
4373
5395
  export type TransactionRuleControllerValidateResponse = ValidateRuleResponseDto;
4374
5396
 
4375
- export type TransactionRuleController1Data = {
5397
+ export type TransactionRuleControllerBulkCreateData = {
4376
5398
  /**
4377
- * Region code (cn, us, eu-core, de)
5399
+ * Region code for tenant context
4378
5400
  */
4379
- region: 'cn' | 'us' | 'eu-core' | 'de';
5401
+ region: 'cn' | 'us' | 'de' | 'gb';
5402
+ requestBody: BulkCreateRulesDto;
4380
5403
  };
4381
5404
 
4382
- export type TransactionRuleController1Response = unknown;
5405
+ export type TransactionRuleControllerBulkCreateResponse =
5406
+ BulkCreateRulesResponseDto;
4383
5407
 
4384
5408
  export type TransactionRuleControllerExportData = {
4385
5409
  /**
@@ -4387,9 +5411,9 @@ export type TransactionRuleControllerExportData = {
4387
5411
  */
4388
5412
  format: 'json';
4389
5413
  /**
4390
- * Region code (cn, us, eu-core, de)
5414
+ * Region code for tenant context
4391
5415
  */
4392
- region: 'cn' | 'us' | 'eu-core' | 'de';
5416
+ region: 'cn' | 'us' | 'de' | 'gb';
4393
5417
  };
4394
5418
 
4395
5419
  export type TransactionRuleControllerExportResponse = ExportRulesResponseDto;
@@ -4400,9 +5424,9 @@ export type TransactionRuleControllerGetStatisticsData = {
4400
5424
  */
4401
5425
  period: '7d' | '30d' | '90d';
4402
5426
  /**
4403
- * Region code (cn, us, eu-core, de)
5427
+ * Region code for tenant context
4404
5428
  */
4405
- region: 'cn' | 'us' | 'eu-core' | 'de';
5429
+ region: 'cn' | 'us' | 'de' | 'gb';
4406
5430
  };
4407
5431
 
4408
5432
  export type TransactionRuleControllerGetStatisticsResponse =
@@ -4410,9 +5434,9 @@ export type TransactionRuleControllerGetStatisticsResponse =
4410
5434
 
4411
5435
  export type TransactionRuleControllerGetDetailData = {
4412
5436
  /**
4413
- * Region code (cn, us, eu-core, de)
5437
+ * Region code for tenant context
4414
5438
  */
4415
- region: 'cn' | 'us' | 'eu-core' | 'de';
5439
+ region: 'cn' | 'us' | 'de' | 'gb';
4416
5440
  /**
4417
5441
  * Rule ID
4418
5442
  */
@@ -4422,761 +5446,496 @@ export type TransactionRuleControllerGetDetailData = {
4422
5446
  export type TransactionRuleControllerGetDetailResponse =
4423
5447
  TransactionRuleResponseDto;
4424
5448
 
4425
- export type TransactionRuleController2Data = {
5449
+ export type TransactionRuleControllerUpdateData = {
4426
5450
  /**
4427
- * Region code (cn, us, eu-core, de)
4428
- */
4429
- region: 'cn' | 'us' | 'eu-core' | 'de';
4430
- };
4431
-
4432
- export type TransactionRuleController2Response = unknown;
4433
-
4434
- export type TransactionRuleController3Data = {
4435
- /**
4436
- * Region code (cn, us, eu-core, de)
4437
- */
4438
- region: 'cn' | 'us' | 'eu-core' | 'de';
4439
- };
4440
-
4441
- export type TransactionRuleController3Response = void;
4442
-
4443
- export type TransactionRuleControllerTestData = {
4444
- /**
4445
- * Region code (cn, us, eu-core, de)
5451
+ * Region code for tenant context
4446
5452
  */
4447
- region: 'cn' | 'us' | 'eu-core' | 'de';
4448
- requestBody: TestRuleDto;
5453
+ region: 'cn' | 'us' | 'de' | 'gb';
5454
+ requestBody: UpdateTransactionRuleDto;
4449
5455
  /**
4450
- * Rule ID to test
5456
+ * Rule ID to update
4451
5457
  */
4452
5458
  ruleId: string;
4453
5459
  };
4454
5460
 
4455
- export type TransactionRuleControllerTestResponse = TestRuleResponseDto;
4456
-
4457
- export type UserControllerDeleteOwnUserData = {
4458
- /**
4459
- * Region code (cn, us, eu-core, de)
4460
- */
4461
- region: 'cn' | 'us' | 'eu-core' | 'de';
4462
- requestBody: DeleteOwnUserDto;
4463
- };
4464
-
4465
- export type UserControllerDeleteOwnUserResponse = void;
4466
-
4467
- export type UserControllerGetUserData = {
4468
- acceptLanguage: string;
4469
- /**
4470
- * Region code (cn, us, eu-core, de)
4471
- */
4472
- region: 'cn' | 'us' | 'eu-core' | 'de';
4473
- };
4474
-
4475
- export type UserControllerGetUserResponse = unknown;
4476
-
4477
- export type UserControllerSignupUserData = {
4478
- /**
4479
- * Region code (cn, us, eu-core, de)
4480
- */
4481
- region: 'cn' | 'us' | 'eu-core' | 'de';
4482
- requestBody: SignupDto;
4483
- };
4484
-
4485
- export type UserControllerSignupUserResponse = unknown;
4486
-
4487
- export type UserControllerDeleteUserData = {
4488
- /**
4489
- * User ID to delete
4490
- */
4491
- id: string;
4492
- /**
4493
- * Region code (cn, us, eu-core, de)
4494
- */
4495
- region: 'cn' | 'us' | 'eu-core' | 'de';
4496
- };
4497
-
4498
- export type UserControllerDeleteUserResponse = void;
4499
-
4500
- export type UserControllerGetUserInfoData = {
4501
- /**
4502
- * User ID
4503
- */
4504
- id: string;
4505
- /**
4506
- * Region code (cn, us, eu-core, de)
4507
- */
4508
- region: 'cn' | 'us' | 'eu-core' | 'de';
4509
- };
4510
-
4511
- export type UserControllerGetUserInfoResponse = unknown;
4512
-
4513
- export type UserControllerUpdateUserSettingData = {
4514
- /**
4515
- * Region code (cn, us, eu-core, de)
4516
- */
4517
- region: 'cn' | 'us' | 'eu-core' | 'de';
4518
- requestBody: UpdateUserSettingDto;
4519
- };
4520
-
4521
- export type UserControllerUpdateUserSettingResponse = unknown;
4522
-
4523
- export type UserControllerGetAllUserSettingsByPageData = {
4524
- /**
4525
- * Page number
4526
- */
4527
- pageNo: number;
4528
- /**
4529
- * Page size
4530
- */
4531
- pageSize: number;
4532
- /**
4533
- * Region code (cn, us, eu-core, de)
4534
- */
4535
- region: 'cn' | 'us' | 'eu-core' | 'de';
4536
- };
4537
-
4538
- export type UserControllerGetAllUserSettingsByPageResponse = unknown;
4539
-
4540
- export type UserControllerGetAssetLiabilitySummaryData = {
4541
- /**
4542
- * Region code (cn, us, eu-core, de)
4543
- */
4544
- region: 'cn' | 'us' | 'eu-core' | 'de';
4545
- };
4546
-
4547
- export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
4548
-
4549
- export type PropertyControllerGetAllData = {
4550
- /**
4551
- * Region code (cn, us, eu-core, de)
4552
- */
4553
- region: 'cn' | 'us' | 'eu-core' | 'de';
4554
- };
4555
-
4556
- export type PropertyControllerGetAllResponse = unknown;
4557
-
4558
- export type PropertyControllerGetByKeyData = {
4559
- /**
4560
- * Property key
4561
- */
4562
- key: string;
4563
- /**
4564
- * Region code (cn, us, eu-core, de)
4565
- */
4566
- region: 'cn' | 'us' | 'eu-core' | 'de';
4567
- };
4568
-
4569
- export type PropertyControllerGetByKeyResponse = unknown;
4570
-
4571
- export type PropertyControllerData = {
4572
- /**
4573
- * Region code (cn, us, eu-core, de)
4574
- */
4575
- region: 'cn' | 'us' | 'eu-core' | 'de';
4576
- };
4577
-
4578
- export type PropertyControllerResponse = unknown;
4579
-
4580
- export type PropertyController1Data = {
4581
- /**
4582
- * Region code (cn, us, eu-core, de)
4583
- */
4584
- region: 'cn' | 'us' | 'eu-core' | 'de';
4585
- };
4586
-
4587
- export type PropertyController1Response = void;
4588
-
4589
- export type FileImportControllerImportFileData = {
4590
- /**
4591
- * Bill file to import
4592
- */
4593
- formData: FileImportDto;
4594
- /**
4595
- * Region code (cn, us, eu-core, de)
4596
- */
4597
- region: 'cn' | 'us' | 'eu-core' | 'de';
4598
- };
4599
-
4600
- export type FileImportControllerImportFileResponse = ImportResultDto;
4601
-
4602
- export type FileImportControllerIdentifyFileData = {
4603
- /**
4604
- * File to identify
4605
- */
4606
- formData: FileImportDto;
4607
- /**
4608
- * Region code (cn, us, eu-core, de)
4609
- */
4610
- region: 'cn' | 'us' | 'eu-core' | 'de';
4611
- };
4612
-
4613
- export type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
4614
-
4615
- export type ImporterConfigControllerGetConfigData = {
4616
- /**
4617
- * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk
4618
- */
4619
- importerId: string;
4620
- /**
4621
- * Region code (cn, us, eu-core, de)
4622
- */
4623
- region: 'cn' | 'us' | 'eu-core' | 'de';
4624
- };
4625
-
4626
- export type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
4627
-
4628
- export type ImporterConfigControllerData = {
4629
- /**
4630
- * Region code (cn, us, eu-core, de)
4631
- */
4632
- region: 'cn' | 'us' | 'eu-core' | 'de';
4633
- };
4634
-
4635
- export type ImporterConfigControllerResponse = unknown;
4636
-
4637
- export type ImporterConfigController1Data = {
4638
- /**
4639
- * Region code (cn, us, eu-core, de)
4640
- */
4641
- region: 'cn' | 'us' | 'eu-core' | 'de';
4642
- };
4643
-
4644
- export type ImporterConfigController1Response = unknown;
4645
-
4646
- export type ProviderSyncControllerSyncData = {
4647
- /**
4648
- * Provider name
4649
- */
4650
- providerName:
4651
- | 'plaid'
4652
- | 'teller'
4653
- | 'truelayer'
4654
- | 'gocardless'
4655
- | 'simplefin'
4656
- | 'yodlee'
4657
- | 'beancount-direct';
4658
- /**
4659
- * Region code
4660
- */
4661
- region: unknown;
4662
- requestBody: ProviderSyncDto;
4663
- };
4664
-
4665
- export type ProviderSyncControllerSyncResponse = ProviderSyncResponseDto;
4666
-
4667
- export type ProviderSyncControllerGetSupportedProvidersData = {
4668
- /**
4669
- * Region code (cn, us, eu-core, de)
4670
- */
4671
- region: 'cn' | 'us' | 'eu-core' | 'de';
4672
- };
4673
-
4674
- export type ProviderSyncControllerGetSupportedProvidersResponse =
4675
- SupportedProvidersResponseDto;
4676
-
4677
- export type ProviderSyncControllerIsProviderSupportedData = {
4678
- /**
4679
- * Provider name to check
4680
- */
4681
- providerName: string;
4682
- /**
4683
- * Region code (cn, us, eu-core, de)
4684
- */
4685
- region: 'cn' | 'us' | 'eu-core' | 'de';
4686
- };
4687
-
4688
- export type ProviderSyncControllerIsProviderSupportedResponse = unknown;
4689
-
4690
- export type NlpControllerProcessNaturalLanguageData = {
4691
- /**
4692
- * Region code (cn, us, eu-core, de)
4693
- */
4694
- region: 'cn' | 'us' | 'eu-core' | 'de';
4695
- /**
4696
- * Natural language transaction input with optional session ID
4697
- */
4698
- requestBody: ProcessNlpDto;
4699
- };
4700
-
4701
- export type NlpControllerProcessNaturalLanguageResponse = NlpResponseDto;
5461
+ export type TransactionRuleControllerUpdateResponse =
5462
+ TransactionRuleResponseDto;
4702
5463
 
4703
- export type NlpControllerClearSessionData = {
5464
+ export type TransactionRuleControllerDeleteData = {
4704
5465
  /**
4705
- * Region code (cn, us, eu-core, de)
5466
+ * Region code for tenant context
4706
5467
  */
4707
- region: 'cn' | 'us' | 'eu-core' | 'de';
5468
+ region: 'cn' | 'us' | 'de' | 'gb';
4708
5469
  /**
4709
- * Specific session ID to clear (defaults to user session)
5470
+ * Rule ID to delete
4710
5471
  */
4711
- sessionId?: string;
5472
+ ruleId: string;
4712
5473
  };
4713
5474
 
4714
- export type NlpControllerClearSessionResponse = void;
5475
+ export type TransactionRuleControllerDeleteResponse = void;
4715
5476
 
4716
- export type NlpControllerGetSessionData = {
5477
+ export type TransactionRuleControllerTestData = {
4717
5478
  /**
4718
- * Region code (cn, us, eu-core, de)
5479
+ * Region code for tenant context
4719
5480
  */
4720
- region: 'cn' | 'us' | 'eu-core' | 'de';
5481
+ region: 'cn' | 'us' | 'de' | 'gb';
5482
+ requestBody: TestRuleDto;
4721
5483
  /**
4722
- * Specific session ID to get (defaults to user session)
5484
+ * Rule ID to test
4723
5485
  */
4724
- sessionId?: string;
5486
+ ruleId: string;
4725
5487
  };
4726
5488
 
4727
- export type NlpControllerGetSessionResponse = unknown;
5489
+ export type TransactionRuleControllerTestResponse = TestRuleResponseDto;
4728
5490
 
4729
- export type PlatformControllerFindAllData = {
4730
- /**
4731
- * Region code (cn, us, eu-core, de)
4732
- */
4733
- region: 'cn' | 'us' | 'eu-core' | 'de';
5491
+ export type UserControllerDeleteOwnUserData = {
5492
+ requestBody: DeleteOwnUserDto;
4734
5493
  };
4735
5494
 
4736
- export type PlatformControllerFindAllResponse = unknown;
5495
+ export type UserControllerDeleteOwnUserResponse = void;
4737
5496
 
4738
- export type PlatformControllerData = {
4739
- /**
4740
- * Region code (cn, us, eu-core, de)
4741
- */
4742
- region: 'cn' | 'us' | 'eu-core' | 'de';
5497
+ export type UserControllerGetUserData = {
5498
+ acceptLanguage: string;
4743
5499
  };
4744
5500
 
4745
- export type PlatformControllerResponse = unknown;
5501
+ export type UserControllerGetUserResponse = unknown;
4746
5502
 
4747
- export type PlatformControllerGetPlatformListData = {
4748
- /**
4749
- * Region code (cn, us, eu-core, de)
4750
- */
4751
- region: 'cn' | 'us' | 'eu-core' | 'de';
5503
+ export type UserControllerSignupUserData = {
5504
+ requestBody: SignupDto;
4752
5505
  };
4753
5506
 
4754
- export type PlatformControllerGetPlatformListResponse = unknown;
5507
+ export type UserControllerSignupUserResponse = unknown;
4755
5508
 
4756
- export type PlatformController1Data = {
5509
+ export type UserControllerDeleteUserData = {
4757
5510
  /**
4758
- * Region code (cn, us, eu-core, de)
5511
+ * User ID to delete
4759
5512
  */
4760
- region: 'cn' | 'us' | 'eu-core' | 'de';
5513
+ id: string;
4761
5514
  };
4762
5515
 
4763
- export type PlatformController1Response = unknown;
5516
+ export type UserControllerDeleteUserResponse = void;
4764
5517
 
4765
- export type PlatformController2Data = {
5518
+ export type UserControllerGetUserInfoData = {
4766
5519
  /**
4767
- * Region code (cn, us, eu-core, de)
5520
+ * User ID
4768
5521
  */
4769
- region: 'cn' | 'us' | 'eu-core' | 'de';
5522
+ id: string;
4770
5523
  };
4771
5524
 
4772
- export type PlatformController2Response = void;
5525
+ export type UserControllerGetUserInfoResponse = unknown;
4773
5526
 
4774
- export type SymbolControllerLookupSymbolData = {
4775
- /**
4776
- * Geographic area filter (e.g., CN, US)
4777
- */
4778
- area?: unknown;
4779
- /**
4780
- * Asset class filter
4781
- */
4782
- assetClass?: unknown;
4783
- /**
4784
- * Asset sub-class filter
4785
- */
4786
- assetSubClass?: unknown;
4787
- /**
4788
- * Include index symbols in results
4789
- */
4790
- includeIndices?: unknown;
4791
- /**
4792
- * Search query string
4793
- */
4794
- query?: unknown;
4795
- /**
4796
- * Region code (cn, us, eu-core, de)
4797
- */
4798
- region: 'cn' | 'us' | 'eu-core' | 'de';
5527
+ export type UserControllerUpdateUserSettingData = {
5528
+ requestBody: UpdateUserSettingDto;
4799
5529
  };
4800
5530
 
4801
- export type SymbolControllerLookupSymbolResponse = unknown;
5531
+ export type UserControllerUpdateUserSettingResponse = unknown;
4802
5532
 
4803
- export type SymbolControllerGetSymbolDataData = {
4804
- /**
4805
- * Data source provider
4806
- */
4807
- dataSource:
4808
- | 'ALPHA_VANTAGE'
4809
- | 'EOD_HISTORICAL_DATA'
4810
- | 'FINANCIAL_MODELING_PREP'
4811
- | 'MANUAL'
4812
- | 'RAPID_API'
4813
- | 'YAHOO'
4814
- | 'COINGECKO'
4815
- | 'TUSHARE'
4816
- | 'BLOOMBERG'
4817
- | 'CSI'
4818
- | 'STOOQ'
4819
- | 'TRADING_VIEW';
4820
- /**
4821
- * Include historical price data (0 or 1)
4822
- */
4823
- includeHistoricalData?: unknown;
5533
+ export type UserControllerGetAllUserSettingsByPageData = {
4824
5534
  /**
4825
- * Region code (cn, us, eu-core, de)
5535
+ * Page number
4826
5536
  */
4827
- region: 'cn' | 'us' | 'eu-core' | 'de';
5537
+ pageNo: number;
4828
5538
  /**
4829
- * Symbol identifier (e.g., ticker code)
5539
+ * Page size
4830
5540
  */
4831
- symbol: string;
5541
+ pageSize: number;
4832
5542
  };
4833
5543
 
4834
- export type SymbolControllerGetSymbolDataResponse = unknown;
5544
+ export type UserControllerGetAllUserSettingsByPageResponse = unknown;
4835
5545
 
4836
- export type SymbolControllerGatherSymbolForDateData = {
4837
- /**
4838
- * Data source provider
4839
- */
4840
- dataSource:
4841
- | 'ALPHA_VANTAGE'
4842
- | 'EOD_HISTORICAL_DATA'
4843
- | 'FINANCIAL_MODELING_PREP'
4844
- | 'MANUAL'
4845
- | 'RAPID_API'
4846
- | 'YAHOO'
4847
- | 'COINGECKO'
4848
- | 'TUSHARE'
4849
- | 'BLOOMBERG'
4850
- | 'CSI'
4851
- | 'STOOQ'
4852
- | 'TRADING_VIEW';
4853
- /**
4854
- * Date in ISO 8601 format (YYYY-MM-DD)
4855
- */
4856
- dateString: string;
4857
- /**
4858
- * Region code (cn, us, eu-core, de)
4859
- */
4860
- region: 'cn' | 'us' | 'eu-core' | 'de';
5546
+ export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
5547
+
5548
+ export type PropertyControllerGetAllResponse = unknown;
5549
+
5550
+ export type PropertyControllerGetByKeyData = {
4861
5551
  /**
4862
- * Symbol identifier (e.g., ticker code)
5552
+ * Property key
4863
5553
  */
4864
- symbol: string;
5554
+ key: string;
4865
5555
  };
4866
5556
 
4867
- export type SymbolControllerGatherSymbolForDateResponse = unknown;
5557
+ export type PropertyControllerGetByKeyResponse = unknown;
4868
5558
 
4869
- export type SymbolControllerData = {
5559
+ export type PropertyControllerUpdateData = {
4870
5560
  /**
4871
- * Region code (cn, us, eu-core, de)
5561
+ * Property key
4872
5562
  */
4873
- region: 'cn' | 'us' | 'eu-core' | 'de';
5563
+ key: string;
5564
+ requestBody: UpdatePropertyDto;
4874
5565
  };
4875
5566
 
4876
- export type SymbolControllerResponse = unknown;
5567
+ export type PropertyControllerUpdateResponse = unknown;
4877
5568
 
4878
- export type CacheControllerFlushCacheData = {
5569
+ export type PropertyControllerDeleteData = {
4879
5570
  /**
4880
- * Region code (cn, us, eu-core, de)
5571
+ * Property key
4881
5572
  */
4882
- region: 'cn' | 'us' | 'eu-core' | 'de';
5573
+ key: string;
4883
5574
  };
4884
5575
 
4885
- export type CacheControllerFlushCacheResponse = unknown;
5576
+ export type PropertyControllerDeleteResponse = void;
4886
5577
 
4887
- export type DashboardControllerGetNetWorthData = {
5578
+ export type ExportControllerExportBeancountResponse = unknown;
5579
+
5580
+ export type FileImportControllerImportFileData = {
4888
5581
  /**
4889
- * Date for balance calculation (ISO 8601 format)
5582
+ * Bill file to import
4890
5583
  */
4891
- date?: string;
5584
+ formData: FileImportDto;
4892
5585
  /**
4893
- * Region code (cn, us, eu-core, de)
5586
+ * Region code for tenant context
4894
5587
  */
4895
- region: 'cn' | 'us' | 'eu-core' | 'de';
5588
+ region: 'cn' | 'us' | 'de' | 'gb';
4896
5589
  };
4897
5590
 
4898
- export type DashboardControllerGetNetWorthResponse = NetWorthResponseDto;
5591
+ export type FileImportControllerImportFileResponse = ImportResultDto;
4899
5592
 
4900
- export type DashboardControllerGetAccountsData = {
5593
+ export type FileImportControllerIdentifyFileData = {
4901
5594
  /**
4902
- * Date for balance calculation (ISO 8601 format)
5595
+ * File to identify
4903
5596
  */
4904
- date?: string;
5597
+ formData: FileImportDto;
4905
5598
  /**
4906
- * Grouping strategy
5599
+ * Region code for tenant context
4907
5600
  */
4908
- groupBy?: 'platform' | 'assetClass';
5601
+ region: 'cn' | 'us' | 'de' | 'gb';
5602
+ };
5603
+
5604
+ export type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
5605
+
5606
+ export type FileImportControllerImportBeancountData = {
5607
+ /**
5608
+ * Beancount file to import
5609
+ */
5610
+ formData: FileImportDto;
4909
5611
  /**
4910
- * Region code (cn, us, eu-core, de)
5612
+ * Region code for tenant context
4911
5613
  */
4912
- region: 'cn' | 'us' | 'eu-core' | 'de';
5614
+ region: 'cn' | 'us' | 'de' | 'gb';
4913
5615
  };
4914
5616
 
4915
- export type DashboardControllerGetAccountsResponse =
4916
- | AccountsResponseDto
4917
- | AssetClassAccountsResponseDto;
5617
+ export type FileImportControllerImportBeancountResponse = {
5618
+ imported?: number;
5619
+ skipped?: number;
5620
+ failed?: number;
5621
+ accountsCreated?: number;
5622
+ errors?: Array<{
5623
+ [key: string]: unknown;
5624
+ }>;
5625
+ };
4918
5626
 
4919
- export type DashboardControllerGetCashFlowData = {
5627
+ export type ImporterConfigControllerGetConfigData = {
4920
5628
  /**
4921
- * Period in YYYY-MM format
5629
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
4922
5630
  */
4923
- period: string;
5631
+ importerId: string;
4924
5632
  /**
4925
- * Region code (cn, us, eu-core, de)
5633
+ * Region code for tenant context
4926
5634
  */
4927
- region: 'cn' | 'us' | 'eu-core' | 'de';
5635
+ region: 'cn' | 'us' | 'de' | 'gb';
4928
5636
  };
4929
5637
 
4930
- export type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
5638
+ export type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
4931
5639
 
4932
- export type ReportingControllerGetPortfolioTrendsData = {
5640
+ export type ImporterConfigControllerUpdateConfigData = {
4933
5641
  /**
4934
- * Data granularity
5642
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
4935
5643
  */
4936
- granularity?: 'day' | 'week' | 'month';
5644
+ importerId: string;
4937
5645
  /**
4938
- * Time period
5646
+ * Region code for tenant context
4939
5647
  */
4940
- period?: '1m' | '3m' | '6m' | '1y';
5648
+ region: 'cn' | 'us' | 'de' | 'gb';
4941
5649
  /**
4942
- * Region code (cn, us, eu-core, de)
5650
+ * Partial configuration update. Only provided fields will be updated.
4943
5651
  */
4944
- region: 'cn' | 'us' | 'eu-core' | 'de';
5652
+ requestBody: UpdateImporterConfigDto;
4945
5653
  };
4946
5654
 
4947
- export type ReportingControllerGetPortfolioTrendsResponse =
4948
- PortfolioTrendsResponseDto;
5655
+ export type ImporterConfigControllerUpdateConfigResponse = ImporterConfigDto;
4949
5656
 
4950
- export type ReportingControllerGenerateSnapshotData = {
5657
+ export type ImporterConfigControllerResetConfigData = {
4951
5658
  /**
4952
- * Region code (cn, us, eu-core, de)
5659
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
4953
5660
  */
4954
- region: 'cn' | 'us' | 'eu-core' | 'de';
5661
+ importerId: string;
4955
5662
  /**
4956
- * Optional date (defaults to today)
5663
+ * Region code for tenant context
4957
5664
  */
4958
- requestBody: GenerateSnapshotBody;
5665
+ region: 'cn' | 'us' | 'de' | 'gb';
4959
5666
  };
4960
5667
 
4961
- export type ReportingControllerGenerateSnapshotResponse =
4962
- GenerateSnapshotResponse;
5668
+ export type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
4963
5669
 
4964
- export type ReportingControllerBackfillSnapshotsData = {
4965
- /**
4966
- * Region code (cn, us, eu-core, de)
4967
- */
4968
- region: 'cn' | 'us' | 'eu-core' | 'de';
4969
- requestBody: BackfillSnapshotsBody;
5670
+ export type PlatformControllerFindAllResponse = unknown;
5671
+
5672
+ export type PlatformControllerCreateData = {
5673
+ requestBody: CreatePlatformDto;
4970
5674
  };
4971
5675
 
4972
- export type ReportingControllerBackfillSnapshotsResponse =
4973
- BackfillSnapshotsResponse;
5676
+ export type PlatformControllerCreateResponse = unknown;
5677
+
5678
+ export type PlatformControllerGetPlatformListResponse = unknown;
4974
5679
 
4975
- export type ApiKeysControllerData = {
5680
+ export type PlatformControllerMatchPlatformsData = {
5681
+ /**
5682
+ * Search query — Chinese name, English name, or abbreviation
5683
+ */
5684
+ q: string;
4976
5685
  /**
4977
- * Region code (cn, us, eu-core, de)
5686
+ * Region code for category override lookup
4978
5687
  */
4979
- region: 'cn' | 'us' | 'eu-core' | 'de';
5688
+ region?: string;
4980
5689
  };
4981
5690
 
4982
- export type ApiKeysControllerResponse = unknown;
5691
+ export type PlatformControllerMatchPlatformsResponse = unknown;
4983
5692
 
4984
- export type AuthControllerAccessTokenLoginData = {
5693
+ export type PlatformControllerUpdateData = {
4985
5694
  /**
4986
- * Region code (cn, us, eu-core, de)
5695
+ * Platform ID
4987
5696
  */
4988
- region: 'cn' | 'us' | 'eu-core' | 'de';
4989
- requestBody: AnonymousLoginDto;
5697
+ id: string;
5698
+ requestBody: UpdatePlatformDto;
4990
5699
  };
4991
5700
 
4992
- export type AuthControllerAccessTokenLoginResponse = unknown;
5701
+ export type PlatformControllerUpdateResponse = unknown;
4993
5702
 
4994
- export type ExchangeRateControllerGetExchangeRateData = {
5703
+ export type PlatformControllerDeleteData = {
4995
5704
  /**
4996
- * Date in ISO format (YYYY-MM-DD)
5705
+ * Platform ID
4997
5706
  */
4998
- dateString: string;
5707
+ id: string;
5708
+ };
5709
+
5710
+ export type PlatformControllerDeleteResponse = void;
5711
+
5712
+ export type ProviderSyncControllerSyncData = {
4999
5713
  /**
5000
- * Region code (cn, us, eu-core, de)
5714
+ * Provider name
5001
5715
  */
5002
- region: 'cn' | 'us' | 'eu-core' | 'de';
5716
+ providerName:
5717
+ | 'plaid'
5718
+ | 'teller'
5719
+ | 'truelayer'
5720
+ | 'gocardless'
5721
+ | 'simplefin'
5722
+ | 'yodlee'
5723
+ | 'beancount-direct'
5724
+ | 'parsed-bill';
5003
5725
  /**
5004
- * Currency pair symbol (e.g., USDCNY, EURUSD)
5726
+ * Region code
5005
5727
  */
5006
- symbol: string;
5728
+ region: unknown;
5729
+ requestBody: ProviderSyncDto;
5007
5730
  };
5008
5731
 
5009
- export type ExchangeRateControllerGetExchangeRateResponse = unknown;
5732
+ export type ProviderSyncControllerSyncResponse = ProviderSyncResponseDto;
5010
5733
 
5011
- export type HealthControllerGetHealthData = {
5734
+ export type ProviderSyncControllerGetSupportedProvidersData = {
5012
5735
  /**
5013
- * Region code (cn, us, eu-core, de)
5736
+ * Region code for tenant context
5014
5737
  */
5015
- region: 'cn' | 'us' | 'eu-core' | 'de';
5738
+ region: 'cn' | 'us' | 'de' | 'gb';
5016
5739
  };
5017
5740
 
5018
- export type HealthControllerGetHealthResponse = unknown;
5741
+ export type ProviderSyncControllerGetSupportedProvidersResponse =
5742
+ SupportedProvidersResponseDto;
5019
5743
 
5020
- export type HealthControllerCheckDatabaseData = {
5744
+ export type ProviderSyncControllerIsProviderSupportedData = {
5021
5745
  /**
5022
- * Region code (cn, us, eu-core, de)
5746
+ * Provider name to check
5023
5747
  */
5024
- region: 'cn' | 'us' | 'eu-core' | 'de';
5025
- };
5026
-
5027
- export type HealthControllerCheckDatabaseResponse = unknown;
5028
-
5029
- export type HealthControllerCheckRedisData = {
5748
+ providerName: string;
5030
5749
  /**
5031
- * Region code (cn, us, eu-core, de)
5750
+ * Region code for tenant context
5032
5751
  */
5033
- region: 'cn' | 'us' | 'eu-core' | 'de';
5752
+ region: 'cn' | 'us' | 'de' | 'gb';
5034
5753
  };
5035
5754
 
5036
- export type HealthControllerCheckRedisResponse = unknown;
5755
+ export type ProviderSyncControllerIsProviderSupportedResponse = unknown;
5037
5756
 
5038
- export type HealthControllerGetCircuitBreakersHealthData = {
5757
+ export type TelemetryControllerReportTelemetryData = {
5039
5758
  /**
5040
- * Region code (cn, us, eu-core, de)
5759
+ * Region code for tenant context
5041
5760
  */
5042
- region: 'cn' | 'us' | 'eu-core' | 'de';
5761
+ region: 'cn' | 'us' | 'de' | 'gb';
5762
+ requestBody: ParserTelemetryReportDto;
5043
5763
  };
5044
5764
 
5045
- export type HealthControllerGetCircuitBreakersHealthResponse = unknown;
5765
+ export type TelemetryControllerReportTelemetryResponse = unknown;
5046
5766
 
5047
- export type HealthControllerResetCircuitBreakerData = {
5767
+ export type NlpControllerProcessNaturalLanguageData = {
5048
5768
  /**
5049
- * Circuit breaker name to reset
5769
+ * Region code for tenant context
5050
5770
  */
5051
- name: string;
5771
+ region: 'cn' | 'us' | 'de' | 'gb';
5052
5772
  /**
5053
- * Region code (cn, us, eu-core, de)
5773
+ * Natural language transaction input with optional session ID
5054
5774
  */
5055
- region: 'cn' | 'us' | 'eu-core' | 'de';
5775
+ requestBody: ProcessNlpDto;
5056
5776
  };
5057
5777
 
5058
- export type HealthControllerResetCircuitBreakerResponse = unknown;
5778
+ export type NlpControllerProcessNaturalLanguageResponse = NlpResponseDto;
5059
5779
 
5060
- export type HealthControllerGetMetricsData = {
5780
+ export type NlpControllerClearSessionData = {
5061
5781
  /**
5062
- * Region code (cn, us, eu-core, de)
5782
+ * Region code for tenant context
5783
+ */
5784
+ region: 'cn' | 'us' | 'de' | 'gb';
5785
+ /**
5786
+ * Specific session ID to clear (defaults to user session)
5063
5787
  */
5064
- region: 'cn' | 'us' | 'eu-core' | 'de';
5788
+ sessionId?: string;
5065
5789
  };
5066
5790
 
5067
- export type HealthControllerGetMetricsResponse = unknown;
5791
+ export type NlpControllerClearSessionResponse = void;
5068
5792
 
5069
- export type HealthControllerGetHealthOfDataEnhancerData = {
5793
+ export type NlpControllerGetSessionData = {
5070
5794
  /**
5071
- * Data enhancer name
5795
+ * Region code for tenant context
5072
5796
  */
5073
- name: string;
5797
+ region: 'cn' | 'us' | 'de' | 'gb';
5074
5798
  /**
5075
- * Region code (cn, us, eu-core, de)
5799
+ * Specific session ID to get (defaults to user session)
5076
5800
  */
5077
- region: 'cn' | 'us' | 'eu-core' | 'de';
5801
+ sessionId?: string;
5078
5802
  };
5079
5803
 
5080
- export type HealthControllerGetHealthOfDataEnhancerResponse = unknown;
5804
+ export type NlpControllerGetSessionResponse = unknown;
5081
5805
 
5082
- export type HealthControllerCheckDataProvidersData = {
5806
+ export type DashboardControllerGetNetWorthData = {
5807
+ /**
5808
+ * Date for balance calculation (ISO 8601 format)
5809
+ */
5810
+ date?: string;
5083
5811
  /**
5084
- * Region code (cn, us, eu-core, de)
5812
+ * Region code for tenant context
5085
5813
  */
5086
- region: 'cn' | 'us' | 'eu-core' | 'de';
5814
+ region: 'cn' | 'us' | 'de' | 'gb';
5087
5815
  };
5088
5816
 
5089
- export type HealthControllerCheckDataProvidersResponse = unknown;
5817
+ export type DashboardControllerGetNetWorthResponse = NetWorthResponseDto;
5090
5818
 
5091
- export type HealthControllerGetHealthOfDataProviderData = {
5819
+ export type DashboardControllerGetAccountsData = {
5820
+ /**
5821
+ * Date for balance calculation (ISO 8601 format)
5822
+ */
5823
+ date?: string;
5092
5824
  /**
5093
- * Data source identifier
5825
+ * Grouping strategy
5094
5826
  */
5095
- dataSource: string;
5827
+ groupBy?: 'platform' | 'assetClass';
5096
5828
  /**
5097
- * Region code (cn, us, eu-core, de)
5829
+ * Region code for tenant context
5098
5830
  */
5099
- region: 'cn' | 'us' | 'eu-core' | 'de';
5831
+ region: 'cn' | 'us' | 'de' | 'gb';
5100
5832
  };
5101
5833
 
5102
- export type HealthControllerGetHealthOfDataProviderResponse = unknown;
5834
+ export type DashboardControllerGetAccountsResponse =
5835
+ | AccountsResponseDto
5836
+ | AssetClassAccountsResponseDto;
5103
5837
 
5104
- export type InfoControllerGetInfoData = {
5838
+ export type DashboardControllerGetCashFlowData = {
5105
5839
  /**
5106
- * Region code (cn, us, eu-core, de)
5840
+ * Period in YYYY-MM format
5841
+ */
5842
+ period: string;
5843
+ /**
5844
+ * Region code for tenant context
5107
5845
  */
5108
- region: 'cn' | 'us' | 'eu-core' | 'de';
5846
+ region: 'cn' | 'us' | 'de' | 'gb';
5109
5847
  };
5110
5848
 
5111
- export type InfoControllerGetInfoResponse = unknown;
5849
+ export type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
5112
5850
 
5113
- export type LogoControllerGetLogoByDataSourceAndSymbolData = {
5851
+ export type ReportingControllerGetPortfolioTrendsData = {
5114
5852
  /**
5115
- * Data source identifier (e.g., YAHOO, COINGECKO)
5853
+ * Data granularity
5116
5854
  */
5117
- dataSource: string;
5855
+ granularity?: 'day' | 'week' | 'month';
5118
5856
  /**
5119
- * Region code (cn, us, eu-core, de)
5857
+ * Time period
5120
5858
  */
5121
- region: 'cn' | 'us' | 'eu-core' | 'de';
5859
+ period?: '1m' | '3m' | '6m' | '1y';
5122
5860
  /**
5123
- * Asset symbol (e.g., AAPL, BTC)
5861
+ * Region code for tenant context
5124
5862
  */
5125
- symbol: string;
5863
+ region: 'cn' | 'us' | 'de' | 'gb';
5126
5864
  };
5127
5865
 
5128
- export type LogoControllerGetLogoByDataSourceAndSymbolResponse = unknown;
5866
+ export type ReportingControllerGetPortfolioTrendsResponse =
5867
+ PortfolioTrendsResponseDto;
5129
5868
 
5130
- export type LogoControllerGetLogoByUrlData = {
5869
+ export type ReportingControllerGenerateSnapshotData = {
5131
5870
  /**
5132
- * Region code (cn, us, eu-core, de)
5871
+ * Region code for tenant context
5133
5872
  */
5134
- region: 'cn' | 'us' | 'eu-core' | 'de';
5873
+ region: 'cn' | 'us' | 'de' | 'gb';
5135
5874
  /**
5136
- * Website URL to fetch favicon from
5875
+ * Optional date (defaults to today)
5137
5876
  */
5138
- url: string;
5877
+ requestBody: GenerateSnapshotBody;
5139
5878
  };
5140
5879
 
5141
- export type LogoControllerGetLogoByUrlResponse = unknown;
5880
+ export type ReportingControllerGenerateSnapshotResponse =
5881
+ GenerateSnapshotResponse;
5142
5882
 
5143
- export type MarketDataControllerGetMarketDataBySymbolData = {
5883
+ export type ReportingControllerBackfillSnapshotsData = {
5144
5884
  /**
5145
- * Data source provider
5885
+ * Region code for tenant context
5146
5886
  */
5147
- dataSource:
5148
- | 'ALPHA_VANTAGE'
5149
- | 'EOD_HISTORICAL_DATA'
5150
- | 'FINANCIAL_MODELING_PREP'
5151
- | 'MANUAL'
5152
- | 'RAPID_API'
5153
- | 'YAHOO'
5154
- | 'COINGECKO'
5155
- | 'TUSHARE'
5156
- | 'BLOOMBERG'
5157
- | 'CSI'
5158
- | 'STOOQ'
5159
- | 'TRADING_VIEW';
5887
+ region: 'cn' | 'us' | 'de' | 'gb';
5888
+ requestBody: BackfillSnapshotsBody;
5889
+ };
5890
+
5891
+ export type ReportingControllerBackfillSnapshotsResponse =
5892
+ BackfillSnapshotsResponse;
5893
+
5894
+ export type ApiKeysControllerCreateApiKeyResponse = unknown;
5895
+
5896
+ export type AuthControllerAccessTokenLoginData = {
5897
+ requestBody: AnonymousLoginDto;
5898
+ };
5899
+
5900
+ export type AuthControllerAccessTokenLoginResponse = unknown;
5901
+
5902
+ export type CacheControllerFlushCacheResponse = unknown;
5903
+
5904
+ export type ExchangeRateControllerGetExchangeRateData = {
5160
5905
  /**
5161
- * Region code (cn, us, eu-core, de)
5906
+ * Date in ISO format (YYYY-MM-DD)
5162
5907
  */
5163
- region: 'cn' | 'us' | 'eu-core' | 'de';
5908
+ dateString: string;
5164
5909
  /**
5165
- * Symbol code
5910
+ * Currency pair symbol (e.g., USDCNY, EURUSD)
5166
5911
  */
5167
5912
  symbol: string;
5168
5913
  };
5169
5914
 
5170
- export type MarketDataControllerGetMarketDataBySymbolResponse = unknown;
5915
+ export type ExchangeRateControllerGetExchangeRateResponse = unknown;
5916
+
5917
+ export type HealthControllerGetHealthResponse = unknown;
5918
+
5919
+ export type HealthControllerCheckDatabaseResponse = unknown;
5920
+
5921
+ export type HealthControllerCheckOpenBbResponse = unknown;
5922
+
5923
+ export type HealthControllerCheckRedisResponse = unknown;
5171
5924
 
5172
- export type MarketDataControllerData = {
5925
+ export type HealthControllerGetCircuitBreakersHealthResponse = unknown;
5926
+
5927
+ export type HealthControllerResetCircuitBreakerData = {
5173
5928
  /**
5174
- * Region code (cn, us, eu-core, de)
5929
+ * Circuit breaker name to reset
5175
5930
  */
5176
- region: 'cn' | 'us' | 'eu-core' | 'de';
5931
+ name: string;
5177
5932
  };
5178
5933
 
5179
- export type MarketDataControllerResponse = unknown;
5934
+ export type HealthControllerResetCircuitBreakerResponse = unknown;
5935
+
5936
+ export type HealthControllerGetMetricsResponse = unknown;
5937
+
5938
+ export type InfoControllerGetInfoResponse = unknown;
5180
5939
 
5181
5940
  export type $OpenApiTs = {
5182
5941
  '/api/v1/{region}/bean/accounts': {
@@ -5286,6 +6045,39 @@ export type $OpenApiTs = {
5286
6045
  };
5287
6046
  };
5288
6047
  };
6048
+ '/api/v1/{region}/bean/account-standards': {
6049
+ get: {
6050
+ req: AccountStandardsControllerGetTemplatesData;
6051
+ res: {
6052
+ /**
6053
+ * Account templates retrieved successfully
6054
+ */
6055
+ 200: AccountStandardListResponseDto;
6056
+ };
6057
+ };
6058
+ };
6059
+ '/api/v1/{region}/bean/account-standards/template-metadata': {
6060
+ get: {
6061
+ req: AccountStandardsControllerGetTemplateMetadataData;
6062
+ res: {
6063
+ /**
6064
+ * Template metadata retrieved successfully
6065
+ */
6066
+ 200: TemplateMetadataResponseDto;
6067
+ };
6068
+ };
6069
+ };
6070
+ '/api/v1/{region}/bean/account-standards/regions': {
6071
+ get: {
6072
+ req: AccountStandardsControllerGetRegionsData;
6073
+ res: {
6074
+ /**
6075
+ * Regions metadata retrieved successfully
6076
+ */
6077
+ 200: RegionsMetadataResponseDto;
6078
+ };
6079
+ };
6080
+ };
5289
6081
  '/api/v1/{region}/bean/transactions': {
5290
6082
  post: {
5291
6083
  req: TransactionControllerCreateData;
@@ -5319,6 +6111,10 @@ export type $OpenApiTs = {
5319
6111
  * Transaction list
5320
6112
  */
5321
6113
  200: TransactionListResponseDto;
6114
+ /**
6115
+ * Validation failed
6116
+ */
6117
+ 400: ApiProblemResponseDto;
5322
6118
  /**
5323
6119
  * Authentication required
5324
6120
  */
@@ -5328,9 +6124,39 @@ export type $OpenApiTs = {
5328
6124
  };
5329
6125
  '/api/v1/{region}/bean/transactions/batch': {
5330
6126
  post: {
5331
- req: TransactionControllerData;
6127
+ req: TransactionControllerCreateBatchData;
5332
6128
  res: {
5333
- 201: unknown;
6129
+ /**
6130
+ * Transactions processed
6131
+ */
6132
+ 201: BatchTransactionResponseDto;
6133
+ /**
6134
+ * Invalid input
6135
+ */
6136
+ 400: ApiProblemResponseDto;
6137
+ /**
6138
+ * Authentication required
6139
+ */
6140
+ 401: ApiProblemResponseDto;
6141
+ };
6142
+ };
6143
+ };
6144
+ '/api/v1/{region}/bean/transactions/tags': {
6145
+ get: {
6146
+ req: TransactionControllerSuggestTagsData;
6147
+ res: {
6148
+ /**
6149
+ * Tag suggestions
6150
+ */
6151
+ 200: TagSuggestionsResponseDto;
6152
+ /**
6153
+ * Validation failed
6154
+ */
6155
+ 400: ApiProblemResponseDto;
6156
+ /**
6157
+ * Authentication required
6158
+ */
6159
+ 401: ApiProblemResponseDto;
5334
6160
  };
5335
6161
  };
5336
6162
  };
@@ -5374,33 +6200,24 @@ export type $OpenApiTs = {
5374
6200
  };
5375
6201
  };
5376
6202
  delete: {
5377
- req: TransactionController1Data;
6203
+ req: TransactionControllerDeleteData;
5378
6204
  res: {
6205
+ /**
6206
+ * Transaction voided successfully
6207
+ */
5379
6208
  204: void;
5380
- };
5381
- };
5382
- };
5383
- '/api/v1/{region}/bean/account-standards': {
5384
- get: {
5385
- req: AccountStandardsControllerGetTemplatesData;
5386
- res: {
5387
6209
  /**
5388
- * Account templates retrieved successfully
6210
+ * Transaction already voided
5389
6211
  */
5390
- 200: AccountStandardListResponseDto;
5391
- };
5392
- };
5393
- };
5394
- '/api/v1/{region}/bean/account-standards/regions': {
5395
- get: {
5396
- req: AccountStandardsControllerGetRegionsData;
5397
- res: {
6212
+ 400: ApiProblemResponseDto;
5398
6213
  /**
5399
- * Regions retrieved successfully
6214
+ * Authentication required
5400
6215
  */
5401
- 200: {
5402
- regions?: Array<string>;
5403
- };
6216
+ 401: ApiProblemResponseDto;
6217
+ /**
6218
+ * Transaction not found
6219
+ */
6220
+ 404: ApiProblemResponseDto;
5404
6221
  };
5405
6222
  };
5406
6223
  };
@@ -5468,33 +6285,44 @@ export type $OpenApiTs = {
5468
6285
  };
5469
6286
  '/api/v1/{region}/bean/reviews/{id}/resolve': {
5470
6287
  post: {
5471
- req: ReviewControllerData;
6288
+ req: ReviewControllerResolveData;
5472
6289
  res: {
5473
- 201: unknown;
6290
+ 200: ResolveResultDto;
5474
6291
  };
5475
6292
  };
5476
6293
  };
5477
6294
  '/api/v1/{region}/bean/reviews/{id}/undo': {
5478
6295
  post: {
5479
- req: ReviewController1Data;
6296
+ req: ReviewControllerUndoData;
5480
6297
  res: {
5481
- 201: unknown;
6298
+ 200: UndoResultDto;
5482
6299
  };
5483
6300
  };
5484
6301
  };
5485
6302
  '/api/v1/{region}/bean/reviews/batch-resolve': {
5486
6303
  post: {
5487
- req: ReviewController2Data;
6304
+ req: ReviewControllerBatchResolveData;
5488
6305
  res: {
5489
- 201: unknown;
6306
+ 200: BatchResolveResultDto;
5490
6307
  };
5491
6308
  };
5492
6309
  };
5493
6310
  '/api/v1/bean/payees': {
5494
6311
  post: {
5495
- req: PayeeControllerData;
6312
+ req: PayeeControllerCreateData;
5496
6313
  res: {
5497
- 201: unknown;
6314
+ /**
6315
+ * Payee created successfully
6316
+ */
6317
+ 201: PayeeResponseDto;
6318
+ /**
6319
+ * Invalid input data
6320
+ */
6321
+ 400: ApiProblemResponseDto;
6322
+ /**
6323
+ * Payee already exists
6324
+ */
6325
+ 409: ApiProblemResponseDto;
5498
6326
  };
5499
6327
  };
5500
6328
  get: {
@@ -5548,23 +6376,56 @@ export type $OpenApiTs = {
5548
6376
  };
5549
6377
  };
5550
6378
  put: {
5551
- req: PayeeController1Data;
6379
+ req: PayeeControllerUpdateData;
5552
6380
  res: {
5553
- 200: unknown;
6381
+ /**
6382
+ * Payee updated successfully
6383
+ */
6384
+ 200: PayeeResponseDto;
6385
+ /**
6386
+ * Invalid input data
6387
+ */
6388
+ 400: ApiProblemResponseDto;
6389
+ /**
6390
+ * Payee not found
6391
+ */
6392
+ 404: ApiProblemResponseDto;
5554
6393
  };
5555
6394
  };
5556
6395
  delete: {
5557
- req: PayeeController2Data;
6396
+ req: PayeeControllerDeleteData;
5558
6397
  res: {
6398
+ /**
6399
+ * Payee deleted successfully
6400
+ */
5559
6401
  204: void;
6402
+ /**
6403
+ * Payee not found
6404
+ */
6405
+ 404: ApiProblemResponseDto;
5560
6406
  };
5561
6407
  };
5562
6408
  };
5563
6409
  '/api/v1/admin/payee-profiles': {
5564
6410
  post: {
5565
- req: PayeeProfileAdminControllerData;
6411
+ req: PayeeProfileAdminControllerCreateData;
5566
6412
  res: {
5567
- 201: unknown;
6413
+ /**
6414
+ * Payee profile created successfully
6415
+ */
6416
+ 201: PayeeProfileResponseDto;
6417
+ /**
6418
+ * Validation failed
6419
+ */
6420
+ 400: ApiProblemResponseDto;
6421
+ /**
6422
+ * Admin access required
6423
+ */
6424
+ 403: ApiProblemResponseDto;
6425
+ /**
6426
+ * Payee profile already exists
6427
+ */
6428
+ 409: ApiProblemResponseDto;
5568
6429
  };
5569
6430
  };
5570
6431
  get: {
@@ -5600,37 +6461,96 @@ export type $OpenApiTs = {
5600
6461
  };
5601
6462
  };
5602
6463
  put: {
5603
- req: PayeeProfileAdminController1Data;
6464
+ req: PayeeProfileAdminControllerUpdateData;
5604
6465
  res: {
5605
- 200: unknown;
6466
+ /**
6467
+ * Payee profile updated successfully
6468
+ */
6469
+ 200: PayeeProfileResponseDto;
6470
+ /**
6471
+ * Admin access required
6472
+ */
6473
+ 403: ApiProblemResponseDto;
6474
+ /**
6475
+ * Payee profile not found
6476
+ */
6477
+ 404: ApiProblemResponseDto;
5606
6478
  };
5607
6479
  };
5608
6480
  delete: {
5609
- req: PayeeProfileAdminController2Data;
6481
+ req: PayeeProfileAdminControllerDeleteData;
5610
6482
  res: {
6483
+ /**
6484
+ * Payee profile deleted successfully
6485
+ */
5611
6486
  204: void;
6487
+ /**
6488
+ * Admin access required
6489
+ */
6490
+ 403: ApiProblemResponseDto;
6491
+ /**
6492
+ * Payee profile not found
6493
+ */
6494
+ 404: ApiProblemResponseDto;
6495
+ /**
6496
+ * Payee profile is in use and cannot be deleted
6497
+ */
6498
+ 409: ApiProblemResponseDto;
5612
6499
  };
5613
6500
  };
5614
6501
  };
5615
6502
  '/api/v1/admin/payee-profiles/{id}/verify': {
5616
6503
  post: {
5617
- req: PayeeProfileAdminController3Data;
6504
+ req: PayeeProfileAdminControllerVerifyData;
5618
6505
  res: {
5619
- 201: unknown;
6506
+ /**
6507
+ * Payee profile verified successfully
6508
+ */
6509
+ 201: PayeeProfileResponseDto;
6510
+ /**
6511
+ * Admin access required
6512
+ */
6513
+ 403: ApiProblemResponseDto;
6514
+ /**
6515
+ * Payee profile not found
6516
+ */
6517
+ 404: ApiProblemResponseDto;
5620
6518
  };
5621
6519
  };
5622
6520
  delete: {
5623
- req: PayeeProfileAdminController4Data;
6521
+ req: PayeeProfileAdminControllerUnverifyData;
5624
6522
  res: {
5625
- 200: unknown;
6523
+ /**
6524
+ * Payee profile unverified successfully
6525
+ */
6526
+ 200: PayeeProfileResponseDto;
6527
+ /**
6528
+ * Admin access required
6529
+ */
6530
+ 403: ApiProblemResponseDto;
6531
+ /**
6532
+ * Payee profile not found
6533
+ */
6534
+ 404: ApiProblemResponseDto;
5626
6535
  };
5627
6536
  };
5628
6537
  };
5629
6538
  '/api/v1/{region}/bean/commodities': {
5630
6539
  post: {
5631
- req: CommodityControllerData;
6540
+ req: CommodityControllerCreateData;
5632
6541
  res: {
5633
- 201: unknown;
6542
+ /**
6543
+ * Commodity created successfully
6544
+ */
6545
+ 201: CommodityResponseDto;
6546
+ /**
6547
+ * Invalid input data
6548
+ */
6549
+ 400: ApiProblemResponseDto;
6550
+ /**
6551
+ * Commodity already exists
6552
+ */
6553
+ 409: ApiProblemResponseDto;
5634
6554
  };
5635
6555
  };
5636
6556
  get: {
@@ -5658,39 +6578,74 @@ export type $OpenApiTs = {
5658
6578
  };
5659
6579
  };
5660
6580
  put: {
5661
- req: CommodityController1Data;
6581
+ req: CommodityControllerUpdateData;
5662
6582
  res: {
5663
- 200: unknown;
6583
+ /**
6584
+ * Commodity updated successfully
6585
+ */
6586
+ 200: CommodityResponseDto;
6587
+ /**
6588
+ * Invalid input data
6589
+ */
6590
+ 400: ApiProblemResponseDto;
6591
+ /**
6592
+ * Commodity not found
6593
+ */
6594
+ 404: ApiProblemResponseDto;
5664
6595
  };
5665
6596
  };
5666
6597
  delete: {
5667
- req: CommodityController2Data;
6598
+ req: CommodityControllerDeleteData;
5668
6599
  res: {
6600
+ /**
6601
+ * Commodity deleted successfully
6602
+ */
5669
6603
  204: void;
6604
+ /**
6605
+ * Commodity not found
6606
+ */
6607
+ 404: ApiProblemResponseDto;
5670
6608
  };
5671
6609
  };
5672
6610
  };
5673
6611
  '/api/v1/{region}/bean/commodities/{symbol}/ensure': {
5674
6612
  post: {
5675
- req: CommodityController3Data;
6613
+ req: CommodityControllerGetOrCreateData;
5676
6614
  res: {
5677
- 201: unknown;
6615
+ /**
6616
+ * Commodity retrieved or created
6617
+ */
6618
+ 200: CommodityResponseDto;
5678
6619
  };
5679
6620
  };
5680
6621
  };
5681
6622
  '/api/v1/{region}/bean/commodities/bulk': {
5682
6623
  post: {
5683
- req: CommodityController4Data;
6624
+ req: CommodityControllerBulkCreateData;
5684
6625
  res: {
5685
- 201: unknown;
6626
+ /**
6627
+ * Commodities created successfully
6628
+ */
6629
+ 201: Array<CommodityResponseDto>;
5686
6630
  };
5687
6631
  };
5688
6632
  };
5689
6633
  '/api/v1/{region}/bean/recurring-rules': {
5690
6634
  post: {
5691
- req: RecurringRuleControllerData;
6635
+ req: RecurringRuleControllerCreateData;
5692
6636
  res: {
5693
- 201: unknown;
6637
+ /**
6638
+ * Rule created successfully
6639
+ */
6640
+ 201: RecurringRuleResponseDto;
6641
+ /**
6642
+ * Invalid input data (e.g., autoCreate without accounts)
6643
+ */
6644
+ 400: unknown;
6645
+ /**
6646
+ * Rule with same name already exists
6647
+ */
6648
+ 409: unknown;
5694
6649
  };
5695
6650
  };
5696
6651
  get: {
@@ -5705,9 +6660,20 @@ export type $OpenApiTs = {
5705
6660
  };
5706
6661
  '/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}': {
5707
6662
  post: {
5708
- req: RecurringRuleController1Data;
6663
+ req: RecurringRuleControllerCreateFromTransactionData;
5709
6664
  res: {
5710
- 201: unknown;
6665
+ /**
6666
+ * Rule created successfully
6667
+ */
6668
+ 201: RecurringRuleResponseDto;
6669
+ /**
6670
+ * Transaction not found
6671
+ */
6672
+ 404: ApiProblemResponseDto;
6673
+ /**
6674
+ * Rule with same name already exists or transaction already linked
6675
+ */
6676
+ 409: ApiProblemResponseDto;
5711
6677
  };
5712
6678
  };
5713
6679
  };
@@ -5726,15 +6692,33 @@ export type $OpenApiTs = {
5726
6692
  };
5727
6693
  };
5728
6694
  patch: {
5729
- req: RecurringRuleController2Data;
6695
+ req: RecurringRuleControllerUpdateData;
5730
6696
  res: {
5731
- 200: unknown;
6697
+ /**
6698
+ * Rule updated successfully
6699
+ */
6700
+ 200: RecurringRuleResponseDto;
6701
+ /**
6702
+ * Invalid input data
6703
+ */
6704
+ 400: unknown;
6705
+ /**
6706
+ * Rule not found
6707
+ */
6708
+ 404: unknown;
5732
6709
  };
5733
6710
  };
5734
6711
  delete: {
5735
- req: RecurringRuleController3Data;
6712
+ req: RecurringRuleControllerDeleteData;
5736
6713
  res: {
6714
+ /**
6715
+ * Rule deleted successfully
6716
+ */
5737
6717
  204: void;
6718
+ /**
6719
+ * Rule not found
6720
+ */
6721
+ 404: unknown;
5738
6722
  };
5739
6723
  };
5740
6724
  };
@@ -5792,37 +6776,96 @@ export type $OpenApiTs = {
5792
6776
  };
5793
6777
  '/api/v1/{region}/bean/expected-transactions/{id}/skip': {
5794
6778
  post: {
5795
- req: ExpectedTransactionControllerData;
6779
+ req: ExpectedTransactionControllerSkipData;
5796
6780
  res: {
5797
- 200: unknown;
6781
+ /**
6782
+ * Expected transaction skipped successfully
6783
+ */
6784
+ 200: ExpectedTransactionResponseDto;
6785
+ /**
6786
+ * Cannot skip - not in PENDING status
6787
+ */
6788
+ 400: unknown;
6789
+ /**
6790
+ * Expected transaction not found
6791
+ */
6792
+ 404: unknown;
5798
6793
  };
5799
6794
  };
5800
6795
  delete: {
5801
- req: ExpectedTransactionController1Data;
6796
+ req: ExpectedTransactionControllerUndoSkipData;
5802
6797
  res: {
5803
- 200: unknown;
6798
+ /**
6799
+ * Skip undone successfully
6800
+ */
6801
+ 200: ExpectedTransactionResponseDto;
6802
+ /**
6803
+ * Cannot undo - not in SKIPPED status
6804
+ */
6805
+ 400: unknown;
6806
+ /**
6807
+ * Expected transaction not found
6808
+ */
6809
+ 404: unknown;
5804
6810
  };
5805
6811
  };
5806
6812
  };
5807
6813
  '/api/v1/{region}/bean/expected-transactions/{id}/match': {
5808
6814
  post: {
5809
- req: ExpectedTransactionController2Data;
6815
+ req: ExpectedTransactionControllerConfirmMatchData;
5810
6816
  res: {
6817
+ /**
6818
+ * Match confirmed successfully
6819
+ */
5811
6820
  200: unknown;
6821
+ /**
6822
+ * Cannot match - not in PENDING status
6823
+ */
6824
+ 400: unknown;
6825
+ /**
6826
+ * Expected or actual transaction not found
6827
+ */
6828
+ 404: unknown;
6829
+ /**
6830
+ * Actual transaction already matched to another rule
6831
+ */
6832
+ 409: unknown;
5812
6833
  };
5813
6834
  };
5814
6835
  delete: {
5815
- req: ExpectedTransactionController3Data;
6836
+ req: ExpectedTransactionControllerUnmatchData;
5816
6837
  res: {
6838
+ /**
6839
+ * Match removed successfully
6840
+ */
5817
6841
  200: unknown;
6842
+ /**
6843
+ * Cannot unmatch - not in COMPLETED status
6844
+ */
6845
+ 400: unknown;
6846
+ /**
6847
+ * Expected transaction not found
6848
+ */
6849
+ 404: unknown;
5818
6850
  };
5819
6851
  };
5820
6852
  };
5821
6853
  '/api/v1/{region}/bean/expected-transactions/{id}/enter': {
5822
6854
  post: {
5823
- req: ExpectedTransactionController4Data;
6855
+ req: ExpectedTransactionControllerEnterNowData;
5824
6856
  res: {
6857
+ /**
6858
+ * Transaction created successfully
6859
+ */
5825
6860
  201: unknown;
6861
+ /**
6862
+ * Cannot enter - not in PENDING status or missing accounts
6863
+ */
6864
+ 400: unknown;
6865
+ /**
6866
+ * Expected transaction or accounts not found
6867
+ */
6868
+ 404: unknown;
5826
6869
  };
5827
6870
  };
5828
6871
  };
@@ -5839,9 +6882,24 @@ export type $OpenApiTs = {
5839
6882
  };
5840
6883
  '/api/v1/{region}/bean/transaction-rules': {
5841
6884
  post: {
5842
- req: TransactionRuleControllerData;
6885
+ req: TransactionRuleControllerCreateData;
5843
6886
  res: {
5844
- 201: unknown;
6887
+ /**
6888
+ * Rule updated successfully (upsert mode)
6889
+ */
6890
+ 200: TransactionRuleResponseDto;
6891
+ /**
6892
+ * Validation failed
6893
+ */
6894
+ 400: ApiProblemResponseDto;
6895
+ /**
6896
+ * Unauthorized
6897
+ */
6898
+ 401: ApiProblemResponseDto;
6899
+ /**
6900
+ * Resource conflict - another process is updating this rule
6901
+ */
6902
+ 409: ApiProblemResponseDto;
5845
6903
  };
5846
6904
  };
5847
6905
  get: {
@@ -5866,6 +6924,10 @@ export type $OpenApiTs = {
5866
6924
  * Validation result
5867
6925
  */
5868
6926
  200: ValidateRuleResponseDto;
6927
+ /**
6928
+ * Validation failed
6929
+ */
6930
+ 400: ApiProblemResponseDto;
5869
6931
  /**
5870
6932
  * Unauthorized
5871
6933
  */
@@ -5875,9 +6937,20 @@ export type $OpenApiTs = {
5875
6937
  };
5876
6938
  '/api/v1/{region}/bean/transaction-rules/bulk': {
5877
6939
  post: {
5878
- req: TransactionRuleController1Data;
6940
+ req: TransactionRuleControllerBulkCreateData;
5879
6941
  res: {
5880
- 201: unknown;
6942
+ /**
6943
+ * Bulk create completed
6944
+ */
6945
+ 201: BulkCreateRulesResponseDto;
6946
+ /**
6947
+ * Invalid bulk create data
6948
+ */
6949
+ 400: ApiProblemResponseDto;
6950
+ /**
6951
+ * Unauthorized
6952
+ */
6953
+ 401: ApiProblemResponseDto;
5881
6954
  };
5882
6955
  };
5883
6956
  };
@@ -5938,15 +7011,57 @@ export type $OpenApiTs = {
5938
7011
  };
5939
7012
  };
5940
7013
  put: {
5941
- req: TransactionRuleController2Data;
7014
+ req: TransactionRuleControllerUpdateData;
5942
7015
  res: {
5943
- 200: unknown;
7016
+ /**
7017
+ * Rule updated successfully
7018
+ */
7019
+ 200: TransactionRuleResponseDto;
7020
+ /**
7021
+ * Validation failed
7022
+ */
7023
+ 400: ApiProblemResponseDto;
7024
+ /**
7025
+ * Unauthorized
7026
+ */
7027
+ 401: ApiProblemResponseDto;
7028
+ /**
7029
+ * Forbidden - not owner of rule
7030
+ */
7031
+ 403: ApiProblemResponseDto;
7032
+ /**
7033
+ * Rule not found
7034
+ */
7035
+ 404: ApiProblemResponseDto;
7036
+ /**
7037
+ * Resource conflict - rule is being modified by another process
7038
+ */
7039
+ 409: ApiProblemResponseDto;
5944
7040
  };
5945
7041
  };
5946
7042
  delete: {
5947
- req: TransactionRuleController3Data;
7043
+ req: TransactionRuleControllerDeleteData;
5948
7044
  res: {
7045
+ /**
7046
+ * Rule deleted successfully
7047
+ */
5949
7048
  204: void;
7049
+ /**
7050
+ * Unauthorized
7051
+ */
7052
+ 401: ApiProblemResponseDto;
7053
+ /**
7054
+ * Forbidden - not owner of rule
7055
+ */
7056
+ 403: ApiProblemResponseDto;
7057
+ /**
7058
+ * Rule not found
7059
+ */
7060
+ 404: ApiProblemResponseDto;
7061
+ /**
7062
+ * Resource conflict - rule is being modified by another process
7063
+ */
7064
+ 409: ApiProblemResponseDto;
5950
7065
  };
5951
7066
  };
5952
7067
  };
@@ -6072,7 +7187,6 @@ export type $OpenApiTs = {
6072
7187
  };
6073
7188
  '/api/v1/users/asset-liability-summary': {
6074
7189
  get: {
6075
- req: UserControllerGetAssetLiabilitySummaryData;
6076
7190
  res: {
6077
7191
  /**
6078
7192
  * Summary retrieved successfully
@@ -6083,7 +7197,6 @@ export type $OpenApiTs = {
6083
7197
  };
6084
7198
  '/api/v1/admin/properties': {
6085
7199
  get: {
6086
- req: PropertyControllerGetAllData;
6087
7200
  res: {
6088
7201
  /**
6089
7202
  * Properties retrieved successfully
@@ -6123,15 +7236,48 @@ export type $OpenApiTs = {
6123
7236
  };
6124
7237
  };
6125
7238
  put: {
6126
- req: PropertyControllerData;
7239
+ req: PropertyControllerUpdateData;
6127
7240
  res: {
7241
+ /**
7242
+ * Property updated successfully
7243
+ */
6128
7244
  200: unknown;
7245
+ /**
7246
+ * Unauthorized
7247
+ */
7248
+ 401: unknown;
7249
+ /**
7250
+ * Forbidden - insufficient permissions
7251
+ */
7252
+ 403: unknown;
6129
7253
  };
6130
7254
  };
6131
7255
  delete: {
6132
- req: PropertyController1Data;
7256
+ req: PropertyControllerDeleteData;
6133
7257
  res: {
7258
+ /**
7259
+ * Property deleted successfully
7260
+ */
6134
7261
  204: void;
7262
+ /**
7263
+ * Unauthorized
7264
+ */
7265
+ 401: unknown;
7266
+ /**
7267
+ * Forbidden - insufficient permissions
7268
+ */
7269
+ 403: unknown;
7270
+ /**
7271
+ * Property not found
7272
+ */
7273
+ 404: unknown;
7274
+ };
7275
+ };
7276
+ };
7277
+ '/api/v1/{region}/bean/export/beancount': {
7278
+ get: {
7279
+ res: {
7280
+ 200: unknown;
6135
7281
  };
6136
7282
  };
6137
7283
  };
@@ -6204,6 +7350,29 @@ export type $OpenApiTs = {
6204
7350
  };
6205
7351
  };
6206
7352
  };
7353
+ '/api/v1/{region}/bean/import/beancount': {
7354
+ post: {
7355
+ req: FileImportControllerImportBeancountData;
7356
+ res: {
7357
+ /**
7358
+ * Beancount file imported successfully
7359
+ */
7360
+ 200: {
7361
+ imported?: number;
7362
+ skipped?: number;
7363
+ failed?: number;
7364
+ accountsCreated?: number;
7365
+ errors?: Array<{
7366
+ [key: string]: unknown;
7367
+ }>;
7368
+ };
7369
+ /**
7370
+ * Bad request - invalid file or no file uploaded
7371
+ */
7372
+ 400: ApiProblemResponseDto;
7373
+ };
7374
+ };
7375
+ };
6207
7376
  '/api/v1/{region}/bean/import/config/{importerId}': {
6208
7377
  get: {
6209
7378
  req: ImporterConfigControllerGetConfigData;
@@ -6215,25 +7384,115 @@ export type $OpenApiTs = {
6215
7384
  /**
6216
7385
  * Invalid input - Unsupported importer
6217
7386
  */
6218
- 400: ApiProblemResponseDto;
7387
+ 400: ApiProblemResponseDto;
7388
+ /**
7389
+ * Unauthorized - Authentication required
7390
+ */
7391
+ 401: ApiProblemResponseDto;
7392
+ };
7393
+ };
7394
+ put: {
7395
+ req: ImporterConfigControllerUpdateConfigData;
7396
+ res: {
7397
+ /**
7398
+ * Configuration updated successfully
7399
+ */
7400
+ 200: ImporterConfigDto;
7401
+ /**
7402
+ * Invalid input - Validation failed
7403
+ */
7404
+ 400: ApiProblemResponseDto;
7405
+ /**
7406
+ * Configuration not found
7407
+ */
7408
+ 404: ApiProblemResponseDto;
7409
+ };
7410
+ };
7411
+ };
7412
+ '/api/v1/{region}/bean/import/config/{importerId}/reset': {
7413
+ post: {
7414
+ req: ImporterConfigControllerResetConfigData;
7415
+ res: {
7416
+ /**
7417
+ * Configuration reset successfully
7418
+ */
7419
+ 200: ImporterConfigDto;
7420
+ /**
7421
+ * Invalid input - Unsupported importer
7422
+ */
7423
+ 400: ApiProblemResponseDto;
7424
+ };
7425
+ };
7426
+ };
7427
+ '/api/v1/bean/platforms': {
7428
+ get: {
7429
+ res: {
7430
+ /**
7431
+ * List of platforms with binding and account counts
7432
+ */
7433
+ 200: unknown;
7434
+ };
7435
+ };
7436
+ post: {
7437
+ req: PlatformControllerCreateData;
7438
+ res: {
7439
+ /**
7440
+ * Platform created successfully
7441
+ */
7442
+ 201: unknown;
7443
+ /**
7444
+ * Platform already exists
7445
+ */
7446
+ 409: unknown;
7447
+ };
7448
+ };
7449
+ };
7450
+ '/api/v1/bean/platforms/list': {
7451
+ get: {
7452
+ res: {
7453
+ /**
7454
+ * List of platforms with user binding status
7455
+ */
7456
+ 200: unknown;
7457
+ };
7458
+ };
7459
+ };
7460
+ '/api/v1/bean/platforms/match': {
7461
+ get: {
7462
+ req: PlatformControllerMatchPlatformsData;
7463
+ res: {
6219
7464
  /**
6220
- * Unauthorized - Authentication required
7465
+ * List of matching platforms with suggested segment names
6221
7466
  */
6222
- 401: ApiProblemResponseDto;
7467
+ 200: unknown;
6223
7468
  };
6224
7469
  };
7470
+ };
7471
+ '/api/v1/bean/platforms/{id}': {
6225
7472
  put: {
6226
- req: ImporterConfigControllerData;
7473
+ req: PlatformControllerUpdateData;
6227
7474
  res: {
7475
+ /**
7476
+ * Platform updated successfully
7477
+ */
6228
7478
  200: unknown;
7479
+ /**
7480
+ * Platform not found
7481
+ */
7482
+ 404: unknown;
6229
7483
  };
6230
7484
  };
6231
- };
6232
- '/api/v1/{region}/bean/import/config/{importerId}/reset': {
6233
- post: {
6234
- req: ImporterConfigController1Data;
7485
+ delete: {
7486
+ req: PlatformControllerDeleteData;
6235
7487
  res: {
6236
- 201: unknown;
7488
+ /**
7489
+ * Platform deleted successfully
7490
+ */
7491
+ 204: void;
7492
+ /**
7493
+ * Platform not found
7494
+ */
7495
+ 404: unknown;
6237
7496
  };
6238
7497
  };
6239
7498
  };
@@ -6290,6 +7549,21 @@ export type $OpenApiTs = {
6290
7549
  };
6291
7550
  };
6292
7551
  };
7552
+ '/api/v1/{region}/bean/import/parser-telemetry': {
7553
+ post: {
7554
+ req: TelemetryControllerReportTelemetryData;
7555
+ res: {
7556
+ /**
7557
+ * Telemetry report received
7558
+ */
7559
+ 200: unknown;
7560
+ /**
7561
+ * Unauthorized
7562
+ */
7563
+ 401: unknown;
7564
+ };
7565
+ };
7566
+ };
6293
7567
  '/api/v1/{region}/bean/nlp/process': {
6294
7568
  post: {
6295
7569
  req: NlpControllerProcessNaturalLanguageData;
@@ -6337,117 +7611,6 @@ export type $OpenApiTs = {
6337
7611
  };
6338
7612
  };
6339
7613
  };
6340
- '/api/v1/bean/platforms': {
6341
- get: {
6342
- req: PlatformControllerFindAllData;
6343
- res: {
6344
- /**
6345
- * List of platforms with binding and account counts
6346
- */
6347
- 200: unknown;
6348
- };
6349
- };
6350
- post: {
6351
- req: PlatformControllerData;
6352
- res: {
6353
- 201: unknown;
6354
- };
6355
- };
6356
- };
6357
- '/api/v1/bean/platforms/list': {
6358
- get: {
6359
- req: PlatformControllerGetPlatformListData;
6360
- res: {
6361
- /**
6362
- * List of platforms with user binding status
6363
- */
6364
- 200: unknown;
6365
- };
6366
- };
6367
- };
6368
- '/api/v1/bean/platforms/{id}': {
6369
- put: {
6370
- req: PlatformController1Data;
6371
- res: {
6372
- 200: unknown;
6373
- };
6374
- };
6375
- delete: {
6376
- req: PlatformController2Data;
6377
- res: {
6378
- 204: void;
6379
- };
6380
- };
6381
- };
6382
- '/api/v1/market/symbols/lookup': {
6383
- get: {
6384
- req: SymbolControllerLookupSymbolData;
6385
- res: {
6386
- /**
6387
- * Symbols found successfully
6388
- */
6389
- 200: unknown;
6390
- /**
6391
- * Invalid query parameters
6392
- */
6393
- 400: unknown;
6394
- };
6395
- };
6396
- };
6397
- '/api/v1/market/symbols/{dataSource}/{symbol}': {
6398
- get: {
6399
- req: SymbolControllerGetSymbolDataData;
6400
- res: {
6401
- /**
6402
- * Symbol data retrieved successfully
6403
- */
6404
- 200: unknown;
6405
- /**
6406
- * Invalid data source
6407
- */
6408
- 400: unknown;
6409
- /**
6410
- * Symbol not found
6411
- */
6412
- 404: unknown;
6413
- };
6414
- };
6415
- };
6416
- '/api/v1/market/symbols/{dataSource}/{symbol}/{dateString}': {
6417
- get: {
6418
- req: SymbolControllerGatherSymbolForDateData;
6419
- res: {
6420
- /**
6421
- * Historical data retrieved successfully
6422
- */
6423
- 200: unknown;
6424
- /**
6425
- * Invalid date format
6426
- */
6427
- 400: unknown;
6428
- /**
6429
- * Symbol data not found for specified date
6430
- */
6431
- 404: unknown;
6432
- };
6433
- };
6434
- };
6435
- '/api/v1/market/symbols/yahoo/batch-update': {
6436
- put: {
6437
- req: SymbolControllerData;
6438
- res: {
6439
- 200: unknown;
6440
- };
6441
- };
6442
- };
6443
- '/api/v1/cache/flush': {
6444
- post: {
6445
- req: CacheControllerFlushCacheData;
6446
- res: {
6447
- 201: unknown;
6448
- };
6449
- };
6450
- };
6451
7614
  '/api/v1/{region}/dashboard/net-worth': {
6452
7615
  get: {
6453
7616
  req: DashboardControllerGetNetWorthData;
@@ -6556,9 +7719,15 @@ export type $OpenApiTs = {
6556
7719
  };
6557
7720
  '/api/v1/auth/api-keys': {
6558
7721
  post: {
6559
- req: ApiKeysControllerData;
6560
7722
  res: {
7723
+ /**
7724
+ * API key created successfully
7725
+ */
6561
7726
  201: unknown;
7727
+ /**
7728
+ * Insufficient permissions to create API key
7729
+ */
7730
+ 403: unknown;
6562
7731
  };
6563
7732
  };
6564
7733
  };
@@ -6577,6 +7746,13 @@ export type $OpenApiTs = {
6577
7746
  };
6578
7747
  };
6579
7748
  };
7749
+ '/api/v1/cache/flush': {
7750
+ post: {
7751
+ res: {
7752
+ 201: unknown;
7753
+ };
7754
+ };
7755
+ };
6580
7756
  '/api/v1/market/exchange-rates/{symbol}/{dateString}': {
6581
7757
  get: {
6582
7758
  req: ExchangeRateControllerGetExchangeRateData;
@@ -6594,7 +7770,6 @@ export type $OpenApiTs = {
6594
7770
  };
6595
7771
  '/api/v1/health': {
6596
7772
  get: {
6597
- req: HealthControllerGetHealthData;
6598
7773
  res: {
6599
7774
  /**
6600
7775
  * Service is healthy
@@ -6609,7 +7784,6 @@ export type $OpenApiTs = {
6609
7784
  };
6610
7785
  '/api/v1/health/database': {
6611
7786
  get: {
6612
- req: HealthControllerCheckDatabaseData;
6613
7787
  res: {
6614
7788
  /**
6615
7789
  * Database is healthy
@@ -6622,9 +7796,22 @@ export type $OpenApiTs = {
6622
7796
  };
6623
7797
  };
6624
7798
  };
7799
+ '/api/v1/health/openbb': {
7800
+ get: {
7801
+ res: {
7802
+ /**
7803
+ * OpenBB status
7804
+ */
7805
+ 200: unknown;
7806
+ /**
7807
+ * OpenBB unavailable
7808
+ */
7809
+ 503: unknown;
7810
+ };
7811
+ };
7812
+ };
6625
7813
  '/api/v1/health/redis': {
6626
7814
  get: {
6627
- req: HealthControllerCheckRedisData;
6628
7815
  res: {
6629
7816
  /**
6630
7817
  * Redis is healthy
@@ -6639,7 +7826,6 @@ export type $OpenApiTs = {
6639
7826
  };
6640
7827
  '/api/v1/health/circuit-breakers': {
6641
7828
  get: {
6642
- req: HealthControllerGetCircuitBreakersHealthData;
6643
7829
  res: {
6644
7830
  /**
6645
7831
  * Circuit breaker status
@@ -6677,7 +7863,6 @@ export type $OpenApiTs = {
6677
7863
  };
6678
7864
  '/api/v1/health/metrics': {
6679
7865
  get: {
6680
- req: HealthControllerGetMetricsData;
6681
7866
  res: {
6682
7867
  /**
6683
7868
  * Health metrics
@@ -6690,70 +7875,8 @@ export type $OpenApiTs = {
6690
7875
  };
6691
7876
  };
6692
7877
  };
6693
- '/api/v1/health/data-enhancer/{name}': {
6694
- get: {
6695
- req: HealthControllerGetHealthOfDataEnhancerData;
6696
- res: {
6697
- /**
6698
- * Data enhancer is healthy
6699
- */
6700
- 200: unknown;
6701
- /**
6702
- * Unauthorized
6703
- */
6704
- 401: unknown;
6705
- /**
6706
- * Data enhancer unavailable
6707
- */
6708
- 503: unknown;
6709
- };
6710
- };
6711
- };
6712
- '/api/v1/health/data-providers': {
6713
- get: {
6714
- req: HealthControllerCheckDataProvidersData;
6715
- res: {
6716
- /**
6717
- * Data providers health status
6718
- */
6719
- 200: unknown;
6720
- /**
6721
- * Unauthorized
6722
- */
6723
- 401: unknown;
6724
- /**
6725
- * Data providers check failed
6726
- */
6727
- 503: unknown;
6728
- };
6729
- };
6730
- };
6731
- '/api/v1/health/data-provider/{dataSource}': {
6732
- get: {
6733
- req: HealthControllerGetHealthOfDataProviderData;
6734
- res: {
6735
- /**
6736
- * Data provider is healthy
6737
- */
6738
- 200: unknown;
6739
- /**
6740
- * Invalid data source
6741
- */
6742
- 400: unknown;
6743
- /**
6744
- * Unauthorized
6745
- */
6746
- 401: unknown;
6747
- /**
6748
- * Data provider unavailable
6749
- */
6750
- 503: unknown;
6751
- };
6752
- };
6753
- };
6754
7878
  '/api/v1/system/info': {
6755
7879
  get: {
6756
- req: InfoControllerGetInfoData;
6757
7880
  res: {
6758
7881
  /**
6759
7882
  * System information retrieved successfully
@@ -6762,71 +7885,4 @@ export type $OpenApiTs = {
6762
7885
  };
6763
7886
  };
6764
7887
  };
6765
- '/api/v1/market/logos/{dataSource}/{symbol}': {
6766
- get: {
6767
- req: LogoControllerGetLogoByDataSourceAndSymbolData;
6768
- res: {
6769
- /**
6770
- * Logo image stream (favicon)
6771
- */
6772
- 200: unknown;
6773
- /**
6774
- * Unauthorized
6775
- */
6776
- 401: unknown;
6777
- /**
6778
- * Logo not found for the specified asset
6779
- */
6780
- 404: unknown;
6781
- /**
6782
- * Service unavailable
6783
- */
6784
- 503: unknown;
6785
- };
6786
- };
6787
- };
6788
- '/api/v1/market/logos': {
6789
- get: {
6790
- req: LogoControllerGetLogoByUrlData;
6791
- res: {
6792
- /**
6793
- * Logo image stream (favicon)
6794
- */
6795
- 200: unknown;
6796
- /**
6797
- * Unauthorized
6798
- */
6799
- 401: unknown;
6800
- /**
6801
- * Service unavailable
6802
- */
6803
- 503: unknown;
6804
- };
6805
- };
6806
- };
6807
- '/api/v1/market-data/{dataSource}/{symbol}': {
6808
- get: {
6809
- req: MarketDataControllerGetMarketDataBySymbolData;
6810
- res: {
6811
- /**
6812
- * Market data retrieved successfully
6813
- */
6814
- 200: unknown;
6815
- /**
6816
- * Insufficient permissions to read market data
6817
- */
6818
- 403: unknown;
6819
- /**
6820
- * Market data not found
6821
- */
6822
- 404: unknown;
6823
- };
6824
- };
6825
- post: {
6826
- req: MarketDataControllerData;
6827
- res: {
6828
- 201: unknown;
6829
- };
6830
- };
6831
- };
6832
7888
  };