@firela/api-types 0.0.0-canary.b3b7767b → 0.0.0-canary.cf050c09

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,88 @@ 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
+
564
+ export type CorrectTransactionDto = {
565
+ /**
566
+ * Transaction date (ISO 8601 format)
567
+ */
568
+ date: string;
569
+ /**
570
+ * Transaction flag: * (cleared), ! (pending)
571
+ */
572
+ flag?: '*' | '!';
573
+ /**
574
+ * Payee name
575
+ */
576
+ payee?: string;
577
+ /**
578
+ * Transaction narration/description
579
+ */
580
+ narration: string;
581
+ /**
582
+ * Transaction tags (without # prefix)
583
+ */
584
+ tags?: Array<string>;
585
+ /**
586
+ * Transaction links (without ^ prefix)
587
+ */
588
+ links?: Array<string>;
589
+ /**
590
+ * Transaction postings (minimum 1, typically 2 for double-entry)
591
+ */
592
+ postings: Array<CreatePostingDto>;
593
+ /**
594
+ * Transaction-level metadata
595
+ */
596
+ meta?: {
597
+ [key: string]: unknown;
598
+ };
599
+ /**
600
+ * Unique key for idempotent transaction creation. If provided, duplicate requests with the same key will return the existing transaction.
601
+ */
602
+ idempotencyKey?: string;
603
+ /**
604
+ * Auto-create accounts if not found. When true, missing accounts will be automatically created. When false (default for API), missing accounts will cause a validation error. Set to true for quick entry scenarios where you want to create accounts on-the-fly.
605
+ */
606
+ autoCreateAccounts?: boolean;
607
+ /**
608
+ * Reason for correcting/superseding the original transaction
609
+ */
610
+ correctionReason?: string;
611
+ };
612
+
442
613
  export type PostingDetailDto = {
443
614
  /**
444
615
  * Posting ID
@@ -453,7 +624,7 @@ export type PostingDetailDto = {
453
624
  */
454
625
  accountName: string;
455
626
  /**
456
- * Amount (may be null if interpolated)
627
+ * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
457
628
  */
458
629
  units?: string;
459
630
  /**
@@ -542,9 +713,9 @@ export type TransactionDetailDto = {
542
713
  */
543
714
  status: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
544
715
  /**
545
- * Source type (how the transaction was created)
716
+ * Source type (free-form string from transaction metadata, e.g. import, api)
546
717
  */
547
- sourceType?: 'NLP' | 'CSV' | 'OCR' | 'API';
718
+ sourceType?: string;
548
719
  /**
549
720
  * Source platform (e.g., alipay, wechat)
550
721
  */
@@ -569,6 +740,14 @@ export type TransactionDetailDto = {
569
740
  * Correction reason (if voided or superseded)
570
741
  */
571
742
  correctionReason?: string;
743
+ /**
744
+ * ID of the transaction that supersedes this one (set when status=SUPERSEDED)
745
+ */
746
+ supersededBy?: string;
747
+ /**
748
+ * ID of the transaction this one corrected/replaced (back-link on the replacement)
749
+ */
750
+ originalTxn?: string;
572
751
  };
573
752
 
574
753
  /**
@@ -587,11 +766,6 @@ export type flag2 =
587
766
  */
588
767
  export type status2 = 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
589
768
 
590
- /**
591
- * Source type (how the transaction was created)
592
- */
593
- export type sourceType = 'NLP' | 'CSV' | 'OCR' | 'API';
594
-
595
769
  export type TransactionListResponseDto = {
596
770
  /**
597
771
  * List of transactions
@@ -611,6 +785,24 @@ export type TransactionListResponseDto = {
611
785
  offset: number;
612
786
  };
613
787
 
788
+ export type TagSuggestionDto = {
789
+ /**
790
+ * Tag name
791
+ */
792
+ tag: string;
793
+ /**
794
+ * Usage count across ACTIVE transactions
795
+ */
796
+ count: number;
797
+ };
798
+
799
+ export type TagSuggestionsResponseDto = {
800
+ /**
801
+ * Tag suggestions sorted as requested
802
+ */
803
+ data: Array<TagSuggestionDto>;
804
+ };
805
+
614
806
  export type UpdateTransactionDto = {
615
807
  /**
616
808
  * Transaction flag (CLEARED, PENDING, etc.)
@@ -646,66 +838,6 @@ export type UpdateTransactionDto = {
646
838
  };
647
839
  };
648
840
 
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
- export type RegionConfigDto = {
692
- currency: string;
693
- dateFormat: string;
694
- locale: string;
695
- };
696
-
697
- export type RegionInfoDto = {
698
- code: string;
699
- displayName: string;
700
- parent?: string;
701
- chain: Array<string>;
702
- config: RegionConfigDto;
703
- };
704
-
705
- export type RegionsMetadataResponseDto = {
706
- regions: Array<RegionInfoDto>;
707
- };
708
-
709
841
  export type BalanceResponseDto = {
710
842
  /**
711
843
  * Account name
@@ -772,9 +904,9 @@ export type TransactionSummaryDto = {
772
904
  */
773
905
  accountName?: string;
774
906
  /**
775
- * Source type (NLP, CSV, OCR, API)
907
+ * Source type (free-form string from transaction metadata, e.g. import, api)
776
908
  */
777
- sourceType?: 'NLP' | 'CSV' | 'OCR' | 'API';
909
+ sourceType?: string;
778
910
  /**
779
911
  * Source platform (e.g., alipay, wechat)
780
912
  */
@@ -804,9 +936,9 @@ export type ReviewSummaryDto = {
804
936
  */
805
937
  confidence: number;
806
938
  /**
807
- * Confidence level derived from score
939
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
808
940
  */
809
- confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW';
941
+ confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW' | null;
810
942
  /**
811
943
  * i18n message key for summary (e.g., review.summary.duplicate). Translate on frontend with summaryParams.
812
944
  */
@@ -822,7 +954,7 @@ export type ReviewSummaryDto = {
822
954
  */
823
955
  matchReasons: Array<string>;
824
956
  /**
825
- * Source type (NLP, CSV, OCR, API)
957
+ * Source type (free-form string from transaction metadata, e.g. import, api)
826
958
  */
827
959
  sourceType: string;
828
960
  /**
@@ -875,7 +1007,7 @@ export type type2 =
875
1007
  export type status3 = 'PENDING' | 'RESOLVED' | 'EXPIRED' | 'CANCELLED';
876
1008
 
877
1009
  /**
878
- * Confidence level derived from score
1010
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
879
1011
  */
880
1012
  export type confidenceLevel = 'HIGH' | 'MEDIUM' | 'LOW';
881
1013
 
@@ -920,7 +1052,18 @@ export type DecisionOptionDto = {
920
1052
  /**
921
1053
  * The action value to submit (e.g., UPGRADE_REPLACE, ACCEPT)
922
1054
  */
923
- value: string;
1055
+ value:
1056
+ | 'UPGRADE_REPLACE'
1057
+ | 'LINK_KEEP_BOTH'
1058
+ | 'IGNORE_NEW'
1059
+ | 'CONFIRM_DIFFERENT'
1060
+ | 'ACCEPT'
1061
+ | 'REJECT'
1062
+ | 'ACCEPT_AND_LEARN'
1063
+ | 'CHOOSE_OTHER'
1064
+ | 'CANCEL'
1065
+ | 'FIX'
1066
+ | 'IGNORE';
924
1067
  /**
925
1068
  * i18n message key for display label (e.g., review.payee.accept.label)
926
1069
  */
@@ -935,6 +1078,22 @@ export type DecisionOptionDto = {
935
1078
  recommended?: boolean;
936
1079
  };
937
1080
 
1081
+ /**
1082
+ * The action value to submit (e.g., UPGRADE_REPLACE, ACCEPT)
1083
+ */
1084
+ export type value =
1085
+ | 'UPGRADE_REPLACE'
1086
+ | 'LINK_KEEP_BOTH'
1087
+ | 'IGNORE_NEW'
1088
+ | 'CONFIRM_DIFFERENT'
1089
+ | 'ACCEPT'
1090
+ | 'REJECT'
1091
+ | 'ACCEPT_AND_LEARN'
1092
+ | 'CHOOSE_OTHER'
1093
+ | 'CANCEL'
1094
+ | 'FIX'
1095
+ | 'IGNORE';
1096
+
938
1097
  export type ReviewDetailDto = {
939
1098
  /**
940
1099
  * Review item ID
@@ -958,9 +1117,9 @@ export type ReviewDetailDto = {
958
1117
  */
959
1118
  confidence: number;
960
1119
  /**
961
- * Confidence level derived from score
1120
+ * Confidence level derived from score. Null for error-type reviews (ACCOUNT_VALIDATION/PIPELINE_ERROR) which carry no confidence.
962
1121
  */
963
- confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW';
1122
+ confidenceLevel: 'HIGH' | 'MEDIUM' | 'LOW' | null;
964
1123
  /**
965
1124
  * i18n message key for summary (e.g., review.summary.duplicate). Translate on frontend with summaryParams.
966
1125
  */
@@ -976,7 +1135,7 @@ export type ReviewDetailDto = {
976
1135
  */
977
1136
  matchReasons: Array<string>;
978
1137
  /**
979
- * Source type (NLP, CSV, OCR, API)
1138
+ * Source type (free-form string from transaction metadata, e.g. import, api)
980
1139
  */
981
1140
  sourceType: string;
982
1141
  /**
@@ -1027,47 +1186,199 @@ export type ReviewDetailDto = {
1027
1186
  transactionId?: string;
1028
1187
  };
1029
1188
 
1030
- export type PayeeResponseDto = {
1189
+ export type ResolveReviewDto = {
1031
1190
  /**
1032
- * Unique identifier (UUID)
1191
+ * Decision action. Valid actions vary by review type — see DecisionOptionDto.value returned by the review detail endpoint.
1033
1192
  */
1034
- id: string;
1193
+ action:
1194
+ | 'UPGRADE_REPLACE'
1195
+ | 'LINK_KEEP_BOTH'
1196
+ | 'IGNORE_NEW'
1197
+ | 'CONFIRM_DIFFERENT'
1198
+ | 'ACCEPT'
1199
+ | 'REJECT'
1200
+ | 'ACCEPT_AND_LEARN'
1201
+ | 'CHOOSE_OTHER'
1202
+ | 'CANCEL'
1203
+ | 'FIX'
1204
+ | 'IGNORE';
1205
+ /**
1206
+ * Additional data for the decision (e.g., selected account ID)
1207
+ */
1208
+ data?: {
1209
+ [key: string]: unknown;
1210
+ };
1211
+ };
1212
+
1213
+ /**
1214
+ * Decision action. Valid actions vary by review type — see DecisionOptionDto.value returned by the review detail endpoint.
1215
+ */
1216
+ export type action =
1217
+ | 'UPGRADE_REPLACE'
1218
+ | 'LINK_KEEP_BOTH'
1219
+ | 'IGNORE_NEW'
1220
+ | 'CONFIRM_DIFFERENT'
1221
+ | 'ACCEPT'
1222
+ | 'REJECT'
1223
+ | 'ACCEPT_AND_LEARN'
1224
+ | 'CHOOSE_OTHER'
1225
+ | 'CANCEL'
1226
+ | 'FIX'
1227
+ | 'IGNORE';
1228
+
1229
+ export type ResolveResultDto = {
1035
1230
  /**
1036
- * User ID (owner of this payee mapping)
1231
+ * Whether resolution was successful
1037
1232
  */
1038
- userId: string;
1233
+ success: boolean;
1039
1234
  /**
1040
- * User's original payee name (e.g., 'Starbucks', 'McDonald')
1235
+ * i18n message key for result message (e.g., review.payee.result.mapped)
1041
1236
  */
1042
- payee: string;
1237
+ messageKey?: string;
1043
1238
  /**
1044
- * Reference to global PayeeProfile (merchant info, i18n keys, categories)
1239
+ * Parameters for message interpolation (e.g., { name: "PayeeName" })
1045
1240
  */
1046
- payeeProfileId?: {
1047
- [key: string]: unknown;
1048
- } | null;
1241
+ messageParams?: {
1242
+ [key: string]: string;
1243
+ };
1049
1244
  /**
1050
- * User's custom category (overrides PayeeProfile category if set)
1245
+ * Resolution ID for undo
1051
1246
  */
1052
- customCategory?: {
1053
- [key: string]: unknown;
1054
- } | null;
1247
+ resolutionId: string;
1055
1248
  /**
1056
- * User's custom tags (e.g., ['favorite', 'work_meal'])
1249
+ * Whether this decision can be undone
1057
1250
  */
1058
- customTags: Array<string>;
1251
+ canUndo: boolean;
1059
1252
  /**
1060
- * Usage count (number of times this payee was used in transactions)
1253
+ * Deadline for undo (24h from resolution)
1061
1254
  */
1062
- useCount: number;
1255
+ undoDeadline: string;
1063
1256
  /**
1064
- * Last used timestamp
1257
+ * Rule ID if learning was triggered (ACCEPT_AND_LEARN actions). Use this to deep-link to the rule management page.
1065
1258
  */
1066
- lastUsedAt: string;
1259
+ learnedRuleId?: string;
1260
+ };
1261
+
1262
+ export type UndoResultDto = {
1067
1263
  /**
1068
- * Extended metadata (location, notes, contact info, etc.)
1264
+ * Whether undo was successful
1069
1265
  */
1070
- meta: {
1266
+ success: boolean;
1267
+ /**
1268
+ * Message
1269
+ */
1270
+ message?: string;
1271
+ /**
1272
+ * Review item ID that was restored
1273
+ */
1274
+ reviewId: string;
1275
+ };
1276
+
1277
+ export type BatchResolveDto = {
1278
+ /**
1279
+ * Review item IDs to resolve
1280
+ */
1281
+ reviewIds: Array<string>;
1282
+ /**
1283
+ * Decision action to apply to all items
1284
+ */
1285
+ action:
1286
+ | 'UPGRADE_REPLACE'
1287
+ | 'LINK_KEEP_BOTH'
1288
+ | 'IGNORE_NEW'
1289
+ | 'CONFIRM_DIFFERENT'
1290
+ | 'ACCEPT'
1291
+ | 'REJECT'
1292
+ | 'ACCEPT_AND_LEARN'
1293
+ | 'CHOOSE_OTHER'
1294
+ | 'CANCEL'
1295
+ | 'FIX'
1296
+ | 'IGNORE';
1297
+ /**
1298
+ * Additional data for the decision
1299
+ */
1300
+ data?: {
1301
+ [key: string]: unknown;
1302
+ };
1303
+ };
1304
+
1305
+ export type BatchResolveResultDto = {
1306
+ /**
1307
+ * Number of successfully resolved items
1308
+ */
1309
+ successCount: number;
1310
+ /**
1311
+ * Number of failed items
1312
+ */
1313
+ failedCount: number;
1314
+ /**
1315
+ * Details for each item
1316
+ */
1317
+ results: Array<string>;
1318
+ };
1319
+
1320
+ export type CreatePayeeDto = {
1321
+ /**
1322
+ * User's original payee name (e.g., 'Starbucks', 'McDonald'). This is the raw payee string as entered by the user.
1323
+ */
1324
+ payee: string;
1325
+ /**
1326
+ * Optional reference to global PayeeProfile for standardized data (merchant info, i18n keys, categories)
1327
+ */
1328
+ payeeProfileId?: string;
1329
+ /**
1330
+ * User's custom category for this payee (overrides PayeeProfile category)
1331
+ */
1332
+ customCategory?: string;
1333
+ /**
1334
+ * User's custom tags for this payee (e.g., ['favorite', 'work_meal'])
1335
+ */
1336
+ customTags?: Array<string>;
1337
+ /**
1338
+ * Metadata for extended information (location, notes, contact info, etc.)
1339
+ */
1340
+ meta?: {
1341
+ [key: string]: unknown;
1342
+ };
1343
+ };
1344
+
1345
+ export type PayeeResponseDto = {
1346
+ /**
1347
+ * Unique identifier (UUID)
1348
+ */
1349
+ id: string;
1350
+ /**
1351
+ * User ID (owner of this payee mapping)
1352
+ */
1353
+ userId: string;
1354
+ /**
1355
+ * User's original payee name (e.g., 'Starbucks', 'McDonald')
1356
+ */
1357
+ payee: string;
1358
+ /**
1359
+ * Reference to global PayeeProfile (merchant info, i18n keys, categories)
1360
+ */
1361
+ payeeProfileId?: string | null;
1362
+ /**
1363
+ * User's custom category (overrides PayeeProfile category if set)
1364
+ */
1365
+ customCategory?: string | null;
1366
+ /**
1367
+ * User's custom tags (e.g., ['favorite', 'work_meal'])
1368
+ */
1369
+ customTags: Array<string>;
1370
+ /**
1371
+ * Usage count (number of times this payee was used in transactions)
1372
+ */
1373
+ useCount: number;
1374
+ /**
1375
+ * Last used timestamp
1376
+ */
1377
+ lastUsedAt: string;
1378
+ /**
1379
+ * Extended metadata (location, notes, contact info, etc.)
1380
+ */
1381
+ meta: {
1071
1382
  [key: string]: unknown;
1072
1383
  };
1073
1384
  /**
@@ -1117,6 +1428,144 @@ export type PayeeStatsResponseDto = {
1117
1428
  lastUsedAt: string;
1118
1429
  };
1119
1430
 
1431
+ export type UpdatePayeeDto = {
1432
+ /**
1433
+ * Optional reference to global PayeeProfile for standardized data (merchant info, i18n keys, categories)
1434
+ */
1435
+ payeeProfileId?: string;
1436
+ /**
1437
+ * User's custom category for this payee (overrides PayeeProfile category)
1438
+ */
1439
+ customCategory?: string;
1440
+ /**
1441
+ * User's custom tags for this payee (e.g., ['favorite', 'work_meal'])
1442
+ */
1443
+ customTags?: Array<string>;
1444
+ /**
1445
+ * Metadata for extended information (location, notes, contact info, etc.). Will merge with existing metadata.
1446
+ */
1447
+ meta?: {
1448
+ [key: string]: unknown;
1449
+ };
1450
+ /**
1451
+ * Enable or disable this payee. Disabled payees will not appear in autocomplete suggestions.
1452
+ */
1453
+ isActive?: boolean;
1454
+ };
1455
+
1456
+ export type CreatePayeeProfileDto = {
1457
+ /**
1458
+ * Canonical payee name (unique, case-insensitive). This is the primary identifier for the payee.
1459
+ */
1460
+ canonical: string;
1461
+ /**
1462
+ * Multi-language aliases for the payee. Used for matching user input in different languages.
1463
+ */
1464
+ aliases?: Array<string>;
1465
+ /**
1466
+ * Translation key for i18n integration (XLIFF translation system)
1467
+ */
1468
+ i18nKey?: string;
1469
+ /**
1470
+ * Payee category classification
1471
+ */
1472
+ category:
1473
+ | 'RESTAURANT'
1474
+ | 'CAFE'
1475
+ | 'FAST_FOOD'
1476
+ | 'BAR'
1477
+ | 'SUPERMARKET'
1478
+ | 'CONVENIENCE_STORE'
1479
+ | 'SHOPPING_MALL'
1480
+ | 'ONLINE_SHOPPING'
1481
+ | 'TAXI'
1482
+ | 'RIDE_SHARING'
1483
+ | 'PUBLIC_TRANSPORT'
1484
+ | 'PARKING'
1485
+ | 'GAS_STATION'
1486
+ | 'UTILITIES'
1487
+ | 'TELECOM'
1488
+ | 'STREAMING'
1489
+ | 'HEALTHCARE'
1490
+ | 'EDUCATION'
1491
+ | 'ENTERTAINMENT'
1492
+ | 'SPORTS'
1493
+ | 'TRAVEL'
1494
+ | 'HOTEL'
1495
+ | 'OTHER';
1496
+ /**
1497
+ * Sub-category for more specific classification
1498
+ */
1499
+ subCategory?: string;
1500
+ /**
1501
+ * Country/region codes where the payee operates (ISO 3166-1 alpha-2)
1502
+ */
1503
+ countries?: Array<string>;
1504
+ /**
1505
+ * Primary operating country (ISO 3166-1 alpha-2)
1506
+ */
1507
+ primaryCountry?: string;
1508
+ /**
1509
+ * Search keywords for fuzzy matching
1510
+ */
1511
+ keywords?: Array<string>;
1512
+ /**
1513
+ * Payee logo URL
1514
+ */
1515
+ logoUrl?: string;
1516
+ /**
1517
+ * Official website URL
1518
+ */
1519
+ website?: string;
1520
+ /**
1521
+ * Payee description
1522
+ */
1523
+ description?: string;
1524
+ /**
1525
+ * Extended metadata (business hours, contact info, additional details)
1526
+ */
1527
+ meta?: {
1528
+ [key: string]: unknown;
1529
+ };
1530
+ /**
1531
+ * Data source for this profile
1532
+ */
1533
+ dataSource?: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1534
+ };
1535
+
1536
+ /**
1537
+ * Payee category classification
1538
+ */
1539
+ export type category =
1540
+ | 'RESTAURANT'
1541
+ | 'CAFE'
1542
+ | 'FAST_FOOD'
1543
+ | 'BAR'
1544
+ | 'SUPERMARKET'
1545
+ | 'CONVENIENCE_STORE'
1546
+ | 'SHOPPING_MALL'
1547
+ | 'ONLINE_SHOPPING'
1548
+ | 'TAXI'
1549
+ | 'RIDE_SHARING'
1550
+ | 'PUBLIC_TRANSPORT'
1551
+ | 'PARKING'
1552
+ | 'GAS_STATION'
1553
+ | 'UTILITIES'
1554
+ | 'TELECOM'
1555
+ | 'STREAMING'
1556
+ | 'HEALTHCARE'
1557
+ | 'EDUCATION'
1558
+ | 'ENTERTAINMENT'
1559
+ | 'SPORTS'
1560
+ | 'TRAVEL'
1561
+ | 'HOTEL'
1562
+ | 'OTHER';
1563
+
1564
+ /**
1565
+ * Data source for this profile
1566
+ */
1567
+ export type dataSource = 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1568
+
1120
1569
  export type PayeeProfileResponseDto = {
1121
1570
  /**
1122
1571
  * Unique identifier (UUID)
@@ -1133,9 +1582,7 @@ export type PayeeProfileResponseDto = {
1133
1582
  /**
1134
1583
  * Translation key for i18n
1135
1584
  */
1136
- i18nKey?: {
1137
- [key: string]: unknown;
1138
- } | null;
1585
+ i18nKey?: string | null;
1139
1586
  /**
1140
1587
  * Payee category
1141
1588
  */
@@ -1166,9 +1613,7 @@ export type PayeeProfileResponseDto = {
1166
1613
  /**
1167
1614
  * Sub-category
1168
1615
  */
1169
- subCategory?: {
1170
- [key: string]: unknown;
1171
- } | null;
1616
+ subCategory?: string | null;
1172
1617
  /**
1173
1618
  * Country codes where payee operates
1174
1619
  */
@@ -1176,9 +1621,7 @@ export type PayeeProfileResponseDto = {
1176
1621
  /**
1177
1622
  * Primary operating country
1178
1623
  */
1179
- primaryCountry?: {
1180
- [key: string]: unknown;
1181
- } | null;
1624
+ primaryCountry?: string | null;
1182
1625
  /**
1183
1626
  * Search keywords
1184
1627
  */
@@ -1186,21 +1629,15 @@ export type PayeeProfileResponseDto = {
1186
1629
  /**
1187
1630
  * Logo URL
1188
1631
  */
1189
- logoUrl?: {
1190
- [key: string]: unknown;
1191
- } | null;
1632
+ logoUrl?: string | null;
1192
1633
  /**
1193
1634
  * Official website
1194
1635
  */
1195
- website?: {
1196
- [key: string]: unknown;
1197
- } | null;
1636
+ website?: string | null;
1198
1637
  /**
1199
1638
  * Description
1200
1639
  */
1201
- description?: {
1202
- [key: string]: unknown;
1203
- } | null;
1640
+ description?: string | null;
1204
1641
  /**
1205
1642
  * Extended metadata
1206
1643
  */
@@ -1214,9 +1651,7 @@ export type PayeeProfileResponseDto = {
1214
1651
  /**
1215
1652
  * Verification timestamp (null if not verified)
1216
1653
  */
1217
- verifiedAt?: {
1218
- [key: string]: unknown;
1219
- } | null;
1654
+ verifiedAt?: string | null;
1220
1655
  /**
1221
1656
  * Whether the profile is active
1222
1657
  */
@@ -1231,39 +1666,6 @@ export type PayeeProfileResponseDto = {
1231
1666
  updatedAt: string;
1232
1667
  };
1233
1668
 
1234
- /**
1235
- * Payee category
1236
- */
1237
- export type category =
1238
- | 'RESTAURANT'
1239
- | 'CAFE'
1240
- | 'FAST_FOOD'
1241
- | 'BAR'
1242
- | 'SUPERMARKET'
1243
- | 'CONVENIENCE_STORE'
1244
- | 'SHOPPING_MALL'
1245
- | 'ONLINE_SHOPPING'
1246
- | 'TAXI'
1247
- | 'RIDE_SHARING'
1248
- | 'PUBLIC_TRANSPORT'
1249
- | 'PARKING'
1250
- | 'GAS_STATION'
1251
- | 'UTILITIES'
1252
- | 'TELECOM'
1253
- | 'STREAMING'
1254
- | 'HEALTHCARE'
1255
- | 'EDUCATION'
1256
- | 'ENTERTAINMENT'
1257
- | 'SPORTS'
1258
- | 'TRAVEL'
1259
- | 'HOTEL'
1260
- | 'OTHER';
1261
-
1262
- /**
1263
- * Data source
1264
- */
1265
- export type dataSource = 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1266
-
1267
1669
  export type PayeeProfileListResponseDto = {
1268
1670
  /**
1269
1671
  * List of payee profiles
@@ -1275,6 +1677,107 @@ export type PayeeProfileListResponseDto = {
1275
1677
  total: number;
1276
1678
  };
1277
1679
 
1680
+ export type UpdatePayeeProfileDto = {
1681
+ /**
1682
+ * Multi-language aliases for the payee. Used for matching user input in different languages.
1683
+ */
1684
+ aliases?: Array<string>;
1685
+ /**
1686
+ * Translation key for i18n integration (XLIFF translation system)
1687
+ */
1688
+ i18nKey?: string;
1689
+ /**
1690
+ * Payee category classification
1691
+ */
1692
+ category?:
1693
+ | 'RESTAURANT'
1694
+ | 'CAFE'
1695
+ | 'FAST_FOOD'
1696
+ | 'BAR'
1697
+ | 'SUPERMARKET'
1698
+ | 'CONVENIENCE_STORE'
1699
+ | 'SHOPPING_MALL'
1700
+ | 'ONLINE_SHOPPING'
1701
+ | 'TAXI'
1702
+ | 'RIDE_SHARING'
1703
+ | 'PUBLIC_TRANSPORT'
1704
+ | 'PARKING'
1705
+ | 'GAS_STATION'
1706
+ | 'UTILITIES'
1707
+ | 'TELECOM'
1708
+ | 'STREAMING'
1709
+ | 'HEALTHCARE'
1710
+ | 'EDUCATION'
1711
+ | 'ENTERTAINMENT'
1712
+ | 'SPORTS'
1713
+ | 'TRAVEL'
1714
+ | 'HOTEL'
1715
+ | 'OTHER';
1716
+ /**
1717
+ * Sub-category for more specific classification
1718
+ */
1719
+ subCategory?: string;
1720
+ /**
1721
+ * Country/region codes where the payee operates (ISO 3166-1 alpha-2)
1722
+ */
1723
+ countries?: Array<string>;
1724
+ /**
1725
+ * Primary operating country (ISO 3166-1 alpha-2)
1726
+ */
1727
+ primaryCountry?: string;
1728
+ /**
1729
+ * Search keywords for fuzzy matching
1730
+ */
1731
+ keywords?: Array<string>;
1732
+ /**
1733
+ * Payee logo URL
1734
+ */
1735
+ logoUrl?: string;
1736
+ /**
1737
+ * Official website URL
1738
+ */
1739
+ website?: string;
1740
+ /**
1741
+ * Payee description
1742
+ */
1743
+ description?: string;
1744
+ /**
1745
+ * Extended metadata (business hours, contact info, additional details)
1746
+ */
1747
+ meta?: {
1748
+ [key: string]: unknown;
1749
+ };
1750
+ /**
1751
+ * Data source for this profile
1752
+ */
1753
+ dataSource?: 'MANUAL' | 'IMPORT' | 'API' | 'CROWDSOURCED';
1754
+ /**
1755
+ * Whether the payee profile is active (soft delete)
1756
+ */
1757
+ isActive?: boolean;
1758
+ /**
1759
+ * Verification timestamp. Set to current time to verify, or null to unverify.
1760
+ */
1761
+ verifiedAt?: string | null;
1762
+ };
1763
+
1764
+ export type CreateCommodityDto = {
1765
+ /**
1766
+ * Commodity symbol (e.g., AAPL, USD, BTC) - corresponds to Beancount currency field
1767
+ */
1768
+ symbol: string;
1769
+ /**
1770
+ * Commodity definition date (ISO 8601, required per Beancount spec). Represents when this commodity was first defined in the accounting system.
1771
+ */
1772
+ date: string;
1773
+ /**
1774
+ * Metadata (corresponds to Beancount meta field). Can contain name, assetClass, precision, note, tags, etc.
1775
+ */
1776
+ metadata?: {
1777
+ [key: string]: unknown;
1778
+ };
1779
+ };
1780
+
1278
1781
  export type CommodityResponseDto = {
1279
1782
  /**
1280
1783
  * Unique identifier
@@ -1283,9 +1786,7 @@ export type CommodityResponseDto = {
1283
1786
  /**
1284
1787
  * User ID (owner of the commodity)
1285
1788
  */
1286
- userId?: {
1287
- [key: string]: unknown;
1288
- } | null;
1789
+ userId?: string | null;
1289
1790
  /**
1290
1791
  * Commodity symbol (corresponds to Beancount currency field)
1291
1792
  */
@@ -1300,12 +1801,6 @@ export type CommodityResponseDto = {
1300
1801
  metadata: {
1301
1802
  [key: string]: unknown;
1302
1803
  };
1303
- /**
1304
- * Reference to SymbolProfile (market data integration, SaaS feature)
1305
- */
1306
- symbolProfileId?: {
1307
- [key: string]: unknown;
1308
- } | null;
1309
1804
  /**
1310
1805
  * Creation timestamp
1311
1806
  */
@@ -1327,6 +1822,101 @@ export type CommodityListResponseDto = {
1327
1822
  total: number;
1328
1823
  };
1329
1824
 
1825
+ export type UpdateCommodityDto = {
1826
+ /**
1827
+ * Commodity definition date (ISO 8601). Represents when this commodity was first defined in the accounting system.
1828
+ */
1829
+ date?: string;
1830
+ /**
1831
+ * Metadata (corresponds to Beancount meta field). Will merge with existing metadata. Can contain name, assetClass, precision, note, tags, etc.
1832
+ */
1833
+ metadata?: {
1834
+ [key: string]: unknown;
1835
+ };
1836
+ };
1837
+
1838
+ export type CreateRecurringRuleDto = {
1839
+ /**
1840
+ * Rule name (unique per user)
1841
+ */
1842
+ name: string;
1843
+ /**
1844
+ * Icon emoji
1845
+ */
1846
+ icon?: string;
1847
+ /**
1848
+ * Recurring frequency
1849
+ */
1850
+ frequency:
1851
+ | 'WEEKLY'
1852
+ | 'BIWEEKLY'
1853
+ | 'MONTHLY'
1854
+ | 'BIMONTHLY'
1855
+ | 'QUARTERLY'
1856
+ | 'YEARLY'
1857
+ | 'CUSTOM';
1858
+ /**
1859
+ * Expected amount (positive number)
1860
+ */
1861
+ expectedAmount: number;
1862
+ /**
1863
+ * Expected day of month (1-31)
1864
+ */
1865
+ expectedDay?: number;
1866
+ /**
1867
+ * Custom interval in days (required for CUSTOM frequency)
1868
+ */
1869
+ customIntervalDays?: number;
1870
+ /**
1871
+ * Currency code
1872
+ */
1873
+ currency: string;
1874
+ /**
1875
+ * Payee matching pattern (supports wildcards)
1876
+ */
1877
+ matchPayeePattern?: string;
1878
+ /**
1879
+ * Amount tolerance percentage (0-1)
1880
+ */
1881
+ matchAmountTolerance: number;
1882
+ /**
1883
+ * Default expense account for auto-create
1884
+ */
1885
+ defaultExpenseAccount?: string;
1886
+ /**
1887
+ * Default payment account for auto-create
1888
+ */
1889
+ defaultPaymentAccount?: string;
1890
+ /**
1891
+ * Default payee for auto-create
1892
+ */
1893
+ defaultPayee?: string;
1894
+ /**
1895
+ * Auto-create transaction when expected date arrives
1896
+ */
1897
+ autoCreate: boolean;
1898
+ /**
1899
+ * Rule start date (ISO format)
1900
+ */
1901
+ startDate?: string;
1902
+ /**
1903
+ * Rule end date (ISO format)
1904
+ */
1905
+ endDate?: string;
1906
+ };
1907
+
1908
+ /**
1909
+ * Recurring frequency
1910
+ */
1911
+ export type frequency =
1912
+ | 'WEEKLY'
1913
+ | 'BIWEEKLY'
1914
+ | 'MONTHLY'
1915
+ | 'BIMONTHLY'
1916
+ | 'QUARTERLY'
1917
+ | 'YEARLY'
1918
+ | 'CUSTOM';
1919
+
1330
1920
  export type RecurringRuleResponseDto = {
1331
1921
  /**
1332
1922
  * Rule ID
@@ -1436,6 +2026,28 @@ export type RecurringRuleResponseDto = {
1436
2026
  updatedAt: string;
1437
2027
  };
1438
2028
 
2029
+ export type CreateRuleFromTransactionDto = {
2030
+ /**
2031
+ * Recurring frequency
2032
+ */
2033
+ frequency:
2034
+ | 'WEEKLY'
2035
+ | 'BIWEEKLY'
2036
+ | 'MONTHLY'
2037
+ | 'BIMONTHLY'
2038
+ | 'QUARTERLY'
2039
+ | 'YEARLY'
2040
+ | 'CUSTOM';
2041
+ /**
2042
+ * Optional name override (default: transaction payee)
2043
+ */
2044
+ name?: string;
2045
+ /**
2046
+ * Optional icon emoji
2047
+ */
2048
+ icon?: string;
2049
+ };
2050
+
1439
2051
  export type RecurringRuleWithStatsResponseDto = {
1440
2052
  /**
1441
2053
  * Rule ID
@@ -1591,6 +2203,76 @@ export type RecurringRuleWithStatsResponseDto = {
1591
2203
  upcomingCount: number;
1592
2204
  };
1593
2205
 
2206
+ export type UpdateRecurringRuleDto = {
2207
+ /**
2208
+ * Rule name
2209
+ */
2210
+ name?: string;
2211
+ /**
2212
+ * Icon emoji
2213
+ */
2214
+ icon?: string;
2215
+ /**
2216
+ * Recurring frequency
2217
+ */
2218
+ frequency?:
2219
+ | 'WEEKLY'
2220
+ | 'BIWEEKLY'
2221
+ | 'MONTHLY'
2222
+ | 'BIMONTHLY'
2223
+ | 'QUARTERLY'
2224
+ | 'YEARLY'
2225
+ | 'CUSTOM';
2226
+ /**
2227
+ * Expected amount
2228
+ */
2229
+ expectedAmount?: number;
2230
+ /**
2231
+ * Expected day of month (1-31)
2232
+ */
2233
+ expectedDay?: number;
2234
+ /**
2235
+ * Custom interval in days
2236
+ */
2237
+ customIntervalDays?: number;
2238
+ /**
2239
+ * Currency code
2240
+ */
2241
+ currency?: string;
2242
+ /**
2243
+ * Payee matching pattern
2244
+ */
2245
+ matchPayeePattern?: string;
2246
+ /**
2247
+ * Amount tolerance percentage (0-1)
2248
+ */
2249
+ matchAmountTolerance?: number;
2250
+ /**
2251
+ * Default expense account
2252
+ */
2253
+ defaultExpenseAccount?: string;
2254
+ /**
2255
+ * Default payment account
2256
+ */
2257
+ defaultPaymentAccount?: string;
2258
+ /**
2259
+ * Default payee
2260
+ */
2261
+ defaultPayee?: string;
2262
+ /**
2263
+ * Auto-create transaction
2264
+ */
2265
+ autoCreate?: boolean;
2266
+ /**
2267
+ * Rule active status
2268
+ */
2269
+ isActive?: boolean;
2270
+ /**
2271
+ * Rule end date (ISO format)
2272
+ */
2273
+ endDate?: string;
2274
+ };
2275
+
1594
2276
  export type ExpectedTransactionRuleDto = {
1595
2277
  /**
1596
2278
  * Rule name
@@ -1681,6 +2363,36 @@ export type ExpectedTransactionListResponseDto = {
1681
2363
  total: number;
1682
2364
  };
1683
2365
 
2366
+ export type ConfirmMatchDto = {
2367
+ /**
2368
+ * Transaction ID to match with
2369
+ */
2370
+ transactionId: string;
2371
+ };
2372
+
2373
+ export type EnterNowDto = {
2374
+ /**
2375
+ * Override expense account (uses rule default if not provided)
2376
+ */
2377
+ expenseAccount?: string;
2378
+ /**
2379
+ * Override payment account (uses rule default if not provided)
2380
+ */
2381
+ paymentAccount?: string;
2382
+ /**
2383
+ * Override amount (uses expected amount if not provided)
2384
+ */
2385
+ amount?: number;
2386
+ /**
2387
+ * Override payee (uses rule default if not provided)
2388
+ */
2389
+ payee?: string;
2390
+ /**
2391
+ * Optional narration
2392
+ */
2393
+ narration?: string;
2394
+ };
2395
+
1684
2396
  export type ForecastItemDto = {
1685
2397
  /**
1686
2398
  * Rule name
@@ -1701,9 +2413,7 @@ export type ForecastItemDto = {
1701
2413
  /**
1702
2414
  * Rule icon emoji
1703
2415
  */
1704
- icon: {
1705
- [key: string]: unknown;
1706
- } | null;
2416
+ icon: string | null;
1707
2417
  /**
1708
2418
  * Currency code
1709
2419
  */
@@ -1751,17 +2461,64 @@ export type ForecastResponseDto = {
1751
2461
  [key: string]: unknown;
1752
2462
  };
1753
2463
  /**
1754
- * Number of active recurring rules included
2464
+ * Number of active recurring rules included
2465
+ */
2466
+ rulesCount: number;
2467
+ /**
2468
+ * Forecast period start date
2469
+ */
2470
+ periodStart: string;
2471
+ /**
2472
+ * Forecast period end date
2473
+ */
2474
+ periodEnd: string;
2475
+ };
2476
+
2477
+ export type CreateTransactionRuleDto = {
2478
+ name: string;
2479
+ description?: string;
2480
+ narrationKeywords?: Array<unknown[]>;
2481
+ payeeKeywords?: Array<unknown[]>;
2482
+ categoryKeywords?: Array<unknown[]>;
2483
+ /**
2484
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2485
+ */
2486
+ methodKeywords?: Array<unknown[]>;
2487
+ /**
2488
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2489
+ */
2490
+ categoryAccount?: string;
2491
+ matchLogic: 'OR' | 'AND';
2492
+ /**
2493
+ * Minimum transaction amount (inclusive)
2494
+ */
2495
+ amountMin?: number;
2496
+ /**
2497
+ * Maximum transaction amount (inclusive)
2498
+ */
2499
+ amountMax?: number;
2500
+ priority: number;
2501
+ additionalTags?: Array<unknown[]>;
2502
+ additionalMetadata?: {
2503
+ [key: string]: unknown;
2504
+ };
2505
+ /**
2506
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
1755
2507
  */
1756
- rulesCount: number;
2508
+ upsertByPayee?: boolean;
2509
+ };
2510
+
2511
+ export type matchLogic = 'OR' | 'AND';
2512
+
2513
+ export type AmountRangeDto = {
1757
2514
  /**
1758
- * Forecast period start date
2515
+ * Minimum amount
1759
2516
  */
1760
- periodStart: string;
2517
+ min?: number;
1761
2518
  /**
1762
- * Forecast period end date
2519
+ * Maximum amount
1763
2520
  */
1764
- periodEnd: string;
2521
+ max?: number;
1765
2522
  };
1766
2523
 
1767
2524
  export type TransactionRuleResponseDto = {
@@ -1804,9 +2561,7 @@ export type TransactionRuleResponseDto = {
1804
2561
  /**
1805
2562
  * Amount range for matching
1806
2563
  */
1807
- amountRange?: {
1808
- [key: string]: unknown;
1809
- };
2564
+ amountRange?: AmountRangeDto;
1810
2565
  /**
1811
2566
  * Rule priority (0-1000, higher = first match)
1812
2567
  */
@@ -1818,7 +2573,7 @@ export type TransactionRuleResponseDto = {
1818
2573
  /**
1819
2574
  * Learning source: NLP, REVIEW_CENTER, or null for manual
1820
2575
  */
1821
- learningSource?: 'NLP' | 'REVIEW_CENTER';
2576
+ learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
1822
2577
  /**
1823
2578
  * Whether auto-apply is enabled for this rule
1824
2579
  */
@@ -1835,7 +2590,7 @@ export type TransactionRuleResponseDto = {
1835
2590
  * Additional metadata
1836
2591
  */
1837
2592
  additionalMetadata?: {
1838
- [key: string]: unknown;
2593
+ [key: string]: string;
1839
2594
  };
1840
2595
  /**
1841
2596
  * Created timestamp
@@ -1847,11 +2602,6 @@ export type TransactionRuleResponseDto = {
1847
2602
  updatedAt: string;
1848
2603
  };
1849
2604
 
1850
- /**
1851
- * Keyword matching logic
1852
- */
1853
- export type matchLogic = 'OR' | 'AND';
1854
-
1855
2605
  /**
1856
2606
  * Learning source: NLP, REVIEW_CENTER, or null for manual
1857
2607
  */
@@ -1922,6 +2672,44 @@ export type ValidateRuleResponseDto = {
1922
2672
  warnings: Array<unknown[]>;
1923
2673
  };
1924
2674
 
2675
+ export type BulkCreateRulesDto = {
2676
+ /**
2677
+ * Array of rules to import
2678
+ */
2679
+ rules: Array<unknown[]>;
2680
+ /**
2681
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2682
+ */
2683
+ conflictStrategy: 'replace' | 'skip';
2684
+ };
2685
+
2686
+ /**
2687
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2688
+ */
2689
+ export type conflictStrategy = 'replace' | 'skip';
2690
+
2691
+ export type BulkCreateRulesResponseDto = {
2692
+ /**
2693
+ * Number of successfully created rules
2694
+ */
2695
+ successCount: number;
2696
+ /**
2697
+ * Number of failed rules
2698
+ */
2699
+ failureCount: number;
2700
+ /**
2701
+ * Error details for failed rules
2702
+ */
2703
+ errors: Array<{
2704
+ index?: number;
2705
+ message?: string;
2706
+ }>;
2707
+ /**
2708
+ * IDs of successfully created rules
2709
+ */
2710
+ createdRuleIds: Array<string>;
2711
+ };
2712
+
1925
2713
  export type ExportRulesResponseDto = {
1926
2714
  /**
1927
2715
  * Export timestamp
@@ -1978,6 +2766,40 @@ export type RuleStatisticsResponseDto = {
1978
2766
  */
1979
2767
  export type period = '7d' | '30d' | '90d';
1980
2768
 
2769
+ export type UpdateTransactionRuleDto = {
2770
+ name?: string;
2771
+ description?: string;
2772
+ narrationKeywords?: Array<unknown[]>;
2773
+ payeeKeywords?: Array<unknown[]>;
2774
+ categoryKeywords?: Array<unknown[]>;
2775
+ /**
2776
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2777
+ */
2778
+ methodKeywords?: Array<unknown[]>;
2779
+ /**
2780
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2781
+ */
2782
+ categoryAccount?: string;
2783
+ matchLogic?: 'OR' | 'AND';
2784
+ /**
2785
+ * Minimum transaction amount (inclusive)
2786
+ */
2787
+ amountMin?: number;
2788
+ /**
2789
+ * Maximum transaction amount (inclusive)
2790
+ */
2791
+ amountMax?: number;
2792
+ priority?: number;
2793
+ /**
2794
+ * Enable or disable the rule
2795
+ */
2796
+ enabled?: boolean;
2797
+ additionalTags?: Array<unknown[]>;
2798
+ additionalMetadata?: {
2799
+ [key: string]: unknown;
2800
+ };
2801
+ };
2802
+
1981
2803
  export type TestRuleDto = {
1982
2804
  narration: string;
1983
2805
  payee?: string;
@@ -2118,6 +2940,13 @@ export type colorScheme = 'DARK' | 'LIGHT';
2118
2940
  */
2119
2941
  export type viewMode = 'DEFAULT' | 'ZEN';
2120
2942
 
2943
+ export type UpdatePropertyDto = {
2944
+ /**
2945
+ * Property value
2946
+ */
2947
+ value: string;
2948
+ };
2949
+
2121
2950
  export type FileImportDto = {
2122
2951
  /**
2123
2952
  * Bill file to import (CSV, PDF, OFX, etc.)
@@ -2333,7 +3162,8 @@ export type ImporterConfigDto = {
2333
3162
  | 'cmbc-credit'
2334
3163
  | 'icbc'
2335
3164
  | 'icbc-credit'
2336
- | 'hsbc-hk';
3165
+ | 'hsbc-hk-credit'
3166
+ | 'hsbc-hk-debit';
2337
3167
  /**
2338
3168
  * Configuration version (semver)
2339
3169
  */
@@ -2373,7 +3203,135 @@ export type importerId =
2373
3203
  | 'cmbc-credit'
2374
3204
  | 'icbc'
2375
3205
  | 'icbc-credit'
2376
- | 'hsbc-hk';
3206
+ | 'hsbc-hk-credit'
3207
+ | 'hsbc-hk-debit';
3208
+
3209
+ export type UpdateMapperDefaultsDto = {
3210
+ /**
3211
+ * Source account for transactions (Beancount format)
3212
+ */
3213
+ sourceAccount?: string;
3214
+ /**
3215
+ * Default currency (ISO 4217 code)
3216
+ */
3217
+ currency?: string;
3218
+ /**
3219
+ * Default expense account (optional)
3220
+ */
3221
+ expenseAccount?: string;
3222
+ /**
3223
+ * Default income account (optional)
3224
+ */
3225
+ incomeAccount?: string;
3226
+ /**
3227
+ * 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).
3228
+ */
3229
+ methodAccountMapping?: {
3230
+ [key: string]: unknown;
3231
+ };
3232
+ };
3233
+
3234
+ export type UpdateConfigDataDto = {
3235
+ /**
3236
+ * Mapper defaults configuration
3237
+ */
3238
+ defaults?: UpdateMapperDefaultsDto;
3239
+ };
3240
+
3241
+ export type UpdateImporterConfigDto = {
3242
+ /**
3243
+ * Configuration data (v1 schema)
3244
+ */
3245
+ data?: UpdateConfigDataDto;
3246
+ };
3247
+
3248
+ export type CreatePlatformDto = {
3249
+ /**
3250
+ * Platform name
3251
+ */
3252
+ name: string;
3253
+ /**
3254
+ * Platform canonical identifier (lowercase, kebab-case)
3255
+ */
3256
+ canonical: string;
3257
+ /**
3258
+ * Platform aliases (multi-language names for lookup)
3259
+ */
3260
+ aliases: Array<string>;
3261
+ /**
3262
+ * Platform URL
3263
+ */
3264
+ url: string;
3265
+ /**
3266
+ * Platform type
3267
+ */
3268
+ type:
3269
+ | 'BANK'
3270
+ | 'BROKERAGE'
3271
+ | 'CRYPTO_EXCHANGE'
3272
+ | 'PAYMENT'
3273
+ | 'INVESTMENT'
3274
+ | 'INSURANCE'
3275
+ | 'OTHER';
3276
+ /**
3277
+ * Platform logo URL
3278
+ */
3279
+ logoUrl?: string;
3280
+ /**
3281
+ * Whether the platform is active
3282
+ */
3283
+ isActive?: boolean;
3284
+ };
3285
+
3286
+ /**
3287
+ * Platform type
3288
+ */
3289
+ export type type3 =
3290
+ | 'BANK'
3291
+ | 'BROKERAGE'
3292
+ | 'CRYPTO_EXCHANGE'
3293
+ | 'PAYMENT'
3294
+ | 'INVESTMENT'
3295
+ | 'INSURANCE'
3296
+ | 'OTHER';
3297
+
3298
+ export type UpdatePlatformDto = {
3299
+ /**
3300
+ * Platform name
3301
+ */
3302
+ name?: string;
3303
+ /**
3304
+ * Platform canonical identifier (lowercase, kebab-case)
3305
+ */
3306
+ canonical?: string;
3307
+ /**
3308
+ * Platform aliases (multi-language names for lookup)
3309
+ */
3310
+ aliases?: Array<string>;
3311
+ /**
3312
+ * Platform URL
3313
+ */
3314
+ url?: string;
3315
+ /**
3316
+ * Platform type
3317
+ */
3318
+ type?:
3319
+ | 'BANK'
3320
+ | 'BROKERAGE'
3321
+ | 'CRYPTO_EXCHANGE'
3322
+ | 'PAYMENT'
3323
+ | 'INVESTMENT'
3324
+ | 'INSURANCE'
3325
+ | 'OTHER';
3326
+ /**
3327
+ * Platform logo URL
3328
+ */
3329
+ logoUrl?: string;
3330
+ /**
3331
+ * Whether the platform is active
3332
+ */
3333
+ isActive?: boolean;
3334
+ };
2377
3335
 
2378
3336
  export type ProviderSyncConfigDto = {
2379
3337
  /**
@@ -2462,6 +3420,12 @@ export type ProcessNlpDto = {
2462
3420
  * Session ID for multi-turn conversation (auto-generated if not provided)
2463
3421
  */
2464
3422
  sessionId?: string;
3423
+ /**
3424
+ * Parsed data from previous NLP response for session recovery. Send back the parsedData received in confirm_payee/confirm responses.
3425
+ */
3426
+ parsedData?: {
3427
+ [key: string]: unknown;
3428
+ };
2465
3429
  };
2466
3430
 
2467
3431
  export type NlpTransactionInfoDto = {
@@ -2992,7 +3956,7 @@ export type status4 = 'success' | 'pending' | 'error';
2992
3956
  /**
2993
3957
  * Action taken or requested
2994
3958
  */
2995
- export type action =
3959
+ export type action2 =
2996
3960
  | 'created'
2997
3961
  | 'ask'
2998
3962
  | 'confirm'
@@ -3524,7 +4488,7 @@ export type AccountControllerCreateData = {
3524
4488
  /**
3525
4489
  * Region code for tenant context
3526
4490
  */
3527
- region: 'cn' | 'us' | 'de';
4491
+ region: 'cn' | 'us' | 'de' | 'gb';
3528
4492
  requestBody: CreateAccountDto;
3529
4493
  };
3530
4494
 
@@ -3546,7 +4510,7 @@ export type AccountControllerFindAllData = {
3546
4510
  /**
3547
4511
  * Region code for tenant context
3548
4512
  */
3549
- region: 'cn' | 'us' | 'de';
4513
+ region: 'cn' | 'us' | 'de' | 'gb';
3550
4514
  /**
3551
4515
  * Search term for path or i18nKey
3552
4516
  */
@@ -3571,7 +4535,7 @@ export type AccountControllerFindOneData = {
3571
4535
  /**
3572
4536
  * Region code for tenant context
3573
4537
  */
3574
- region: 'cn' | 'us' | 'de';
4538
+ region: 'cn' | 'us' | 'de' | 'gb';
3575
4539
  };
3576
4540
 
3577
4541
  export type AccountControllerFindOneResponse = AccountResponseDto;
@@ -3584,7 +4548,7 @@ export type AccountControllerUpdateData = {
3584
4548
  /**
3585
4549
  * Region code for tenant context
3586
4550
  */
3587
- region: 'cn' | 'us' | 'de';
4551
+ region: 'cn' | 'us' | 'de' | 'gb';
3588
4552
  requestBody: UpdateAccountDto;
3589
4553
  };
3590
4554
 
@@ -3598,7 +4562,7 @@ export type AccountControllerDeleteData = {
3598
4562
  /**
3599
4563
  * Region code for tenant context
3600
4564
  */
3601
- region: 'cn' | 'us' | 'de';
4565
+ region: 'cn' | 'us' | 'de' | 'gb';
3602
4566
  };
3603
4567
 
3604
4568
  export type AccountControllerDeleteResponse = void;
@@ -3611,7 +4575,7 @@ export type AccountControllerCloseData = {
3611
4575
  /**
3612
4576
  * Region code for tenant context
3613
4577
  */
3614
- region: 'cn' | 'us' | 'de';
4578
+ region: 'cn' | 'us' | 'de' | 'gb';
3615
4579
  requestBody: CloseAccountDto;
3616
4580
  };
3617
4581
 
@@ -3625,17 +4589,59 @@ export type AccountControllerReopenData = {
3625
4589
  /**
3626
4590
  * Region code for tenant context
3627
4591
  */
3628
- region: 'cn' | 'us' | 'de';
4592
+ region: 'cn' | 'us' | 'de' | 'gb';
3629
4593
  requestBody: ReopenAccountDto;
3630
4594
  };
3631
4595
 
3632
4596
  export type AccountControllerReopenResponse = AccountResponseDto;
3633
4597
 
4598
+ export type AccountStandardsControllerGetTemplatesData = {
4599
+ /**
4600
+ * Region code (cn, us, de)
4601
+ */
4602
+ region: 'cn' | 'us' | 'de' | 'gb';
4603
+ /**
4604
+ * Search term for path or description
4605
+ */
4606
+ search?: string;
4607
+ /**
4608
+ * Filter by account type
4609
+ */
4610
+ type?: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
4611
+ };
4612
+
4613
+ export type AccountStandardsControllerGetTemplatesResponse =
4614
+ AccountStandardListResponseDto;
4615
+
4616
+ export type AccountStandardsControllerGetTemplateMetadataData = {
4617
+ /**
4618
+ * Account path to check
4619
+ */
4620
+ path: string;
4621
+ /**
4622
+ * Region code for tenant context
4623
+ */
4624
+ region: 'cn' | 'us' | 'de' | 'gb';
4625
+ };
4626
+
4627
+ export type AccountStandardsControllerGetTemplateMetadataResponse =
4628
+ TemplateMetadataResponseDto;
4629
+
4630
+ export type AccountStandardsControllerGetRegionsData = {
4631
+ /**
4632
+ * Region code for tenant context
4633
+ */
4634
+ region: 'cn' | 'us' | 'de' | 'gb';
4635
+ };
4636
+
4637
+ export type AccountStandardsControllerGetRegionsResponse =
4638
+ RegionsMetadataResponseDto;
4639
+
3634
4640
  export type TransactionControllerCreateData = {
3635
4641
  /**
3636
4642
  * Region code for tenant context
3637
4643
  */
3638
- region: 'cn' | 'us' | 'de';
4644
+ region: 'cn' | 'us' | 'de' | 'gb';
3639
4645
  /**
3640
4646
  * Transaction data with postings
3641
4647
  */
@@ -3668,7 +4674,7 @@ export type TransactionControllerListData = {
3668
4674
  /**
3669
4675
  * Region code for tenant context
3670
4676
  */
3671
- region: 'cn' | 'us' | 'de';
4677
+ region: 'cn' | 'us' | 'de' | 'gb';
3672
4678
  /**
3673
4679
  * Search in narration and payee fields (max 200 chars)
3674
4680
  */
@@ -3681,81 +4687,95 @@ export type TransactionControllerListData = {
3681
4687
 
3682
4688
  export type TransactionControllerListResponse = TransactionListResponseDto;
3683
4689
 
3684
- export type TransactionControllerData = {
4690
+ export type TransactionControllerCreateBatchData = {
3685
4691
  /**
3686
4692
  * Region code for tenant context
3687
4693
  */
3688
- region: 'cn' | 'us' | 'de';
4694
+ region: 'cn' | 'us' | 'de' | 'gb';
4695
+ requestBody: BatchCreateTransactionDto;
3689
4696
  };
3690
4697
 
3691
- export type TransactionControllerResponse = unknown;
4698
+ export type TransactionControllerCreateBatchResponse =
4699
+ BatchTransactionResponseDto;
3692
4700
 
3693
- export type TransactionControllerGetDetailData = {
4701
+ export type TransactionControllerCorrectData = {
3694
4702
  /**
3695
- * Transaction ID
4703
+ * Original transaction ID to correct
3696
4704
  */
3697
4705
  id: string;
3698
4706
  /**
3699
4707
  * Region code for tenant context
3700
4708
  */
3701
- region: 'cn' | 'us' | 'de';
4709
+ region: 'cn' | 'us' | 'de' | 'gb';
4710
+ requestBody: CorrectTransactionDto;
3702
4711
  };
3703
4712
 
3704
- export type TransactionControllerGetDetailResponse = TransactionDetailDto;
4713
+ export type TransactionControllerCorrectResponse = TransactionDetailDto;
3705
4714
 
3706
- export type TransactionControllerUpdateData = {
4715
+ export type TransactionControllerSuggestTagsData = {
3707
4716
  /**
3708
- * Transaction ID
4717
+ * Max suggestions (1-100, default 10)
3709
4718
  */
3710
- id: string;
4719
+ limit?: number;
4720
+ /**
4721
+ * Prefix match, case-insensitive (max 50 chars)
4722
+ */
4723
+ q?: string;
3711
4724
  /**
3712
4725
  * Region code for tenant context
3713
4726
  */
3714
- region: 'cn' | 'us' | 'de';
4727
+ region: 'cn' | 'us' | 'de' | 'gb';
3715
4728
  /**
3716
- * Fields to update (all optional)
4729
+ * usage (default) or name
3717
4730
  */
3718
- requestBody: UpdateTransactionDto;
4731
+ sort?: 'usage' | 'name';
3719
4732
  };
3720
4733
 
3721
- export type TransactionControllerUpdateResponse = TransactionDetailDto;
4734
+ export type TransactionControllerSuggestTagsResponse =
4735
+ TagSuggestionsResponseDto;
3722
4736
 
3723
- export type TransactionController1Data = {
4737
+ export type TransactionControllerGetDetailData = {
4738
+ /**
4739
+ * Transaction ID
4740
+ */
4741
+ id: string;
3724
4742
  /**
3725
4743
  * Region code for tenant context
3726
4744
  */
3727
- region: 'cn' | 'us' | 'de';
4745
+ region: 'cn' | 'us' | 'de' | 'gb';
3728
4746
  };
3729
4747
 
3730
- export type TransactionController1Response = void;
4748
+ export type TransactionControllerGetDetailResponse = TransactionDetailDto;
3731
4749
 
3732
- export type AccountStandardsControllerGetTemplatesData = {
4750
+ export type TransactionControllerUpdateData = {
3733
4751
  /**
3734
- * Region code (cn, us, de)
4752
+ * Transaction ID
3735
4753
  */
3736
- region: 'cn' | 'us' | 'de';
4754
+ id: string;
3737
4755
  /**
3738
- * Search term for path or description
4756
+ * Region code for tenant context
3739
4757
  */
3740
- search?: string;
4758
+ region: 'cn' | 'us' | 'de' | 'gb';
3741
4759
  /**
3742
- * Filter by account type
4760
+ * Fields to update (all optional)
3743
4761
  */
3744
- type?: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
4762
+ requestBody: UpdateTransactionDto;
3745
4763
  };
3746
4764
 
3747
- export type AccountStandardsControllerGetTemplatesResponse =
3748
- AccountStandardListResponseDto;
4765
+ export type TransactionControllerUpdateResponse = TransactionDetailDto;
3749
4766
 
3750
- export type AccountStandardsControllerGetRegionsData = {
4767
+ export type TransactionControllerDeleteData = {
3751
4768
  /**
3752
- * Region code (cn, us, de)
4769
+ * Transaction ID
4770
+ */
4771
+ id: string;
4772
+ /**
4773
+ * Region code for tenant context
3753
4774
  */
3754
- region: 'cn' | 'us' | 'de';
4775
+ region: 'cn' | 'us' | 'de' | 'gb';
3755
4776
  };
3756
4777
 
3757
- export type AccountStandardsControllerGetRegionsResponse =
3758
- RegionsMetadataResponseDto;
4778
+ export type TransactionControllerDeleteResponse = void;
3759
4779
 
3760
4780
  export type BalanceControllerGetBalanceData = {
3761
4781
  /**
@@ -3771,18 +4791,18 @@ export type BalanceControllerGetBalanceData = {
3771
4791
  */
3772
4792
  date?: string;
3773
4793
  /**
3774
- * Region code (cn, us, de)
4794
+ * Region code for tenant context
3775
4795
  */
3776
- region: 'cn' | 'us' | 'de';
4796
+ region: 'cn' | 'us' | 'de' | 'gb';
3777
4797
  };
3778
4798
 
3779
4799
  export type BalanceControllerGetBalanceResponse = BalanceResponseDto;
3780
4800
 
3781
4801
  export type BalanceControllerGetMultiCurrencyBalanceData = {
3782
4802
  /**
3783
- * Region code (cn, us, de)
4803
+ * Region code for tenant context
3784
4804
  */
3785
- region: 'cn' | 'us' | 'de';
4805
+ region: 'cn' | 'us' | 'de' | 'gb';
3786
4806
  };
3787
4807
 
3788
4808
  export type BalanceControllerGetMultiCurrencyBalanceResponse =
@@ -3802,9 +4822,9 @@ export type ReviewControllerFindAllData = {
3802
4822
  */
3803
4823
  page?: number;
3804
4824
  /**
3805
- * Region code (cn, us, de)
4825
+ * Region code for tenant context
3806
4826
  */
3807
- region: 'cn' | 'us' | 'de';
4827
+ region: 'cn' | 'us' | 'de' | 'gb';
3808
4828
  /**
3809
4829
  * Sort order
3810
4830
  */
@@ -3824,9 +4844,9 @@ export type ReviewControllerFindAllResponse = ReviewListResponseDto;
3824
4844
 
3825
4845
  export type ReviewControllerGetStatsData = {
3826
4846
  /**
3827
- * Region code (cn, us, de)
4847
+ * Region code for tenant context
3828
4848
  */
3829
- region: 'cn' | 'us' | 'de';
4849
+ region: 'cn' | 'us' | 'de' | 'gb';
3830
4850
  };
3831
4851
 
3832
4852
  export type ReviewControllerGetStatsResponse = ReviewStatsDto;
@@ -3837,48 +4857,58 @@ export type ReviewControllerFindOneData = {
3837
4857
  */
3838
4858
  id: string;
3839
4859
  /**
3840
- * Region code (cn, us, de)
4860
+ * Region code for tenant context
4861
+ */
4862
+ region: 'cn' | 'us' | 'de' | 'gb';
4863
+ };
4864
+
4865
+ export type ReviewControllerFindOneResponse = ReviewDetailDto;
4866
+
4867
+ export type ReviewControllerResolveData = {
4868
+ /**
4869
+ * Review ID
4870
+ */
4871
+ id: string;
4872
+ /**
4873
+ * Region code for tenant context
3841
4874
  */
3842
- region: 'cn' | 'us' | 'de';
4875
+ region: 'cn' | 'us' | 'de' | 'gb';
4876
+ requestBody: ResolveReviewDto;
3843
4877
  };
3844
4878
 
3845
- export type ReviewControllerFindOneResponse = ReviewDetailDto;
4879
+ export type ReviewControllerResolveResponse = ResolveResultDto;
3846
4880
 
3847
- export type ReviewControllerData = {
4881
+ export type ReviewControllerUndoData = {
3848
4882
  /**
3849
- * Region code (cn, us, de)
4883
+ * Review ID
3850
4884
  */
3851
- region: 'cn' | 'us' | 'de';
3852
- };
3853
-
3854
- export type ReviewControllerResponse = unknown;
3855
-
3856
- export type ReviewController1Data = {
4885
+ id: string;
3857
4886
  /**
3858
- * Region code (cn, us, de)
4887
+ * Region code for tenant context
3859
4888
  */
3860
- region: 'cn' | 'us' | 'de';
4889
+ region: 'cn' | 'us' | 'de' | 'gb';
3861
4890
  };
3862
4891
 
3863
- export type ReviewController1Response = unknown;
4892
+ export type ReviewControllerUndoResponse = UndoResultDto;
3864
4893
 
3865
- export type ReviewController2Data = {
4894
+ export type ReviewControllerBatchResolveData = {
3866
4895
  /**
3867
- * Region code (cn, us, de)
4896
+ * Region code for tenant context
4897
+ */
4898
+ region: 'cn' | 'us' | 'de' | 'gb';
4899
+ /**
4900
+ * Batch resolution request containing review IDs and action
3868
4901
  */
3869
- region: 'cn' | 'us' | 'de';
4902
+ requestBody: BatchResolveDto;
3870
4903
  };
3871
4904
 
3872
- export type ReviewController2Response = unknown;
4905
+ export type ReviewControllerBatchResolveResponse = BatchResolveResultDto;
3873
4906
 
3874
- export type PayeeControllerData = {
3875
- /**
3876
- * Region code (cn, us, de)
3877
- */
3878
- region: 'cn' | 'us' | 'de';
4907
+ export type PayeeControllerCreateData = {
4908
+ requestBody: CreatePayeeDto;
3879
4909
  };
3880
4910
 
3881
- export type PayeeControllerResponse = unknown;
4911
+ export type PayeeControllerCreateResponse = PayeeResponseDto;
3882
4912
 
3883
4913
  export type PayeeControllerFindAllData = {
3884
4914
  /**
@@ -3893,10 +4923,6 @@ export type PayeeControllerFindAllData = {
3893
4923
  * Filter by exact payee name match
3894
4924
  */
3895
4925
  payee?: string;
3896
- /**
3897
- * Region code (cn, us, de)
3898
- */
3899
- region: 'cn' | 'us' | 'de';
3900
4926
  /**
3901
4927
  * Search term for payee name (partial match, case-insensitive). Useful for autocomplete.
3902
4928
  */
@@ -3918,10 +4944,6 @@ export type PayeeControllerAutocompleteData = {
3918
4944
  * Search query for payee name (partial match, case-insensitive)
3919
4945
  */
3920
4946
  q: string;
3921
- /**
3922
- * Region code (cn, us, de)
3923
- */
3924
- region: 'cn' | 'us' | 'de';
3925
4947
  };
3926
4948
 
3927
4949
  export type PayeeControllerAutocompleteResponse = PayeeAutocompleteResponseDto;
@@ -3931,10 +4953,6 @@ export type PayeeControllerGetTopPayeesData = {
3931
4953
  * Maximum number of results
3932
4954
  */
3933
4955
  limit?: number;
3934
- /**
3935
- * Region code (cn, us, de)
3936
- */
3937
- region: 'cn' | 'us' | 'de';
3938
4956
  };
3939
4957
 
3940
4958
  export type PayeeControllerGetTopPayeesResponse = Array<PayeeStatsResponseDto>;
@@ -3944,40 +4962,34 @@ export type PayeeControllerFindOneData = {
3944
4962
  * Payee UUID
3945
4963
  */
3946
4964
  id: string;
3947
- /**
3948
- * Region code (cn, us, de)
3949
- */
3950
- region: 'cn' | 'us' | 'de';
3951
4965
  };
3952
4966
 
3953
4967
  export type PayeeControllerFindOneResponse = PayeeResponseDto;
3954
4968
 
3955
- export type PayeeController1Data = {
4969
+ export type PayeeControllerUpdateData = {
3956
4970
  /**
3957
- * Region code (cn, us, de)
4971
+ * Payee UUID
3958
4972
  */
3959
- region: 'cn' | 'us' | 'de';
4973
+ id: string;
4974
+ requestBody: UpdatePayeeDto;
3960
4975
  };
3961
4976
 
3962
- export type PayeeController1Response = unknown;
4977
+ export type PayeeControllerUpdateResponse = PayeeResponseDto;
3963
4978
 
3964
- export type PayeeController2Data = {
4979
+ export type PayeeControllerDeleteData = {
3965
4980
  /**
3966
- * Region code (cn, us, de)
4981
+ * Payee UUID
3967
4982
  */
3968
- region: 'cn' | 'us' | 'de';
4983
+ id: string;
3969
4984
  };
3970
4985
 
3971
- export type PayeeController2Response = void;
4986
+ export type PayeeControllerDeleteResponse = void;
3972
4987
 
3973
- export type PayeeProfileAdminControllerData = {
3974
- /**
3975
- * Region code (cn, us, de)
3976
- */
3977
- region: 'cn' | 'us' | 'de';
4988
+ export type PayeeProfileAdminControllerCreateData = {
4989
+ requestBody: CreatePayeeProfileDto;
3978
4990
  };
3979
4991
 
3980
- export type PayeeProfileAdminControllerResponse = unknown;
4992
+ export type PayeeProfileAdminControllerCreateResponse = PayeeProfileResponseDto;
3981
4993
 
3982
4994
  export type PayeeProfileAdminControllerFindAllData = {
3983
4995
  /**
@@ -4019,10 +5031,6 @@ export type PayeeProfileAdminControllerFindAllData = {
4019
5031
  * Filter by active status (default: true - show only active)
4020
5032
  */
4021
5033
  isActive?: boolean;
4022
- /**
4023
- * Region code (cn, us, de)
4024
- */
4025
- region: 'cn' | 'us' | 'de';
4026
5034
  /**
4027
5035
  * Search term for canonical name and aliases (case-insensitive)
4028
5036
  */
@@ -4041,65 +5049,64 @@ export type PayeeProfileAdminControllerFindOneData = {
4041
5049
  * Payee profile ID (UUID)
4042
5050
  */
4043
5051
  id: string;
4044
- /**
4045
- * Region code (cn, us, de)
4046
- */
4047
- region: 'cn' | 'us' | 'de';
4048
5052
  };
4049
5053
 
4050
5054
  export type PayeeProfileAdminControllerFindOneResponse =
4051
5055
  PayeeProfileResponseDto;
4052
5056
 
4053
- export type PayeeProfileAdminController1Data = {
5057
+ export type PayeeProfileAdminControllerUpdateData = {
4054
5058
  /**
4055
- * Region code (cn, us, de)
5059
+ * Payee profile ID (UUID)
4056
5060
  */
4057
- region: 'cn' | 'us' | 'de';
5061
+ id: string;
5062
+ requestBody: UpdatePayeeProfileDto;
4058
5063
  };
4059
5064
 
4060
- export type PayeeProfileAdminController1Response = unknown;
5065
+ export type PayeeProfileAdminControllerUpdateResponse = PayeeProfileResponseDto;
4061
5066
 
4062
- export type PayeeProfileAdminController2Data = {
5067
+ export type PayeeProfileAdminControllerDeleteData = {
4063
5068
  /**
4064
- * Region code (cn, us, de)
5069
+ * Payee profile ID (UUID)
4065
5070
  */
4066
- region: 'cn' | 'us' | 'de';
5071
+ id: string;
4067
5072
  };
4068
5073
 
4069
- export type PayeeProfileAdminController2Response = void;
5074
+ export type PayeeProfileAdminControllerDeleteResponse = void;
4070
5075
 
4071
- export type PayeeProfileAdminController3Data = {
5076
+ export type PayeeProfileAdminControllerVerifyData = {
4072
5077
  /**
4073
- * Region code (cn, us, de)
5078
+ * Payee profile ID (UUID)
4074
5079
  */
4075
- region: 'cn' | 'us' | 'de';
5080
+ id: string;
4076
5081
  };
4077
5082
 
4078
- export type PayeeProfileAdminController3Response = unknown;
5083
+ export type PayeeProfileAdminControllerVerifyResponse = PayeeProfileResponseDto;
4079
5084
 
4080
- export type PayeeProfileAdminController4Data = {
5085
+ export type PayeeProfileAdminControllerUnverifyData = {
4081
5086
  /**
4082
- * Region code (cn, us, de)
5087
+ * Payee profile ID (UUID)
4083
5088
  */
4084
- region: 'cn' | 'us' | 'de';
5089
+ id: string;
4085
5090
  };
4086
5091
 
4087
- export type PayeeProfileAdminController4Response = unknown;
5092
+ export type PayeeProfileAdminControllerUnverifyResponse =
5093
+ PayeeProfileResponseDto;
4088
5094
 
4089
- export type CommodityControllerData = {
5095
+ export type CommodityControllerCreateData = {
4090
5096
  /**
4091
- * Region code (cn, us, de)
5097
+ * Region code for tenant context
4092
5098
  */
4093
- region: 'cn' | 'us' | 'de';
5099
+ region: 'cn' | 'us' | 'de' | 'gb';
5100
+ requestBody: CreateCommodityDto;
4094
5101
  };
4095
5102
 
4096
- export type CommodityControllerResponse = unknown;
5103
+ export type CommodityControllerCreateResponse = CommodityResponseDto;
4097
5104
 
4098
5105
  export type CommodityControllerFindAllData = {
4099
5106
  /**
4100
- * Region code (cn, us, de)
5107
+ * Region code for tenant context
4101
5108
  */
4102
- region: 'cn' | 'us' | 'de';
5109
+ region: 'cn' | 'us' | 'de' | 'gb';
4103
5110
  /**
4104
5111
  * Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
4105
5112
  */
@@ -4114,9 +5121,9 @@ export type CommodityControllerFindAllResponse = CommodityListResponseDto;
4114
5121
 
4115
5122
  export type CommodityControllerFindOneData = {
4116
5123
  /**
4117
- * Region code (cn, us, de)
5124
+ * Region code for tenant context
4118
5125
  */
4119
- region: 'cn' | 'us' | 'de';
5126
+ region: 'cn' | 'us' | 'de' | 'gb';
4120
5127
  /**
4121
5128
  * Commodity symbol
4122
5129
  */
@@ -4125,50 +5132,64 @@ export type CommodityControllerFindOneData = {
4125
5132
 
4126
5133
  export type CommodityControllerFindOneResponse = CommodityResponseDto;
4127
5134
 
4128
- export type CommodityController1Data = {
5135
+ export type CommodityControllerUpdateData = {
4129
5136
  /**
4130
- * Region code (cn, us, de)
5137
+ * Region code for tenant context
5138
+ */
5139
+ region: 'cn' | 'us' | 'de' | 'gb';
5140
+ requestBody: UpdateCommodityDto;
5141
+ /**
5142
+ * Commodity symbol
4131
5143
  */
4132
- region: 'cn' | 'us' | 'de';
5144
+ symbol: string;
4133
5145
  };
4134
5146
 
4135
- export type CommodityController1Response = unknown;
5147
+ export type CommodityControllerUpdateResponse = CommodityResponseDto;
4136
5148
 
4137
- export type CommodityController2Data = {
5149
+ export type CommodityControllerDeleteData = {
4138
5150
  /**
4139
- * Region code (cn, us, de)
5151
+ * Region code for tenant context
4140
5152
  */
4141
- region: 'cn' | 'us' | 'de';
5153
+ region: 'cn' | 'us' | 'de' | 'gb';
5154
+ /**
5155
+ * Commodity symbol
5156
+ */
5157
+ symbol: string;
4142
5158
  };
4143
5159
 
4144
- export type CommodityController2Response = void;
5160
+ export type CommodityControllerDeleteResponse = void;
4145
5161
 
4146
- export type CommodityController3Data = {
5162
+ export type CommodityControllerGetOrCreateData = {
4147
5163
  /**
4148
- * Region code (cn, us, de)
5164
+ * Region code for tenant context
5165
+ */
5166
+ region: 'cn' | 'us' | 'de' | 'gb';
5167
+ /**
5168
+ * Commodity symbol
4149
5169
  */
4150
- region: 'cn' | 'us' | 'de';
5170
+ symbol: string;
4151
5171
  };
4152
5172
 
4153
- export type CommodityController3Response = unknown;
5173
+ export type CommodityControllerGetOrCreateResponse = CommodityResponseDto;
4154
5174
 
4155
- export type CommodityController4Data = {
5175
+ export type CommodityControllerBulkCreateData = {
4156
5176
  /**
4157
- * Region code (cn, us, de)
5177
+ * Region code for tenant context
4158
5178
  */
4159
- region: 'cn' | 'us' | 'de';
5179
+ region: 'cn' | 'us' | 'de' | 'gb';
4160
5180
  };
4161
5181
 
4162
- export type CommodityController4Response = unknown;
5182
+ export type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
4163
5183
 
4164
- export type RecurringRuleControllerData = {
5184
+ export type RecurringRuleControllerCreateData = {
4165
5185
  /**
4166
- * Region code (cn, us, de)
5186
+ * Region code for tenant context
4167
5187
  */
4168
- region: 'cn' | 'us' | 'de';
5188
+ region: 'cn' | 'us' | 'de' | 'gb';
5189
+ requestBody: CreateRecurringRuleDto;
4169
5190
  };
4170
5191
 
4171
- export type RecurringRuleControllerResponse = unknown;
5192
+ export type RecurringRuleControllerCreateResponse = RecurringRuleResponseDto;
4172
5193
 
4173
5194
  export type RecurringRuleControllerFindAllData = {
4174
5195
  /**
@@ -4184,22 +5205,28 @@ export type RecurringRuleControllerFindAllData = {
4184
5205
  */
4185
5206
  isActive?: boolean;
4186
5207
  /**
4187
- * Region code (cn, us, de)
5208
+ * Region code for tenant context
4188
5209
  */
4189
- region: 'cn' | 'us' | 'de';
5210
+ region: 'cn' | 'us' | 'de' | 'gb';
4190
5211
  };
4191
5212
 
4192
5213
  export type RecurringRuleControllerFindAllResponse =
4193
5214
  Array<RecurringRuleResponseDto>;
4194
5215
 
4195
- export type RecurringRuleController1Data = {
5216
+ export type RecurringRuleControllerCreateFromTransactionData = {
4196
5217
  /**
4197
- * Region code (cn, us, de)
5218
+ * Region code for tenant context
5219
+ */
5220
+ region: 'cn' | 'us' | 'de' | 'gb';
5221
+ requestBody: CreateRuleFromTransactionDto;
5222
+ /**
5223
+ * Source transaction ID
4198
5224
  */
4199
- region: 'cn' | 'us' | 'de';
5225
+ transactionId: string;
4200
5226
  };
4201
5227
 
4202
- export type RecurringRuleController1Response = unknown;
5228
+ export type RecurringRuleControllerCreateFromTransactionResponse =
5229
+ RecurringRuleResponseDto;
4203
5230
 
4204
5231
  export type RecurringRuleControllerFindOneData = {
4205
5232
  /**
@@ -4207,30 +5234,39 @@ export type RecurringRuleControllerFindOneData = {
4207
5234
  */
4208
5235
  id: string;
4209
5236
  /**
4210
- * Region code (cn, us, de)
5237
+ * Region code for tenant context
4211
5238
  */
4212
- region: 'cn' | 'us' | 'de';
5239
+ region: 'cn' | 'us' | 'de' | 'gb';
4213
5240
  };
4214
5241
 
4215
5242
  export type RecurringRuleControllerFindOneResponse = RecurringRuleResponseDto;
4216
5243
 
4217
- export type RecurringRuleController2Data = {
5244
+ export type RecurringRuleControllerUpdateData = {
4218
5245
  /**
4219
- * Region code (cn, us, de)
5246
+ * Rule ID
5247
+ */
5248
+ id: string;
5249
+ /**
5250
+ * Region code for tenant context
4220
5251
  */
4221
- region: 'cn' | 'us' | 'de';
5252
+ region: 'cn' | 'us' | 'de' | 'gb';
5253
+ requestBody: UpdateRecurringRuleDto;
4222
5254
  };
4223
5255
 
4224
- export type RecurringRuleController2Response = unknown;
5256
+ export type RecurringRuleControllerUpdateResponse = RecurringRuleResponseDto;
4225
5257
 
4226
- export type RecurringRuleController3Data = {
5258
+ export type RecurringRuleControllerDeleteData = {
4227
5259
  /**
4228
- * Region code (cn, us, de)
5260
+ * Rule ID
5261
+ */
5262
+ id: string;
5263
+ /**
5264
+ * Region code for tenant context
4229
5265
  */
4230
- region: 'cn' | 'us' | 'de';
5266
+ region: 'cn' | 'us' | 'de' | 'gb';
4231
5267
  };
4232
5268
 
4233
- export type RecurringRuleController3Response = void;
5269
+ export type RecurringRuleControllerDeleteResponse = void;
4234
5270
 
4235
5271
  export type RecurringRuleControllerGetWithStatsData = {
4236
5272
  /**
@@ -4238,9 +5274,9 @@ export type RecurringRuleControllerGetWithStatsData = {
4238
5274
  */
4239
5275
  id: string;
4240
5276
  /**
4241
- * Region code (cn, us, de)
5277
+ * Region code for tenant context
4242
5278
  */
4243
- region: 'cn' | 'us' | 'de';
5279
+ region: 'cn' | 'us' | 'de' | 'gb';
4244
5280
  };
4245
5281
 
4246
5282
  export type RecurringRuleControllerGetWithStatsResponse =
@@ -4252,9 +5288,9 @@ export type ExpectedTransactionControllerFindAllData = {
4252
5288
  */
4253
5289
  fromDate?: string;
4254
5290
  /**
4255
- * Region code (cn, us, de)
5291
+ * Region code for tenant context
4256
5292
  */
4257
- region: 'cn' | 'us' | 'de';
5293
+ region: 'cn' | 'us' | 'de' | 'gb';
4258
5294
  /**
4259
5295
  * Filter by recurring rule ID
4260
5296
  */
@@ -4274,9 +5310,9 @@ export type ExpectedTransactionControllerFindAllResponse =
4274
5310
 
4275
5311
  export type ExpectedTransactionControllerFindOverdueData = {
4276
5312
  /**
4277
- * Region code (cn, us, de)
5313
+ * Region code for tenant context
4278
5314
  */
4279
- region: 'cn' | 'us' | 'de';
5315
+ region: 'cn' | 'us' | 'de' | 'gb';
4280
5316
  };
4281
5317
 
4282
5318
  export type ExpectedTransactionControllerFindOverdueResponse =
@@ -4288,58 +5324,82 @@ export type ExpectedTransactionControllerFindOneData = {
4288
5324
  */
4289
5325
  id: string;
4290
5326
  /**
4291
- * Region code (cn, us, de)
5327
+ * Region code for tenant context
4292
5328
  */
4293
- region: 'cn' | 'us' | 'de';
5329
+ region: 'cn' | 'us' | 'de' | 'gb';
4294
5330
  };
4295
5331
 
4296
5332
  export type ExpectedTransactionControllerFindOneResponse =
4297
5333
  ExpectedTransactionResponseDto;
4298
5334
 
4299
- export type ExpectedTransactionControllerData = {
5335
+ export type ExpectedTransactionControllerSkipData = {
4300
5336
  /**
4301
- * Region code (cn, us, de)
5337
+ * Expected transaction ID
5338
+ */
5339
+ id: string;
5340
+ /**
5341
+ * Region code for tenant context
4302
5342
  */
4303
- region: 'cn' | 'us' | 'de';
5343
+ region: 'cn' | 'us' | 'de' | 'gb';
4304
5344
  };
4305
5345
 
4306
- export type ExpectedTransactionControllerResponse = unknown;
5346
+ export type ExpectedTransactionControllerSkipResponse =
5347
+ ExpectedTransactionResponseDto;
4307
5348
 
4308
- export type ExpectedTransactionController1Data = {
5349
+ export type ExpectedTransactionControllerUndoSkipData = {
4309
5350
  /**
4310
- * Region code (cn, us, de)
5351
+ * Expected transaction ID
5352
+ */
5353
+ id: string;
5354
+ /**
5355
+ * Region code for tenant context
4311
5356
  */
4312
- region: 'cn' | 'us' | 'de';
5357
+ region: 'cn' | 'us' | 'de' | 'gb';
4313
5358
  };
4314
5359
 
4315
- export type ExpectedTransactionController1Response = unknown;
5360
+ export type ExpectedTransactionControllerUndoSkipResponse =
5361
+ ExpectedTransactionResponseDto;
4316
5362
 
4317
- export type ExpectedTransactionController2Data = {
5363
+ export type ExpectedTransactionControllerConfirmMatchData = {
4318
5364
  /**
4319
- * Region code (cn, us, de)
5365
+ * Expected transaction ID
5366
+ */
5367
+ id: string;
5368
+ /**
5369
+ * Region code for tenant context
4320
5370
  */
4321
- region: 'cn' | 'us' | 'de';
5371
+ region: 'cn' | 'us' | 'de' | 'gb';
5372
+ requestBody: ConfirmMatchDto;
4322
5373
  };
4323
5374
 
4324
- export type ExpectedTransactionController2Response = unknown;
5375
+ export type ExpectedTransactionControllerConfirmMatchResponse = unknown;
4325
5376
 
4326
- export type ExpectedTransactionController3Data = {
5377
+ export type ExpectedTransactionControllerUnmatchData = {
4327
5378
  /**
4328
- * Region code (cn, us, de)
5379
+ * Expected transaction ID
5380
+ */
5381
+ id: string;
5382
+ /**
5383
+ * Region code for tenant context
4329
5384
  */
4330
- region: 'cn' | 'us' | 'de';
5385
+ region: 'cn' | 'us' | 'de' | 'gb';
4331
5386
  };
4332
5387
 
4333
- export type ExpectedTransactionController3Response = unknown;
5388
+ export type ExpectedTransactionControllerUnmatchResponse = unknown;
4334
5389
 
4335
- export type ExpectedTransactionController4Data = {
5390
+ export type ExpectedTransactionControllerEnterNowData = {
4336
5391
  /**
4337
- * Region code (cn, us, de)
5392
+ * Expected transaction ID
5393
+ */
5394
+ id: string;
5395
+ /**
5396
+ * Region code for tenant context
4338
5397
  */
4339
- region: 'cn' | 'us' | 'de';
5398
+ region: 'cn' | 'us' | 'de' | 'gb';
5399
+ requestBody: EnterNowDto;
4340
5400
  };
4341
5401
 
4342
- export type ExpectedTransactionController4Response = unknown;
5402
+ export type ExpectedTransactionControllerEnterNowResponse = unknown;
4343
5403
 
4344
5404
  export type ForecastControllerGetForecastData = {
4345
5405
  /**
@@ -4347,21 +5407,23 @@ export type ForecastControllerGetForecastData = {
4347
5407
  */
4348
5408
  months?: number;
4349
5409
  /**
4350
- * Region code (cn, us, de)
5410
+ * Region code for tenant context
4351
5411
  */
4352
- region: 'cn' | 'us' | 'de';
5412
+ region: 'cn' | 'us' | 'de' | 'gb';
4353
5413
  };
4354
5414
 
4355
5415
  export type ForecastControllerGetForecastResponse = ForecastResponseDto;
4356
5416
 
4357
- export type TransactionRuleControllerData = {
5417
+ export type TransactionRuleControllerCreateData = {
4358
5418
  /**
4359
- * Region code (cn, us, de)
5419
+ * Region code for tenant context
4360
5420
  */
4361
- region: 'cn' | 'us' | 'de';
5421
+ region: 'cn' | 'us' | 'de' | 'gb';
5422
+ requestBody: CreateTransactionRuleDto;
4362
5423
  };
4363
5424
 
4364
- export type TransactionRuleControllerResponse = unknown;
5425
+ export type TransactionRuleControllerCreateResponse =
5426
+ TransactionRuleResponseDto;
4365
5427
 
4366
5428
  export type TransactionRuleControllerListData = {
4367
5429
  /**
@@ -4385,9 +5447,9 @@ export type TransactionRuleControllerListData = {
4385
5447
  */
4386
5448
  offset?: number;
4387
5449
  /**
4388
- * Region code (cn, us, de)
5450
+ * Region code for tenant context
4389
5451
  */
4390
- region: 'cn' | 'us' | 'de';
5452
+ region: 'cn' | 'us' | 'de' | 'gb';
4391
5453
  };
4392
5454
 
4393
5455
  export type TransactionRuleControllerListResponse =
@@ -4395,22 +5457,24 @@ export type TransactionRuleControllerListResponse =
4395
5457
 
4396
5458
  export type TransactionRuleControllerValidateData = {
4397
5459
  /**
4398
- * Region code (cn, us, de)
5460
+ * Region code for tenant context
4399
5461
  */
4400
- region: 'cn' | 'us' | 'de';
5462
+ region: 'cn' | 'us' | 'de' | 'gb';
4401
5463
  requestBody: ValidateRuleDto;
4402
5464
  };
4403
5465
 
4404
5466
  export type TransactionRuleControllerValidateResponse = ValidateRuleResponseDto;
4405
5467
 
4406
- export type TransactionRuleController1Data = {
5468
+ export type TransactionRuleControllerBulkCreateData = {
4407
5469
  /**
4408
- * Region code (cn, us, de)
5470
+ * Region code for tenant context
4409
5471
  */
4410
- region: 'cn' | 'us' | 'de';
5472
+ region: 'cn' | 'us' | 'de' | 'gb';
5473
+ requestBody: BulkCreateRulesDto;
4411
5474
  };
4412
5475
 
4413
- export type TransactionRuleController1Response = unknown;
5476
+ export type TransactionRuleControllerBulkCreateResponse =
5477
+ BulkCreateRulesResponseDto;
4414
5478
 
4415
5479
  export type TransactionRuleControllerExportData = {
4416
5480
  /**
@@ -4418,9 +5482,9 @@ export type TransactionRuleControllerExportData = {
4418
5482
  */
4419
5483
  format: 'json';
4420
5484
  /**
4421
- * Region code (cn, us, de)
5485
+ * Region code for tenant context
4422
5486
  */
4423
- region: 'cn' | 'us' | 'de';
5487
+ region: 'cn' | 'us' | 'de' | 'gb';
4424
5488
  };
4425
5489
 
4426
5490
  export type TransactionRuleControllerExportResponse = ExportRulesResponseDto;
@@ -4431,9 +5495,9 @@ export type TransactionRuleControllerGetStatisticsData = {
4431
5495
  */
4432
5496
  period: '7d' | '30d' | '90d';
4433
5497
  /**
4434
- * Region code (cn, us, de)
5498
+ * Region code for tenant context
4435
5499
  */
4436
- region: 'cn' | 'us' | 'de';
5500
+ region: 'cn' | 'us' | 'de' | 'gb';
4437
5501
  };
4438
5502
 
4439
5503
  export type TransactionRuleControllerGetStatisticsResponse =
@@ -4441,9 +5505,9 @@ export type TransactionRuleControllerGetStatisticsResponse =
4441
5505
 
4442
5506
  export type TransactionRuleControllerGetDetailData = {
4443
5507
  /**
4444
- * Region code (cn, us, de)
5508
+ * Region code for tenant context
4445
5509
  */
4446
- region: 'cn' | 'us' | 'de';
5510
+ region: 'cn' | 'us' | 'de' | 'gb';
4447
5511
  /**
4448
5512
  * Rule ID
4449
5513
  */
@@ -4453,29 +5517,39 @@ export type TransactionRuleControllerGetDetailData = {
4453
5517
  export type TransactionRuleControllerGetDetailResponse =
4454
5518
  TransactionRuleResponseDto;
4455
5519
 
4456
- export type TransactionRuleController2Data = {
5520
+ export type TransactionRuleControllerUpdateData = {
4457
5521
  /**
4458
- * Region code (cn, us, de)
5522
+ * Region code for tenant context
5523
+ */
5524
+ region: 'cn' | 'us' | 'de' | 'gb';
5525
+ requestBody: UpdateTransactionRuleDto;
5526
+ /**
5527
+ * Rule ID to update
4459
5528
  */
4460
- region: 'cn' | 'us' | 'de';
5529
+ ruleId: string;
4461
5530
  };
4462
5531
 
4463
- export type TransactionRuleController2Response = unknown;
5532
+ export type TransactionRuleControllerUpdateResponse =
5533
+ TransactionRuleResponseDto;
4464
5534
 
4465
- export type TransactionRuleController3Data = {
5535
+ export type TransactionRuleControllerDeleteData = {
4466
5536
  /**
4467
- * Region code (cn, us, de)
5537
+ * Region code for tenant context
4468
5538
  */
4469
- region: 'cn' | 'us' | 'de';
5539
+ region: 'cn' | 'us' | 'de' | 'gb';
5540
+ /**
5541
+ * Rule ID to delete
5542
+ */
5543
+ ruleId: string;
4470
5544
  };
4471
5545
 
4472
- export type TransactionRuleController3Response = void;
5546
+ export type TransactionRuleControllerDeleteResponse = void;
4473
5547
 
4474
5548
  export type TransactionRuleControllerTestData = {
4475
5549
  /**
4476
- * Region code (cn, us, de)
5550
+ * Region code for tenant context
4477
5551
  */
4478
- region: 'cn' | 'us' | 'de';
5552
+ region: 'cn' | 'us' | 'de' | 'gb';
4479
5553
  requestBody: TestRuleDto;
4480
5554
  /**
4481
5555
  * Rule ID to test
@@ -4486,10 +5560,6 @@ export type TransactionRuleControllerTestData = {
4486
5560
  export type TransactionRuleControllerTestResponse = TestRuleResponseDto;
4487
5561
 
4488
5562
  export type UserControllerDeleteOwnUserData = {
4489
- /**
4490
- * Region code (cn, us, de)
4491
- */
4492
- region: 'cn' | 'us' | 'de';
4493
5563
  requestBody: DeleteOwnUserDto;
4494
5564
  };
4495
5565
 
@@ -4497,19 +5567,11 @@ export type UserControllerDeleteOwnUserResponse = void;
4497
5567
 
4498
5568
  export type UserControllerGetUserData = {
4499
5569
  acceptLanguage: string;
4500
- /**
4501
- * Region code (cn, us, de)
4502
- */
4503
- region: 'cn' | 'us' | 'de';
4504
5570
  };
4505
5571
 
4506
5572
  export type UserControllerGetUserResponse = unknown;
4507
5573
 
4508
5574
  export type UserControllerSignupUserData = {
4509
- /**
4510
- * Region code (cn, us, de)
4511
- */
4512
- region: 'cn' | 'us' | 'de';
4513
5575
  requestBody: SignupDto;
4514
5576
  };
4515
5577
 
@@ -4520,10 +5582,6 @@ export type UserControllerDeleteUserData = {
4520
5582
  * User ID to delete
4521
5583
  */
4522
5584
  id: string;
4523
- /**
4524
- * Region code (cn, us, de)
4525
- */
4526
- region: 'cn' | 'us' | 'de';
4527
5585
  };
4528
5586
 
4529
5587
  export type UserControllerDeleteUserResponse = void;
@@ -4533,19 +5591,11 @@ export type UserControllerGetUserInfoData = {
4533
5591
  * User ID
4534
5592
  */
4535
5593
  id: string;
4536
- /**
4537
- * Region code (cn, us, de)
4538
- */
4539
- region: 'cn' | 'us' | 'de';
4540
5594
  };
4541
5595
 
4542
5596
  export type UserControllerGetUserInfoResponse = unknown;
4543
5597
 
4544
5598
  export type UserControllerUpdateUserSettingData = {
4545
- /**
4546
- * Region code (cn, us, de)
4547
- */
4548
- region: 'cn' | 'us' | 'de';
4549
5599
  requestBody: UpdateUserSettingDto;
4550
5600
  };
4551
5601
 
@@ -4560,119 +5610,175 @@ export type UserControllerGetAllUserSettingsByPageData = {
4560
5610
  * Page size
4561
5611
  */
4562
5612
  pageSize: number;
4563
- /**
4564
- * Region code (cn, us, de)
4565
- */
4566
- region: 'cn' | 'us' | 'de';
4567
5613
  };
4568
5614
 
4569
5615
  export type UserControllerGetAllUserSettingsByPageResponse = unknown;
4570
5616
 
4571
- export type UserControllerGetAssetLiabilitySummaryData = {
5617
+ export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
5618
+
5619
+ export type PropertyControllerGetAllResponse = unknown;
5620
+
5621
+ export type PropertyControllerGetByKeyData = {
4572
5622
  /**
4573
- * Region code (cn, us, de)
5623
+ * Property key
4574
5624
  */
4575
- region: 'cn' | 'us' | 'de';
5625
+ key: string;
4576
5626
  };
4577
5627
 
4578
- export type UserControllerGetAssetLiabilitySummaryResponse = unknown;
5628
+ export type PropertyControllerGetByKeyResponse = unknown;
4579
5629
 
4580
- export type PropertyControllerGetAllData = {
5630
+ export type PropertyControllerUpdateData = {
4581
5631
  /**
4582
- * Region code (cn, us, de)
5632
+ * Property key
4583
5633
  */
4584
- region: 'cn' | 'us' | 'de';
5634
+ key: string;
5635
+ requestBody: UpdatePropertyDto;
4585
5636
  };
4586
5637
 
4587
- export type PropertyControllerGetAllResponse = unknown;
5638
+ export type PropertyControllerUpdateResponse = unknown;
4588
5639
 
4589
- export type PropertyControllerGetByKeyData = {
5640
+ export type PropertyControllerDeleteData = {
4590
5641
  /**
4591
5642
  * Property key
4592
5643
  */
4593
5644
  key: string;
5645
+ };
5646
+
5647
+ export type PropertyControllerDeleteResponse = void;
5648
+
5649
+ export type ExportControllerExportBeancountResponse = unknown;
5650
+
5651
+ export type FileImportControllerImportFileData = {
4594
5652
  /**
4595
- * Region code (cn, us, de)
5653
+ * Bill file to import
5654
+ */
5655
+ formData: FileImportDto;
5656
+ /**
5657
+ * Region code for tenant context
4596
5658
  */
4597
- region: 'cn' | 'us' | 'de';
5659
+ region: 'cn' | 'us' | 'de' | 'gb';
4598
5660
  };
4599
5661
 
4600
- export type PropertyControllerGetByKeyResponse = unknown;
5662
+ export type FileImportControllerImportFileResponse = ImportResultDto;
4601
5663
 
4602
- export type PropertyControllerData = {
5664
+ export type FileImportControllerIdentifyFileData = {
4603
5665
  /**
4604
- * Region code (cn, us, de)
5666
+ * File to identify
5667
+ */
5668
+ formData: FileImportDto;
5669
+ /**
5670
+ * Region code for tenant context
4605
5671
  */
4606
- region: 'cn' | 'us' | 'de';
5672
+ region: 'cn' | 'us' | 'de' | 'gb';
4607
5673
  };
4608
5674
 
4609
- export type PropertyControllerResponse = unknown;
5675
+ export type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
4610
5676
 
4611
- export type PropertyController1Data = {
5677
+ export type FileImportControllerImportBeancountData = {
4612
5678
  /**
4613
- * Region code (cn, us, de)
5679
+ * Beancount file to import
5680
+ */
5681
+ formData: FileImportDto;
5682
+ /**
5683
+ * Region code for tenant context
5684
+ */
5685
+ region: 'cn' | 'us' | 'de' | 'gb';
5686
+ };
5687
+
5688
+ export type FileImportControllerImportBeancountResponse = {
5689
+ imported?: number;
5690
+ skipped?: number;
5691
+ failed?: number;
5692
+ accountsCreated?: number;
5693
+ errors?: Array<{
5694
+ [key: string]: unknown;
5695
+ }>;
5696
+ };
5697
+
5698
+ export type ImporterConfigControllerGetConfigData = {
5699
+ /**
5700
+ * 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
4614
5701
  */
4615
- region: 'cn' | 'us' | 'de';
5702
+ importerId: string;
5703
+ /**
5704
+ * Region code for tenant context
5705
+ */
5706
+ region: 'cn' | 'us' | 'de' | 'gb';
4616
5707
  };
4617
5708
 
4618
- export type PropertyController1Response = void;
5709
+ export type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
4619
5710
 
4620
- export type FileImportControllerImportFileData = {
5711
+ export type ImporterConfigControllerUpdateConfigData = {
5712
+ /**
5713
+ * 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
5714
+ */
5715
+ importerId: string;
4621
5716
  /**
4622
- * Bill file to import
5717
+ * Region code for tenant context
4623
5718
  */
4624
- formData: FileImportDto;
5719
+ region: 'cn' | 'us' | 'de' | 'gb';
4625
5720
  /**
4626
- * Region code (cn, us, de)
5721
+ * Partial configuration update. Only provided fields will be updated.
4627
5722
  */
4628
- region: 'cn' | 'us' | 'de';
5723
+ requestBody: UpdateImporterConfigDto;
4629
5724
  };
4630
5725
 
4631
- export type FileImportControllerImportFileResponse = ImportResultDto;
5726
+ export type ImporterConfigControllerUpdateConfigResponse = ImporterConfigDto;
4632
5727
 
4633
- export type FileImportControllerIdentifyFileData = {
5728
+ export type ImporterConfigControllerResetConfigData = {
4634
5729
  /**
4635
- * File to identify
5730
+ * 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
4636
5731
  */
4637
- formData: FileImportDto;
5732
+ importerId: string;
4638
5733
  /**
4639
- * Region code (cn, us, de)
5734
+ * Region code for tenant context
4640
5735
  */
4641
- region: 'cn' | 'us' | 'de';
5736
+ region: 'cn' | 'us' | 'de' | 'gb';
4642
5737
  };
4643
5738
 
4644
- export type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
5739
+ export type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
4645
5740
 
4646
- export type ImporterConfigControllerGetConfigData = {
5741
+ export type PlatformControllerFindAllResponse = unknown;
5742
+
5743
+ export type PlatformControllerCreateData = {
5744
+ requestBody: CreatePlatformDto;
5745
+ };
5746
+
5747
+ export type PlatformControllerCreateResponse = unknown;
5748
+
5749
+ export type PlatformControllerGetPlatformListResponse = unknown;
5750
+
5751
+ export type PlatformControllerMatchPlatformsData = {
4647
5752
  /**
4648
- * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk
5753
+ * Search query — Chinese name, English name, or abbreviation
4649
5754
  */
4650
- importerId: string;
5755
+ q: string;
4651
5756
  /**
4652
- * Region code (cn, us, de)
5757
+ * Region code for category override lookup
4653
5758
  */
4654
- region: 'cn' | 'us' | 'de';
5759
+ region?: string;
4655
5760
  };
4656
5761
 
4657
- export type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
5762
+ export type PlatformControllerMatchPlatformsResponse = unknown;
4658
5763
 
4659
- export type ImporterConfigControllerData = {
5764
+ export type PlatformControllerUpdateData = {
4660
5765
  /**
4661
- * Region code (cn, us, de)
5766
+ * Platform ID
4662
5767
  */
4663
- region: 'cn' | 'us' | 'de';
5768
+ id: string;
5769
+ requestBody: UpdatePlatformDto;
4664
5770
  };
4665
5771
 
4666
- export type ImporterConfigControllerResponse = unknown;
5772
+ export type PlatformControllerUpdateResponse = unknown;
4667
5773
 
4668
- export type ImporterConfigController1Data = {
5774
+ export type PlatformControllerDeleteData = {
4669
5775
  /**
4670
- * Region code (cn, us, de)
5776
+ * Platform ID
4671
5777
  */
4672
- region: 'cn' | 'us' | 'de';
5778
+ id: string;
4673
5779
  };
4674
5780
 
4675
- export type ImporterConfigController1Response = unknown;
5781
+ export type PlatformControllerDeleteResponse = void;
4676
5782
 
4677
5783
  export type ProviderSyncControllerSyncData = {
4678
5784
  /**
@@ -4698,9 +5804,9 @@ export type ProviderSyncControllerSyncResponse = ProviderSyncResponseDto;
4698
5804
 
4699
5805
  export type ProviderSyncControllerGetSupportedProvidersData = {
4700
5806
  /**
4701
- * Region code (cn, us, de)
5807
+ * Region code for tenant context
4702
5808
  */
4703
- region: 'cn' | 'us' | 'de';
5809
+ region: 'cn' | 'us' | 'de' | 'gb';
4704
5810
  };
4705
5811
 
4706
5812
  export type ProviderSyncControllerGetSupportedProvidersResponse =
@@ -4712,18 +5818,18 @@ export type ProviderSyncControllerIsProviderSupportedData = {
4712
5818
  */
4713
5819
  providerName: string;
4714
5820
  /**
4715
- * Region code (cn, us, de)
5821
+ * Region code for tenant context
4716
5822
  */
4717
- region: 'cn' | 'us' | 'de';
5823
+ region: 'cn' | 'us' | 'de' | 'gb';
4718
5824
  };
4719
5825
 
4720
5826
  export type ProviderSyncControllerIsProviderSupportedResponse = unknown;
4721
5827
 
4722
5828
  export type TelemetryControllerReportTelemetryData = {
4723
5829
  /**
4724
- * Region code (cn, us, de)
5830
+ * Region code for tenant context
4725
5831
  */
4726
- region: 'cn' | 'us' | 'de';
5832
+ region: 'cn' | 'us' | 'de' | 'gb';
4727
5833
  requestBody: ParserTelemetryReportDto;
4728
5834
  };
4729
5835
 
@@ -4731,9 +5837,9 @@ export type TelemetryControllerReportTelemetryResponse = unknown;
4731
5837
 
4732
5838
  export type NlpControllerProcessNaturalLanguageData = {
4733
5839
  /**
4734
- * Region code (cn, us, de)
5840
+ * Region code for tenant context
4735
5841
  */
4736
- region: 'cn' | 'us' | 'de';
5842
+ region: 'cn' | 'us' | 'de' | 'gb';
4737
5843
  /**
4738
5844
  * Natural language transaction input with optional session ID
4739
5845
  */
@@ -4744,9 +5850,9 @@ export type NlpControllerProcessNaturalLanguageResponse = NlpResponseDto;
4744
5850
 
4745
5851
  export type NlpControllerClearSessionData = {
4746
5852
  /**
4747
- * Region code (cn, us, de)
5853
+ * Region code for tenant context
4748
5854
  */
4749
- region: 'cn' | 'us' | 'de';
5855
+ region: 'cn' | 'us' | 'de' | 'gb';
4750
5856
  /**
4751
5857
  * Specific session ID to clear (defaults to user session)
4752
5858
  */
@@ -4757,9 +5863,9 @@ export type NlpControllerClearSessionResponse = void;
4757
5863
 
4758
5864
  export type NlpControllerGetSessionData = {
4759
5865
  /**
4760
- * Region code (cn, us, de)
5866
+ * Region code for tenant context
4761
5867
  */
4762
- region: 'cn' | 'us' | 'de';
5868
+ region: 'cn' | 'us' | 'de' | 'gb';
4763
5869
  /**
4764
5870
  * Specific session ID to get (defaults to user session)
4765
5871
  */
@@ -4768,173 +5874,15 @@ export type NlpControllerGetSessionData = {
4768
5874
 
4769
5875
  export type NlpControllerGetSessionResponse = unknown;
4770
5876
 
4771
- export type PlatformControllerFindAllData = {
4772
- /**
4773
- * Region code (cn, us, de)
4774
- */
4775
- region: 'cn' | 'us' | 'de';
4776
- };
4777
-
4778
- export type PlatformControllerFindAllResponse = unknown;
4779
-
4780
- export type PlatformControllerData = {
4781
- /**
4782
- * Region code (cn, us, de)
4783
- */
4784
- region: 'cn' | 'us' | 'de';
4785
- };
4786
-
4787
- export type PlatformControllerResponse = unknown;
4788
-
4789
- export type PlatformControllerGetPlatformListData = {
4790
- /**
4791
- * Region code (cn, us, de)
4792
- */
4793
- region: 'cn' | 'us' | 'de';
4794
- };
4795
-
4796
- export type PlatformControllerGetPlatformListResponse = unknown;
4797
-
4798
- export type PlatformController1Data = {
4799
- /**
4800
- * Region code (cn, us, de)
4801
- */
4802
- region: 'cn' | 'us' | 'de';
4803
- };
4804
-
4805
- export type PlatformController1Response = unknown;
4806
-
4807
- export type PlatformController2Data = {
4808
- /**
4809
- * Region code (cn, us, de)
4810
- */
4811
- region: 'cn' | 'us' | 'de';
4812
- };
4813
-
4814
- export type PlatformController2Response = void;
4815
-
4816
- export type SymbolControllerLookupSymbolData = {
4817
- /**
4818
- * Geographic area filter (e.g., CN, US)
4819
- */
4820
- area?: unknown;
4821
- /**
4822
- * Asset class filter
4823
- */
4824
- assetClass?: unknown;
4825
- /**
4826
- * Asset sub-class filter
4827
- */
4828
- assetSubClass?: unknown;
4829
- /**
4830
- * Include index symbols in results
4831
- */
4832
- includeIndices?: unknown;
4833
- /**
4834
- * Search query string
4835
- */
4836
- query?: unknown;
4837
- /**
4838
- * Region code (cn, us, de)
4839
- */
4840
- region: 'cn' | 'us' | 'de';
4841
- };
4842
-
4843
- export type SymbolControllerLookupSymbolResponse = unknown;
4844
-
4845
- export type SymbolControllerGetSymbolDataData = {
4846
- /**
4847
- * Data source provider
4848
- */
4849
- dataSource:
4850
- | 'ALPHA_VANTAGE'
4851
- | 'EOD_HISTORICAL_DATA'
4852
- | 'FINANCIAL_MODELING_PREP'
4853
- | 'MANUAL'
4854
- | 'RAPID_API'
4855
- | 'YAHOO'
4856
- | 'COINGECKO'
4857
- | 'TUSHARE'
4858
- | 'BLOOMBERG'
4859
- | 'CSI'
4860
- | 'STOOQ'
4861
- | 'TRADING_VIEW';
4862
- /**
4863
- * Include historical price data (0 or 1)
4864
- */
4865
- includeHistoricalData?: unknown;
4866
- /**
4867
- * Region code (cn, us, de)
4868
- */
4869
- region: 'cn' | 'us' | 'de';
4870
- /**
4871
- * Symbol identifier (e.g., ticker code)
4872
- */
4873
- symbol: string;
4874
- };
4875
-
4876
- export type SymbolControllerGetSymbolDataResponse = unknown;
4877
-
4878
- export type SymbolControllerGatherSymbolForDateData = {
4879
- /**
4880
- * Data source provider
4881
- */
4882
- dataSource:
4883
- | 'ALPHA_VANTAGE'
4884
- | 'EOD_HISTORICAL_DATA'
4885
- | 'FINANCIAL_MODELING_PREP'
4886
- | 'MANUAL'
4887
- | 'RAPID_API'
4888
- | 'YAHOO'
4889
- | 'COINGECKO'
4890
- | 'TUSHARE'
4891
- | 'BLOOMBERG'
4892
- | 'CSI'
4893
- | 'STOOQ'
4894
- | 'TRADING_VIEW';
4895
- /**
4896
- * Date in ISO 8601 format (YYYY-MM-DD)
4897
- */
4898
- dateString: string;
4899
- /**
4900
- * Region code (cn, us, de)
4901
- */
4902
- region: 'cn' | 'us' | 'de';
4903
- /**
4904
- * Symbol identifier (e.g., ticker code)
4905
- */
4906
- symbol: string;
4907
- };
4908
-
4909
- export type SymbolControllerGatherSymbolForDateResponse = unknown;
4910
-
4911
- export type SymbolControllerData = {
4912
- /**
4913
- * Region code (cn, us, de)
4914
- */
4915
- region: 'cn' | 'us' | 'de';
4916
- };
4917
-
4918
- export type SymbolControllerResponse = unknown;
4919
-
4920
- export type CacheControllerFlushCacheData = {
4921
- /**
4922
- * Region code (cn, us, de)
4923
- */
4924
- region: 'cn' | 'us' | 'de';
4925
- };
4926
-
4927
- export type CacheControllerFlushCacheResponse = unknown;
4928
-
4929
5877
  export type DashboardControllerGetNetWorthData = {
4930
5878
  /**
4931
5879
  * Date for balance calculation (ISO 8601 format)
4932
5880
  */
4933
5881
  date?: string;
4934
5882
  /**
4935
- * Region code (cn, us, de)
5883
+ * Region code for tenant context
4936
5884
  */
4937
- region: 'cn' | 'us' | 'de';
5885
+ region: 'cn' | 'us' | 'de' | 'gb';
4938
5886
  };
4939
5887
 
4940
5888
  export type DashboardControllerGetNetWorthResponse = NetWorthResponseDto;
@@ -4949,9 +5897,9 @@ export type DashboardControllerGetAccountsData = {
4949
5897
  */
4950
5898
  groupBy?: 'platform' | 'assetClass';
4951
5899
  /**
4952
- * Region code (cn, us, de)
5900
+ * Region code for tenant context
4953
5901
  */
4954
- region: 'cn' | 'us' | 'de';
5902
+ region: 'cn' | 'us' | 'de' | 'gb';
4955
5903
  };
4956
5904
 
4957
5905
  export type DashboardControllerGetAccountsResponse =
@@ -4964,9 +5912,9 @@ export type DashboardControllerGetCashFlowData = {
4964
5912
  */
4965
5913
  period: string;
4966
5914
  /**
4967
- * Region code (cn, us, de)
5915
+ * Region code for tenant context
4968
5916
  */
4969
- region: 'cn' | 'us' | 'de';
5917
+ region: 'cn' | 'us' | 'de' | 'gb';
4970
5918
  };
4971
5919
 
4972
5920
  export type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
@@ -4981,9 +5929,9 @@ export type ReportingControllerGetPortfolioTrendsData = {
4981
5929
  */
4982
5930
  period?: '1m' | '3m' | '6m' | '1y';
4983
5931
  /**
4984
- * Region code (cn, us, de)
5932
+ * Region code for tenant context
4985
5933
  */
4986
- region: 'cn' | 'us' | 'de';
5934
+ region: 'cn' | 'us' | 'de' | 'gb';
4987
5935
  };
4988
5936
 
4989
5937
  export type ReportingControllerGetPortfolioTrendsResponse =
@@ -4991,9 +5939,9 @@ export type ReportingControllerGetPortfolioTrendsResponse =
4991
5939
 
4992
5940
  export type ReportingControllerGenerateSnapshotData = {
4993
5941
  /**
4994
- * Region code (cn, us, de)
5942
+ * Region code for tenant context
4995
5943
  */
4996
- region: 'cn' | 'us' | 'de';
5944
+ region: 'cn' | 'us' | 'de' | 'gb';
4997
5945
  /**
4998
5946
  * Optional date (defaults to today)
4999
5947
  */
@@ -5005,220 +5953,60 @@ export type ReportingControllerGenerateSnapshotResponse =
5005
5953
 
5006
5954
  export type ReportingControllerBackfillSnapshotsData = {
5007
5955
  /**
5008
- * Region code (cn, us, de)
5956
+ * Region code for tenant context
5009
5957
  */
5010
- region: 'cn' | 'us' | 'de';
5958
+ region: 'cn' | 'us' | 'de' | 'gb';
5011
5959
  requestBody: BackfillSnapshotsBody;
5012
5960
  };
5013
5961
 
5014
5962
  export type ReportingControllerBackfillSnapshotsResponse =
5015
5963
  BackfillSnapshotsResponse;
5016
5964
 
5017
- export type ApiKeysControllerData = {
5018
- /**
5019
- * Region code (cn, us, de)
5020
- */
5021
- region: 'cn' | 'us' | 'de';
5022
- };
5023
-
5024
- export type ApiKeysControllerResponse = unknown;
5965
+ export type ApiKeysControllerCreateApiKeyResponse = unknown;
5025
5966
 
5026
5967
  export type AuthControllerAccessTokenLoginData = {
5027
- /**
5028
- * Region code (cn, us, de)
5029
- */
5030
- region: 'cn' | 'us' | 'de';
5031
5968
  requestBody: AnonymousLoginDto;
5032
5969
  };
5033
5970
 
5034
- export type AuthControllerAccessTokenLoginResponse = unknown;
5035
-
5036
- export type ExchangeRateControllerGetExchangeRateData = {
5037
- /**
5038
- * Date in ISO format (YYYY-MM-DD)
5039
- */
5040
- dateString: string;
5041
- /**
5042
- * Region code (cn, us, de)
5043
- */
5044
- region: 'cn' | 'us' | 'de';
5045
- /**
5046
- * Currency pair symbol (e.g., USDCNY, EURUSD)
5047
- */
5048
- symbol: string;
5049
- };
5050
-
5051
- export type ExchangeRateControllerGetExchangeRateResponse = unknown;
5052
-
5053
- export type HealthControllerGetHealthData = {
5054
- /**
5055
- * Region code (cn, us, de)
5056
- */
5057
- region: 'cn' | 'us' | 'de';
5058
- };
5059
-
5060
- export type HealthControllerGetHealthResponse = unknown;
5061
-
5062
- export type HealthControllerCheckDatabaseData = {
5063
- /**
5064
- * Region code (cn, us, de)
5065
- */
5066
- region: 'cn' | 'us' | 'de';
5067
- };
5068
-
5069
- export type HealthControllerCheckDatabaseResponse = unknown;
5070
-
5071
- export type HealthControllerCheckRedisData = {
5072
- /**
5073
- * Region code (cn, us, de)
5074
- */
5075
- region: 'cn' | 'us' | 'de';
5076
- };
5077
-
5078
- export type HealthControllerCheckRedisResponse = unknown;
5079
-
5080
- export type HealthControllerGetCircuitBreakersHealthData = {
5081
- /**
5082
- * Region code (cn, us, de)
5083
- */
5084
- region: 'cn' | 'us' | 'de';
5085
- };
5086
-
5087
- export type HealthControllerGetCircuitBreakersHealthResponse = unknown;
5088
-
5089
- export type HealthControllerResetCircuitBreakerData = {
5090
- /**
5091
- * Circuit breaker name to reset
5092
- */
5093
- name: string;
5094
- /**
5095
- * Region code (cn, us, de)
5096
- */
5097
- region: 'cn' | 'us' | 'de';
5098
- };
5099
-
5100
- export type HealthControllerResetCircuitBreakerResponse = unknown;
5101
-
5102
- export type HealthControllerGetMetricsData = {
5103
- /**
5104
- * Region code (cn, us, de)
5105
- */
5106
- region: 'cn' | 'us' | 'de';
5107
- };
5108
-
5109
- export type HealthControllerGetMetricsResponse = unknown;
5110
-
5111
- export type HealthControllerGetHealthOfDataEnhancerData = {
5112
- /**
5113
- * Data enhancer name
5114
- */
5115
- name: string;
5116
- /**
5117
- * Region code (cn, us, de)
5118
- */
5119
- region: 'cn' | 'us' | 'de';
5120
- };
5121
-
5122
- export type HealthControllerGetHealthOfDataEnhancerResponse = unknown;
5123
-
5124
- export type HealthControllerCheckDataProvidersData = {
5125
- /**
5126
- * Region code (cn, us, de)
5127
- */
5128
- region: 'cn' | 'us' | 'de';
5129
- };
5130
-
5131
- export type HealthControllerCheckDataProvidersResponse = unknown;
5132
-
5133
- export type HealthControllerGetHealthOfDataProviderData = {
5134
- /**
5135
- * Data source identifier
5136
- */
5137
- dataSource: string;
5138
- /**
5139
- * Region code (cn, us, de)
5140
- */
5141
- region: 'cn' | 'us' | 'de';
5142
- };
5143
-
5144
- export type HealthControllerGetHealthOfDataProviderResponse = unknown;
5145
-
5146
- export type InfoControllerGetInfoData = {
5147
- /**
5148
- * Region code (cn, us, de)
5149
- */
5150
- region: 'cn' | 'us' | 'de';
5151
- };
5152
-
5153
- export type InfoControllerGetInfoResponse = unknown;
5154
-
5155
- export type LogoControllerGetLogoByDataSourceAndSymbolData = {
5156
- /**
5157
- * Data source identifier (e.g., YAHOO, COINGECKO)
5158
- */
5159
- dataSource: string;
5160
- /**
5161
- * Region code (cn, us, de)
5162
- */
5163
- region: 'cn' | 'us' | 'de';
5164
- /**
5165
- * Asset symbol (e.g., AAPL, BTC)
5166
- */
5167
- symbol: string;
5168
- };
5169
-
5170
- export type LogoControllerGetLogoByDataSourceAndSymbolResponse = unknown;
5171
-
5172
- export type LogoControllerGetLogoByUrlData = {
5173
- /**
5174
- * Region code (cn, us, de)
5175
- */
5176
- region: 'cn' | 'us' | 'de';
5177
- /**
5178
- * Website URL to fetch favicon from
5179
- */
5180
- url: string;
5181
- };
5971
+ export type AuthControllerAccessTokenLoginResponse = unknown;
5182
5972
 
5183
- export type LogoControllerGetLogoByUrlResponse = unknown;
5973
+ export type CacheControllerFlushCacheResponse = unknown;
5184
5974
 
5185
- export type MarketDataControllerGetMarketDataBySymbolData = {
5186
- /**
5187
- * Data source provider
5188
- */
5189
- dataSource:
5190
- | 'ALPHA_VANTAGE'
5191
- | 'EOD_HISTORICAL_DATA'
5192
- | 'FINANCIAL_MODELING_PREP'
5193
- | 'MANUAL'
5194
- | 'RAPID_API'
5195
- | 'YAHOO'
5196
- | 'COINGECKO'
5197
- | 'TUSHARE'
5198
- | 'BLOOMBERG'
5199
- | 'CSI'
5200
- | 'STOOQ'
5201
- | 'TRADING_VIEW';
5975
+ export type ExchangeRateControllerGetExchangeRateData = {
5202
5976
  /**
5203
- * Region code (cn, us, de)
5977
+ * Date in ISO format (YYYY-MM-DD)
5204
5978
  */
5205
- region: 'cn' | 'us' | 'de';
5979
+ dateString: string;
5206
5980
  /**
5207
- * Symbol code
5981
+ * Currency pair symbol (e.g., USDCNY, EURUSD)
5208
5982
  */
5209
5983
  symbol: string;
5210
5984
  };
5211
5985
 
5212
- export type MarketDataControllerGetMarketDataBySymbolResponse = unknown;
5986
+ export type ExchangeRateControllerGetExchangeRateResponse = unknown;
5987
+
5988
+ export type HealthControllerGetHealthResponse = unknown;
5989
+
5990
+ export type HealthControllerCheckDatabaseResponse = unknown;
5991
+
5992
+ export type HealthControllerCheckOpenBbResponse = unknown;
5993
+
5994
+ export type HealthControllerCheckRedisResponse = unknown;
5995
+
5996
+ export type HealthControllerGetCircuitBreakersHealthResponse = unknown;
5213
5997
 
5214
- export type MarketDataControllerData = {
5998
+ export type HealthControllerResetCircuitBreakerData = {
5215
5999
  /**
5216
- * Region code (cn, us, de)
6000
+ * Circuit breaker name to reset
5217
6001
  */
5218
- region: 'cn' | 'us' | 'de';
6002
+ name: string;
5219
6003
  };
5220
6004
 
5221
- export type MarketDataControllerResponse = unknown;
6005
+ export type HealthControllerResetCircuitBreakerResponse = unknown;
6006
+
6007
+ export type HealthControllerGetMetricsResponse = unknown;
6008
+
6009
+ export type InfoControllerGetInfoResponse = unknown;
5222
6010
 
5223
6011
  export type $OpenApiTs = {
5224
6012
  '/api/v1/{region}/bean/accounts': {
@@ -5328,6 +6116,39 @@ export type $OpenApiTs = {
5328
6116
  };
5329
6117
  };
5330
6118
  };
6119
+ '/api/v1/{region}/bean/account-standards': {
6120
+ get: {
6121
+ req: AccountStandardsControllerGetTemplatesData;
6122
+ res: {
6123
+ /**
6124
+ * Account templates retrieved successfully
6125
+ */
6126
+ 200: AccountStandardListResponseDto;
6127
+ };
6128
+ };
6129
+ };
6130
+ '/api/v1/{region}/bean/account-standards/template-metadata': {
6131
+ get: {
6132
+ req: AccountStandardsControllerGetTemplateMetadataData;
6133
+ res: {
6134
+ /**
6135
+ * Template metadata retrieved successfully
6136
+ */
6137
+ 200: TemplateMetadataResponseDto;
6138
+ };
6139
+ };
6140
+ };
6141
+ '/api/v1/{region}/bean/account-standards/regions': {
6142
+ get: {
6143
+ req: AccountStandardsControllerGetRegionsData;
6144
+ res: {
6145
+ /**
6146
+ * Regions metadata retrieved successfully
6147
+ */
6148
+ 200: RegionsMetadataResponseDto;
6149
+ };
6150
+ };
6151
+ };
5331
6152
  '/api/v1/{region}/bean/transactions': {
5332
6153
  post: {
5333
6154
  req: TransactionControllerCreateData;
@@ -5361,6 +6182,10 @@ export type $OpenApiTs = {
5361
6182
  * Transaction list
5362
6183
  */
5363
6184
  200: TransactionListResponseDto;
6185
+ /**
6186
+ * Validation failed
6187
+ */
6188
+ 400: ApiProblemResponseDto;
5364
6189
  /**
5365
6190
  * Authentication required
5366
6191
  */
@@ -5370,9 +6195,62 @@ export type $OpenApiTs = {
5370
6195
  };
5371
6196
  '/api/v1/{region}/bean/transactions/batch': {
5372
6197
  post: {
5373
- req: TransactionControllerData;
6198
+ req: TransactionControllerCreateBatchData;
5374
6199
  res: {
5375
- 201: unknown;
6200
+ /**
6201
+ * Transactions processed
6202
+ */
6203
+ 201: BatchTransactionResponseDto;
6204
+ /**
6205
+ * Invalid input
6206
+ */
6207
+ 400: ApiProblemResponseDto;
6208
+ /**
6209
+ * Authentication required
6210
+ */
6211
+ 401: ApiProblemResponseDto;
6212
+ };
6213
+ };
6214
+ };
6215
+ '/api/v1/{region}/bean/transactions/{id}/correct': {
6216
+ post: {
6217
+ req: TransactionControllerCorrectData;
6218
+ res: {
6219
+ /**
6220
+ * Corrected transaction created
6221
+ */
6222
+ 201: TransactionDetailDto;
6223
+ /**
6224
+ * Original transaction not found
6225
+ */
6226
+ 404: ApiProblemResponseDto;
6227
+ /**
6228
+ * Original no longer ACTIVE (concurrent modification)
6229
+ */
6230
+ 409: ApiProblemResponseDto;
6231
+ /**
6232
+ * Pipeline validation failed (does not balance, invalid accounts)
6233
+ */
6234
+ 422: ApiProblemResponseDto;
6235
+ };
6236
+ };
6237
+ };
6238
+ '/api/v1/{region}/bean/transactions/tags': {
6239
+ get: {
6240
+ req: TransactionControllerSuggestTagsData;
6241
+ res: {
6242
+ /**
6243
+ * Tag suggestions
6244
+ */
6245
+ 200: TagSuggestionsResponseDto;
6246
+ /**
6247
+ * Validation failed
6248
+ */
6249
+ 400: ApiProblemResponseDto;
6250
+ /**
6251
+ * Authentication required
6252
+ */
6253
+ 401: ApiProblemResponseDto;
5376
6254
  };
5377
6255
  };
5378
6256
  };
@@ -5416,31 +6294,24 @@ export type $OpenApiTs = {
5416
6294
  };
5417
6295
  };
5418
6296
  delete: {
5419
- req: TransactionController1Data;
6297
+ req: TransactionControllerDeleteData;
5420
6298
  res: {
6299
+ /**
6300
+ * Transaction voided successfully
6301
+ */
5421
6302
  204: void;
5422
- };
5423
- };
5424
- };
5425
- '/api/v1/{region}/bean/account-standards': {
5426
- get: {
5427
- req: AccountStandardsControllerGetTemplatesData;
5428
- res: {
5429
6303
  /**
5430
- * Account templates retrieved successfully
6304
+ * Transaction already voided
5431
6305
  */
5432
- 200: AccountStandardListResponseDto;
5433
- };
5434
- };
5435
- };
5436
- '/api/v1/{region}/bean/account-standards/regions': {
5437
- get: {
5438
- req: AccountStandardsControllerGetRegionsData;
5439
- res: {
6306
+ 400: ApiProblemResponseDto;
5440
6307
  /**
5441
- * Regions metadata retrieved successfully
6308
+ * Authentication required
5442
6309
  */
5443
- 200: RegionsMetadataResponseDto;
6310
+ 401: ApiProblemResponseDto;
6311
+ /**
6312
+ * Transaction not found
6313
+ */
6314
+ 404: ApiProblemResponseDto;
5444
6315
  };
5445
6316
  };
5446
6317
  };
@@ -5508,33 +6379,44 @@ export type $OpenApiTs = {
5508
6379
  };
5509
6380
  '/api/v1/{region}/bean/reviews/{id}/resolve': {
5510
6381
  post: {
5511
- req: ReviewControllerData;
6382
+ req: ReviewControllerResolveData;
5512
6383
  res: {
5513
- 201: unknown;
6384
+ 200: ResolveResultDto;
5514
6385
  };
5515
6386
  };
5516
6387
  };
5517
6388
  '/api/v1/{region}/bean/reviews/{id}/undo': {
5518
6389
  post: {
5519
- req: ReviewController1Data;
6390
+ req: ReviewControllerUndoData;
5520
6391
  res: {
5521
- 201: unknown;
6392
+ 200: UndoResultDto;
5522
6393
  };
5523
6394
  };
5524
6395
  };
5525
6396
  '/api/v1/{region}/bean/reviews/batch-resolve': {
5526
6397
  post: {
5527
- req: ReviewController2Data;
6398
+ req: ReviewControllerBatchResolveData;
5528
6399
  res: {
5529
- 201: unknown;
6400
+ 200: BatchResolveResultDto;
5530
6401
  };
5531
6402
  };
5532
6403
  };
5533
6404
  '/api/v1/bean/payees': {
5534
6405
  post: {
5535
- req: PayeeControllerData;
6406
+ req: PayeeControllerCreateData;
5536
6407
  res: {
5537
- 201: unknown;
6408
+ /**
6409
+ * Payee created successfully
6410
+ */
6411
+ 201: PayeeResponseDto;
6412
+ /**
6413
+ * Invalid input data
6414
+ */
6415
+ 400: ApiProblemResponseDto;
6416
+ /**
6417
+ * Payee already exists
6418
+ */
6419
+ 409: ApiProblemResponseDto;
5538
6420
  };
5539
6421
  };
5540
6422
  get: {
@@ -5588,23 +6470,56 @@ export type $OpenApiTs = {
5588
6470
  };
5589
6471
  };
5590
6472
  put: {
5591
- req: PayeeController1Data;
6473
+ req: PayeeControllerUpdateData;
5592
6474
  res: {
5593
- 200: unknown;
6475
+ /**
6476
+ * Payee updated successfully
6477
+ */
6478
+ 200: PayeeResponseDto;
6479
+ /**
6480
+ * Invalid input data
6481
+ */
6482
+ 400: ApiProblemResponseDto;
6483
+ /**
6484
+ * Payee not found
6485
+ */
6486
+ 404: ApiProblemResponseDto;
5594
6487
  };
5595
6488
  };
5596
6489
  delete: {
5597
- req: PayeeController2Data;
6490
+ req: PayeeControllerDeleteData;
5598
6491
  res: {
6492
+ /**
6493
+ * Payee deleted successfully
6494
+ */
5599
6495
  204: void;
6496
+ /**
6497
+ * Payee not found
6498
+ */
6499
+ 404: ApiProblemResponseDto;
5600
6500
  };
5601
6501
  };
5602
6502
  };
5603
6503
  '/api/v1/admin/payee-profiles': {
5604
6504
  post: {
5605
- req: PayeeProfileAdminControllerData;
6505
+ req: PayeeProfileAdminControllerCreateData;
5606
6506
  res: {
5607
- 201: unknown;
6507
+ /**
6508
+ * Payee profile created successfully
6509
+ */
6510
+ 201: PayeeProfileResponseDto;
6511
+ /**
6512
+ * Validation failed
6513
+ */
6514
+ 400: ApiProblemResponseDto;
6515
+ /**
6516
+ * Admin access required
6517
+ */
6518
+ 403: ApiProblemResponseDto;
6519
+ /**
6520
+ * Payee profile already exists
6521
+ */
6522
+ 409: ApiProblemResponseDto;
5608
6523
  };
5609
6524
  };
5610
6525
  get: {
@@ -5640,37 +6555,96 @@ export type $OpenApiTs = {
5640
6555
  };
5641
6556
  };
5642
6557
  put: {
5643
- req: PayeeProfileAdminController1Data;
6558
+ req: PayeeProfileAdminControllerUpdateData;
5644
6559
  res: {
5645
- 200: unknown;
6560
+ /**
6561
+ * Payee profile updated successfully
6562
+ */
6563
+ 200: PayeeProfileResponseDto;
6564
+ /**
6565
+ * Admin access required
6566
+ */
6567
+ 403: ApiProblemResponseDto;
6568
+ /**
6569
+ * Payee profile not found
6570
+ */
6571
+ 404: ApiProblemResponseDto;
5646
6572
  };
5647
6573
  };
5648
6574
  delete: {
5649
- req: PayeeProfileAdminController2Data;
6575
+ req: PayeeProfileAdminControllerDeleteData;
5650
6576
  res: {
6577
+ /**
6578
+ * Payee profile deleted successfully
6579
+ */
5651
6580
  204: void;
6581
+ /**
6582
+ * Admin access required
6583
+ */
6584
+ 403: ApiProblemResponseDto;
6585
+ /**
6586
+ * Payee profile not found
6587
+ */
6588
+ 404: ApiProblemResponseDto;
6589
+ /**
6590
+ * Payee profile is in use and cannot be deleted
6591
+ */
6592
+ 409: ApiProblemResponseDto;
5652
6593
  };
5653
6594
  };
5654
6595
  };
5655
6596
  '/api/v1/admin/payee-profiles/{id}/verify': {
5656
6597
  post: {
5657
- req: PayeeProfileAdminController3Data;
6598
+ req: PayeeProfileAdminControllerVerifyData;
5658
6599
  res: {
5659
- 201: unknown;
6600
+ /**
6601
+ * Payee profile verified successfully
6602
+ */
6603
+ 201: PayeeProfileResponseDto;
6604
+ /**
6605
+ * Admin access required
6606
+ */
6607
+ 403: ApiProblemResponseDto;
6608
+ /**
6609
+ * Payee profile not found
6610
+ */
6611
+ 404: ApiProblemResponseDto;
5660
6612
  };
5661
6613
  };
5662
6614
  delete: {
5663
- req: PayeeProfileAdminController4Data;
6615
+ req: PayeeProfileAdminControllerUnverifyData;
5664
6616
  res: {
5665
- 200: unknown;
6617
+ /**
6618
+ * Payee profile unverified successfully
6619
+ */
6620
+ 200: PayeeProfileResponseDto;
6621
+ /**
6622
+ * Admin access required
6623
+ */
6624
+ 403: ApiProblemResponseDto;
6625
+ /**
6626
+ * Payee profile not found
6627
+ */
6628
+ 404: ApiProblemResponseDto;
5666
6629
  };
5667
6630
  };
5668
6631
  };
5669
6632
  '/api/v1/{region}/bean/commodities': {
5670
6633
  post: {
5671
- req: CommodityControllerData;
6634
+ req: CommodityControllerCreateData;
5672
6635
  res: {
5673
- 201: unknown;
6636
+ /**
6637
+ * Commodity created successfully
6638
+ */
6639
+ 201: CommodityResponseDto;
6640
+ /**
6641
+ * Invalid input data
6642
+ */
6643
+ 400: ApiProblemResponseDto;
6644
+ /**
6645
+ * Commodity already exists
6646
+ */
6647
+ 409: ApiProblemResponseDto;
5674
6648
  };
5675
6649
  };
5676
6650
  get: {
@@ -5698,39 +6672,74 @@ export type $OpenApiTs = {
5698
6672
  };
5699
6673
  };
5700
6674
  put: {
5701
- req: CommodityController1Data;
6675
+ req: CommodityControllerUpdateData;
5702
6676
  res: {
5703
- 200: unknown;
6677
+ /**
6678
+ * Commodity updated successfully
6679
+ */
6680
+ 200: CommodityResponseDto;
6681
+ /**
6682
+ * Invalid input data
6683
+ */
6684
+ 400: ApiProblemResponseDto;
6685
+ /**
6686
+ * Commodity not found
6687
+ */
6688
+ 404: ApiProblemResponseDto;
5704
6689
  };
5705
6690
  };
5706
6691
  delete: {
5707
- req: CommodityController2Data;
6692
+ req: CommodityControllerDeleteData;
5708
6693
  res: {
6694
+ /**
6695
+ * Commodity deleted successfully
6696
+ */
5709
6697
  204: void;
6698
+ /**
6699
+ * Commodity not found
6700
+ */
6701
+ 404: ApiProblemResponseDto;
5710
6702
  };
5711
6703
  };
5712
6704
  };
5713
6705
  '/api/v1/{region}/bean/commodities/{symbol}/ensure': {
5714
6706
  post: {
5715
- req: CommodityController3Data;
6707
+ req: CommodityControllerGetOrCreateData;
5716
6708
  res: {
5717
- 201: unknown;
6709
+ /**
6710
+ * Commodity retrieved or created
6711
+ */
6712
+ 200: CommodityResponseDto;
5718
6713
  };
5719
6714
  };
5720
6715
  };
5721
6716
  '/api/v1/{region}/bean/commodities/bulk': {
5722
6717
  post: {
5723
- req: CommodityController4Data;
6718
+ req: CommodityControllerBulkCreateData;
5724
6719
  res: {
5725
- 201: unknown;
6720
+ /**
6721
+ * Commodities created successfully
6722
+ */
6723
+ 201: Array<CommodityResponseDto>;
5726
6724
  };
5727
6725
  };
5728
6726
  };
5729
6727
  '/api/v1/{region}/bean/recurring-rules': {
5730
6728
  post: {
5731
- req: RecurringRuleControllerData;
6729
+ req: RecurringRuleControllerCreateData;
5732
6730
  res: {
5733
- 201: unknown;
6731
+ /**
6732
+ * Rule created successfully
6733
+ */
6734
+ 201: RecurringRuleResponseDto;
6735
+ /**
6736
+ * Invalid input data (e.g., autoCreate without accounts)
6737
+ */
6738
+ 400: unknown;
6739
+ /**
6740
+ * Rule with same name already exists
6741
+ */
6742
+ 409: unknown;
5734
6743
  };
5735
6744
  };
5736
6745
  get: {
@@ -5745,9 +6754,20 @@ export type $OpenApiTs = {
5745
6754
  };
5746
6755
  '/api/v1/{region}/bean/recurring-rules/from-transaction/{transactionId}': {
5747
6756
  post: {
5748
- req: RecurringRuleController1Data;
6757
+ req: RecurringRuleControllerCreateFromTransactionData;
5749
6758
  res: {
5750
- 201: unknown;
6759
+ /**
6760
+ * Rule created successfully
6761
+ */
6762
+ 201: RecurringRuleResponseDto;
6763
+ /**
6764
+ * Transaction not found
6765
+ */
6766
+ 404: ApiProblemResponseDto;
6767
+ /**
6768
+ * Rule with same name already exists or transaction already linked
6769
+ */
6770
+ 409: ApiProblemResponseDto;
5751
6771
  };
5752
6772
  };
5753
6773
  };
@@ -5766,15 +6786,33 @@ export type $OpenApiTs = {
5766
6786
  };
5767
6787
  };
5768
6788
  patch: {
5769
- req: RecurringRuleController2Data;
6789
+ req: RecurringRuleControllerUpdateData;
5770
6790
  res: {
5771
- 200: unknown;
6791
+ /**
6792
+ * Rule updated successfully
6793
+ */
6794
+ 200: RecurringRuleResponseDto;
6795
+ /**
6796
+ * Invalid input data
6797
+ */
6798
+ 400: unknown;
6799
+ /**
6800
+ * Rule not found
6801
+ */
6802
+ 404: unknown;
5772
6803
  };
5773
6804
  };
5774
6805
  delete: {
5775
- req: RecurringRuleController3Data;
6806
+ req: RecurringRuleControllerDeleteData;
5776
6807
  res: {
6808
+ /**
6809
+ * Rule deleted successfully
6810
+ */
5777
6811
  204: void;
6812
+ /**
6813
+ * Rule not found
6814
+ */
6815
+ 404: unknown;
5778
6816
  };
5779
6817
  };
5780
6818
  };
@@ -5832,37 +6870,96 @@ export type $OpenApiTs = {
5832
6870
  };
5833
6871
  '/api/v1/{region}/bean/expected-transactions/{id}/skip': {
5834
6872
  post: {
5835
- req: ExpectedTransactionControllerData;
6873
+ req: ExpectedTransactionControllerSkipData;
5836
6874
  res: {
5837
- 200: unknown;
6875
+ /**
6876
+ * Expected transaction skipped successfully
6877
+ */
6878
+ 200: ExpectedTransactionResponseDto;
6879
+ /**
6880
+ * Cannot skip - not in PENDING status
6881
+ */
6882
+ 400: unknown;
6883
+ /**
6884
+ * Expected transaction not found
6885
+ */
6886
+ 404: unknown;
5838
6887
  };
5839
6888
  };
5840
6889
  delete: {
5841
- req: ExpectedTransactionController1Data;
6890
+ req: ExpectedTransactionControllerUndoSkipData;
5842
6891
  res: {
5843
- 200: unknown;
6892
+ /**
6893
+ * Skip undone successfully
6894
+ */
6895
+ 200: ExpectedTransactionResponseDto;
6896
+ /**
6897
+ * Cannot undo - not in SKIPPED status
6898
+ */
6899
+ 400: unknown;
6900
+ /**
6901
+ * Expected transaction not found
6902
+ */
6903
+ 404: unknown;
5844
6904
  };
5845
6905
  };
5846
6906
  };
5847
6907
  '/api/v1/{region}/bean/expected-transactions/{id}/match': {
5848
6908
  post: {
5849
- req: ExpectedTransactionController2Data;
6909
+ req: ExpectedTransactionControllerConfirmMatchData;
5850
6910
  res: {
6911
+ /**
6912
+ * Match confirmed successfully
6913
+ */
5851
6914
  200: unknown;
6915
+ /**
6916
+ * Cannot match - not in PENDING status
6917
+ */
6918
+ 400: unknown;
6919
+ /**
6920
+ * Expected or actual transaction not found
6921
+ */
6922
+ 404: unknown;
6923
+ /**
6924
+ * Actual transaction already matched to another rule
6925
+ */
6926
+ 409: unknown;
5852
6927
  };
5853
6928
  };
5854
6929
  delete: {
5855
- req: ExpectedTransactionController3Data;
6930
+ req: ExpectedTransactionControllerUnmatchData;
5856
6931
  res: {
6932
+ /**
6933
+ * Match removed successfully
6934
+ */
5857
6935
  200: unknown;
6936
+ /**
6937
+ * Cannot unmatch - not in COMPLETED status
6938
+ */
6939
+ 400: unknown;
6940
+ /**
6941
+ * Expected transaction not found
6942
+ */
6943
+ 404: unknown;
5858
6944
  };
5859
6945
  };
5860
6946
  };
5861
6947
  '/api/v1/{region}/bean/expected-transactions/{id}/enter': {
5862
6948
  post: {
5863
- req: ExpectedTransactionController4Data;
6949
+ req: ExpectedTransactionControllerEnterNowData;
5864
6950
  res: {
6951
+ /**
6952
+ * Transaction created successfully
6953
+ */
5865
6954
  201: unknown;
6955
+ /**
6956
+ * Cannot enter - not in PENDING status or missing accounts
6957
+ */
6958
+ 400: unknown;
6959
+ /**
6960
+ * Expected transaction or accounts not found
6961
+ */
6962
+ 404: unknown;
5866
6963
  };
5867
6964
  };
5868
6965
  };
@@ -5879,9 +6976,24 @@ export type $OpenApiTs = {
5879
6976
  };
5880
6977
  '/api/v1/{region}/bean/transaction-rules': {
5881
6978
  post: {
5882
- req: TransactionRuleControllerData;
6979
+ req: TransactionRuleControllerCreateData;
5883
6980
  res: {
5884
- 201: unknown;
6981
+ /**
6982
+ * Rule updated successfully (upsert mode)
6983
+ */
6984
+ 200: TransactionRuleResponseDto;
6985
+ /**
6986
+ * Validation failed
6987
+ */
6988
+ 400: ApiProblemResponseDto;
6989
+ /**
6990
+ * Unauthorized
6991
+ */
6992
+ 401: ApiProblemResponseDto;
6993
+ /**
6994
+ * Resource conflict - another process is updating this rule
6995
+ */
6996
+ 409: ApiProblemResponseDto;
5885
6997
  };
5886
6998
  };
5887
6999
  get: {
@@ -5906,6 +7018,10 @@ export type $OpenApiTs = {
5906
7018
  * Validation result
5907
7019
  */
5908
7020
  200: ValidateRuleResponseDto;
7021
+ /**
7022
+ * Validation failed
7023
+ */
7024
+ 400: ApiProblemResponseDto;
5909
7025
  /**
5910
7026
  * Unauthorized
5911
7027
  */
@@ -5915,9 +7031,20 @@ export type $OpenApiTs = {
5915
7031
  };
5916
7032
  '/api/v1/{region}/bean/transaction-rules/bulk': {
5917
7033
  post: {
5918
- req: TransactionRuleController1Data;
7034
+ req: TransactionRuleControllerBulkCreateData;
5919
7035
  res: {
5920
- 201: unknown;
7036
+ /**
7037
+ * Bulk create completed
7038
+ */
7039
+ 201: BulkCreateRulesResponseDto;
7040
+ /**
7041
+ * Invalid bulk create data
7042
+ */
7043
+ 400: ApiProblemResponseDto;
7044
+ /**
7045
+ * Unauthorized
7046
+ */
7047
+ 401: ApiProblemResponseDto;
5921
7048
  };
5922
7049
  };
5923
7050
  };
@@ -5978,15 +7105,57 @@ export type $OpenApiTs = {
5978
7105
  };
5979
7106
  };
5980
7107
  put: {
5981
- req: TransactionRuleController2Data;
7108
+ req: TransactionRuleControllerUpdateData;
5982
7109
  res: {
5983
- 200: unknown;
7110
+ /**
7111
+ * Rule updated successfully
7112
+ */
7113
+ 200: TransactionRuleResponseDto;
7114
+ /**
7115
+ * Validation failed
7116
+ */
7117
+ 400: ApiProblemResponseDto;
7118
+ /**
7119
+ * Unauthorized
7120
+ */
7121
+ 401: ApiProblemResponseDto;
7122
+ /**
7123
+ * Forbidden - not owner of rule
7124
+ */
7125
+ 403: ApiProblemResponseDto;
7126
+ /**
7127
+ * Rule not found
7128
+ */
7129
+ 404: ApiProblemResponseDto;
7130
+ /**
7131
+ * Resource conflict - rule is being modified by another process
7132
+ */
7133
+ 409: ApiProblemResponseDto;
5984
7134
  };
5985
7135
  };
5986
7136
  delete: {
5987
- req: TransactionRuleController3Data;
7137
+ req: TransactionRuleControllerDeleteData;
5988
7138
  res: {
7139
+ /**
7140
+ * Rule deleted successfully
7141
+ */
5989
7142
  204: void;
7143
+ /**
7144
+ * Unauthorized
7145
+ */
7146
+ 401: ApiProblemResponseDto;
7147
+ /**
7148
+ * Forbidden - not owner of rule
7149
+ */
7150
+ 403: ApiProblemResponseDto;
7151
+ /**
7152
+ * Rule not found
7153
+ */
7154
+ 404: ApiProblemResponseDto;
7155
+ /**
7156
+ * Resource conflict - rule is being modified by another process
7157
+ */
7158
+ 409: ApiProblemResponseDto;
5990
7159
  };
5991
7160
  };
5992
7161
  };
@@ -6112,7 +7281,6 @@ export type $OpenApiTs = {
6112
7281
  };
6113
7282
  '/api/v1/users/asset-liability-summary': {
6114
7283
  get: {
6115
- req: UserControllerGetAssetLiabilitySummaryData;
6116
7284
  res: {
6117
7285
  /**
6118
7286
  * Summary retrieved successfully
@@ -6123,7 +7291,6 @@ export type $OpenApiTs = {
6123
7291
  };
6124
7292
  '/api/v1/admin/properties': {
6125
7293
  get: {
6126
- req: PropertyControllerGetAllData;
6127
7294
  res: {
6128
7295
  /**
6129
7296
  * Properties retrieved successfully
@@ -6163,15 +7330,48 @@ export type $OpenApiTs = {
6163
7330
  };
6164
7331
  };
6165
7332
  put: {
6166
- req: PropertyControllerData;
7333
+ req: PropertyControllerUpdateData;
6167
7334
  res: {
7335
+ /**
7336
+ * Property updated successfully
7337
+ */
6168
7338
  200: unknown;
7339
+ /**
7340
+ * Unauthorized
7341
+ */
7342
+ 401: unknown;
7343
+ /**
7344
+ * Forbidden - insufficient permissions
7345
+ */
7346
+ 403: unknown;
6169
7347
  };
6170
7348
  };
6171
7349
  delete: {
6172
- req: PropertyController1Data;
7350
+ req: PropertyControllerDeleteData;
6173
7351
  res: {
7352
+ /**
7353
+ * Property deleted successfully
7354
+ */
6174
7355
  204: void;
7356
+ /**
7357
+ * Unauthorized
7358
+ */
7359
+ 401: unknown;
7360
+ /**
7361
+ * Forbidden - insufficient permissions
7362
+ */
7363
+ 403: unknown;
7364
+ /**
7365
+ * Property not found
7366
+ */
7367
+ 404: unknown;
7368
+ };
7369
+ };
7370
+ };
7371
+ '/api/v1/{region}/bean/export/beancount': {
7372
+ get: {
7373
+ res: {
7374
+ 200: unknown;
6175
7375
  };
6176
7376
  };
6177
7377
  };
@@ -6244,36 +7444,149 @@ export type $OpenApiTs = {
6244
7444
  };
6245
7445
  };
6246
7446
  };
6247
- '/api/v1/{region}/bean/import/config/{importerId}': {
7447
+ '/api/v1/{region}/bean/import/beancount': {
7448
+ post: {
7449
+ req: FileImportControllerImportBeancountData;
7450
+ res: {
7451
+ /**
7452
+ * Beancount file imported successfully
7453
+ */
7454
+ 200: {
7455
+ imported?: number;
7456
+ skipped?: number;
7457
+ failed?: number;
7458
+ accountsCreated?: number;
7459
+ errors?: Array<{
7460
+ [key: string]: unknown;
7461
+ }>;
7462
+ };
7463
+ /**
7464
+ * Bad request - invalid file or no file uploaded
7465
+ */
7466
+ 400: ApiProblemResponseDto;
7467
+ };
7468
+ };
7469
+ };
7470
+ '/api/v1/{region}/bean/import/config/{importerId}': {
7471
+ get: {
7472
+ req: ImporterConfigControllerGetConfigData;
7473
+ res: {
7474
+ /**
7475
+ * Configuration retrieved successfully
7476
+ */
7477
+ 200: ImporterConfigDto;
7478
+ /**
7479
+ * Invalid input - Unsupported importer
7480
+ */
7481
+ 400: ApiProblemResponseDto;
7482
+ /**
7483
+ * Unauthorized - Authentication required
7484
+ */
7485
+ 401: ApiProblemResponseDto;
7486
+ };
7487
+ };
7488
+ put: {
7489
+ req: ImporterConfigControllerUpdateConfigData;
7490
+ res: {
7491
+ /**
7492
+ * Configuration updated successfully
7493
+ */
7494
+ 200: ImporterConfigDto;
7495
+ /**
7496
+ * Invalid input - Validation failed
7497
+ */
7498
+ 400: ApiProblemResponseDto;
7499
+ /**
7500
+ * Configuration not found
7501
+ */
7502
+ 404: ApiProblemResponseDto;
7503
+ };
7504
+ };
7505
+ };
7506
+ '/api/v1/{region}/bean/import/config/{importerId}/reset': {
7507
+ post: {
7508
+ req: ImporterConfigControllerResetConfigData;
7509
+ res: {
7510
+ /**
7511
+ * Configuration reset successfully
7512
+ */
7513
+ 200: ImporterConfigDto;
7514
+ /**
7515
+ * Invalid input - Unsupported importer
7516
+ */
7517
+ 400: ApiProblemResponseDto;
7518
+ };
7519
+ };
7520
+ };
7521
+ '/api/v1/bean/platforms': {
7522
+ get: {
7523
+ res: {
7524
+ /**
7525
+ * List of platforms with binding and account counts
7526
+ */
7527
+ 200: unknown;
7528
+ };
7529
+ };
7530
+ post: {
7531
+ req: PlatformControllerCreateData;
7532
+ res: {
7533
+ /**
7534
+ * Platform created successfully
7535
+ */
7536
+ 201: unknown;
7537
+ /**
7538
+ * Platform already exists
7539
+ */
7540
+ 409: unknown;
7541
+ };
7542
+ };
7543
+ };
7544
+ '/api/v1/bean/platforms/list': {
6248
7545
  get: {
6249
- req: ImporterConfigControllerGetConfigData;
6250
7546
  res: {
6251
7547
  /**
6252
- * Configuration retrieved successfully
6253
- */
6254
- 200: ImporterConfigDto;
6255
- /**
6256
- * Invalid input - Unsupported importer
7548
+ * List of platforms with user binding status
6257
7549
  */
6258
- 400: ApiProblemResponseDto;
7550
+ 200: unknown;
7551
+ };
7552
+ };
7553
+ };
7554
+ '/api/v1/bean/platforms/match': {
7555
+ get: {
7556
+ req: PlatformControllerMatchPlatformsData;
7557
+ res: {
6259
7558
  /**
6260
- * Unauthorized - Authentication required
7559
+ * List of matching platforms with suggested segment names
6261
7560
  */
6262
- 401: ApiProblemResponseDto;
7561
+ 200: unknown;
6263
7562
  };
6264
7563
  };
7564
+ };
7565
+ '/api/v1/bean/platforms/{id}': {
6265
7566
  put: {
6266
- req: ImporterConfigControllerData;
7567
+ req: PlatformControllerUpdateData;
6267
7568
  res: {
7569
+ /**
7570
+ * Platform updated successfully
7571
+ */
6268
7572
  200: unknown;
7573
+ /**
7574
+ * Platform not found
7575
+ */
7576
+ 404: unknown;
6269
7577
  };
6270
7578
  };
6271
- };
6272
- '/api/v1/{region}/bean/import/config/{importerId}/reset': {
6273
- post: {
6274
- req: ImporterConfigController1Data;
7579
+ delete: {
7580
+ req: PlatformControllerDeleteData;
6275
7581
  res: {
6276
- 201: unknown;
7582
+ /**
7583
+ * Platform deleted successfully
7584
+ */
7585
+ 204: void;
7586
+ /**
7587
+ * Platform not found
7588
+ */
7589
+ 404: unknown;
6277
7590
  };
6278
7591
  };
6279
7592
  };
@@ -6392,117 +7705,6 @@ export type $OpenApiTs = {
6392
7705
  };
6393
7706
  };
6394
7707
  };
6395
- '/api/v1/bean/platforms': {
6396
- get: {
6397
- req: PlatformControllerFindAllData;
6398
- res: {
6399
- /**
6400
- * List of platforms with binding and account counts
6401
- */
6402
- 200: unknown;
6403
- };
6404
- };
6405
- post: {
6406
- req: PlatformControllerData;
6407
- res: {
6408
- 201: unknown;
6409
- };
6410
- };
6411
- };
6412
- '/api/v1/bean/platforms/list': {
6413
- get: {
6414
- req: PlatformControllerGetPlatformListData;
6415
- res: {
6416
- /**
6417
- * List of platforms with user binding status
6418
- */
6419
- 200: unknown;
6420
- };
6421
- };
6422
- };
6423
- '/api/v1/bean/platforms/{id}': {
6424
- put: {
6425
- req: PlatformController1Data;
6426
- res: {
6427
- 200: unknown;
6428
- };
6429
- };
6430
- delete: {
6431
- req: PlatformController2Data;
6432
- res: {
6433
- 204: void;
6434
- };
6435
- };
6436
- };
6437
- '/api/v1/market/symbols/lookup': {
6438
- get: {
6439
- req: SymbolControllerLookupSymbolData;
6440
- res: {
6441
- /**
6442
- * Symbols found successfully
6443
- */
6444
- 200: unknown;
6445
- /**
6446
- * Invalid query parameters
6447
- */
6448
- 400: unknown;
6449
- };
6450
- };
6451
- };
6452
- '/api/v1/market/symbols/{dataSource}/{symbol}': {
6453
- get: {
6454
- req: SymbolControllerGetSymbolDataData;
6455
- res: {
6456
- /**
6457
- * Symbol data retrieved successfully
6458
- */
6459
- 200: unknown;
6460
- /**
6461
- * Invalid data source
6462
- */
6463
- 400: unknown;
6464
- /**
6465
- * Symbol not found
6466
- */
6467
- 404: unknown;
6468
- };
6469
- };
6470
- };
6471
- '/api/v1/market/symbols/{dataSource}/{symbol}/{dateString}': {
6472
- get: {
6473
- req: SymbolControllerGatherSymbolForDateData;
6474
- res: {
6475
- /**
6476
- * Historical data retrieved successfully
6477
- */
6478
- 200: unknown;
6479
- /**
6480
- * Invalid date format
6481
- */
6482
- 400: unknown;
6483
- /**
6484
- * Symbol data not found for specified date
6485
- */
6486
- 404: unknown;
6487
- };
6488
- };
6489
- };
6490
- '/api/v1/market/symbols/yahoo/batch-update': {
6491
- put: {
6492
- req: SymbolControllerData;
6493
- res: {
6494
- 200: unknown;
6495
- };
6496
- };
6497
- };
6498
- '/api/v1/cache/flush': {
6499
- post: {
6500
- req: CacheControllerFlushCacheData;
6501
- res: {
6502
- 201: unknown;
6503
- };
6504
- };
6505
- };
6506
7708
  '/api/v1/{region}/dashboard/net-worth': {
6507
7709
  get: {
6508
7710
  req: DashboardControllerGetNetWorthData;
@@ -6611,9 +7813,15 @@ export type $OpenApiTs = {
6611
7813
  };
6612
7814
  '/api/v1/auth/api-keys': {
6613
7815
  post: {
6614
- req: ApiKeysControllerData;
6615
7816
  res: {
7817
+ /**
7818
+ * API key created successfully
7819
+ */
6616
7820
  201: unknown;
7821
+ /**
7822
+ * Insufficient permissions to create API key
7823
+ */
7824
+ 403: unknown;
6617
7825
  };
6618
7826
  };
6619
7827
  };
@@ -6632,6 +7840,13 @@ export type $OpenApiTs = {
6632
7840
  };
6633
7841
  };
6634
7842
  };
7843
+ '/api/v1/cache/flush': {
7844
+ post: {
7845
+ res: {
7846
+ 201: unknown;
7847
+ };
7848
+ };
7849
+ };
6635
7850
  '/api/v1/market/exchange-rates/{symbol}/{dateString}': {
6636
7851
  get: {
6637
7852
  req: ExchangeRateControllerGetExchangeRateData;
@@ -6649,7 +7864,6 @@ export type $OpenApiTs = {
6649
7864
  };
6650
7865
  '/api/v1/health': {
6651
7866
  get: {
6652
- req: HealthControllerGetHealthData;
6653
7867
  res: {
6654
7868
  /**
6655
7869
  * Service is healthy
@@ -6664,7 +7878,6 @@ export type $OpenApiTs = {
6664
7878
  };
6665
7879
  '/api/v1/health/database': {
6666
7880
  get: {
6667
- req: HealthControllerCheckDatabaseData;
6668
7881
  res: {
6669
7882
  /**
6670
7883
  * Database is healthy
@@ -6677,9 +7890,22 @@ export type $OpenApiTs = {
6677
7890
  };
6678
7891
  };
6679
7892
  };
7893
+ '/api/v1/health/openbb': {
7894
+ get: {
7895
+ res: {
7896
+ /**
7897
+ * OpenBB status
7898
+ */
7899
+ 200: unknown;
7900
+ /**
7901
+ * OpenBB unavailable
7902
+ */
7903
+ 503: unknown;
7904
+ };
7905
+ };
7906
+ };
6680
7907
  '/api/v1/health/redis': {
6681
7908
  get: {
6682
- req: HealthControllerCheckRedisData;
6683
7909
  res: {
6684
7910
  /**
6685
7911
  * Redis is healthy
@@ -6694,7 +7920,6 @@ export type $OpenApiTs = {
6694
7920
  };
6695
7921
  '/api/v1/health/circuit-breakers': {
6696
7922
  get: {
6697
- req: HealthControllerGetCircuitBreakersHealthData;
6698
7923
  res: {
6699
7924
  /**
6700
7925
  * Circuit breaker status
@@ -6732,7 +7957,6 @@ export type $OpenApiTs = {
6732
7957
  };
6733
7958
  '/api/v1/health/metrics': {
6734
7959
  get: {
6735
- req: HealthControllerGetMetricsData;
6736
7960
  res: {
6737
7961
  /**
6738
7962
  * Health metrics
@@ -6745,70 +7969,8 @@ export type $OpenApiTs = {
6745
7969
  };
6746
7970
  };
6747
7971
  };
6748
- '/api/v1/health/data-enhancer/{name}': {
6749
- get: {
6750
- req: HealthControllerGetHealthOfDataEnhancerData;
6751
- res: {
6752
- /**
6753
- * Data enhancer is healthy
6754
- */
6755
- 200: unknown;
6756
- /**
6757
- * Unauthorized
6758
- */
6759
- 401: unknown;
6760
- /**
6761
- * Data enhancer unavailable
6762
- */
6763
- 503: unknown;
6764
- };
6765
- };
6766
- };
6767
- '/api/v1/health/data-providers': {
6768
- get: {
6769
- req: HealthControllerCheckDataProvidersData;
6770
- res: {
6771
- /**
6772
- * Data providers health status
6773
- */
6774
- 200: unknown;
6775
- /**
6776
- * Unauthorized
6777
- */
6778
- 401: unknown;
6779
- /**
6780
- * Data providers check failed
6781
- */
6782
- 503: unknown;
6783
- };
6784
- };
6785
- };
6786
- '/api/v1/health/data-provider/{dataSource}': {
6787
- get: {
6788
- req: HealthControllerGetHealthOfDataProviderData;
6789
- res: {
6790
- /**
6791
- * Data provider is healthy
6792
- */
6793
- 200: unknown;
6794
- /**
6795
- * Invalid data source
6796
- */
6797
- 400: unknown;
6798
- /**
6799
- * Unauthorized
6800
- */
6801
- 401: unknown;
6802
- /**
6803
- * Data provider unavailable
6804
- */
6805
- 503: unknown;
6806
- };
6807
- };
6808
- };
6809
7972
  '/api/v1/system/info': {
6810
7973
  get: {
6811
- req: InfoControllerGetInfoData;
6812
7974
  res: {
6813
7975
  /**
6814
7976
  * System information retrieved successfully
@@ -6817,71 +7979,4 @@ export type $OpenApiTs = {
6817
7979
  };
6818
7980
  };
6819
7981
  };
6820
- '/api/v1/market/logos/{dataSource}/{symbol}': {
6821
- get: {
6822
- req: LogoControllerGetLogoByDataSourceAndSymbolData;
6823
- res: {
6824
- /**
6825
- * Logo image stream (favicon)
6826
- */
6827
- 200: unknown;
6828
- /**
6829
- * Unauthorized
6830
- */
6831
- 401: unknown;
6832
- /**
6833
- * Logo not found for the specified asset
6834
- */
6835
- 404: unknown;
6836
- /**
6837
- * Service unavailable
6838
- */
6839
- 503: unknown;
6840
- };
6841
- };
6842
- };
6843
- '/api/v1/market/logos': {
6844
- get: {
6845
- req: LogoControllerGetLogoByUrlData;
6846
- res: {
6847
- /**
6848
- * Logo image stream (favicon)
6849
- */
6850
- 200: unknown;
6851
- /**
6852
- * Unauthorized
6853
- */
6854
- 401: unknown;
6855
- /**
6856
- * Service unavailable
6857
- */
6858
- 503: unknown;
6859
- };
6860
- };
6861
- };
6862
- '/api/v1/market-data/{dataSource}/{symbol}': {
6863
- get: {
6864
- req: MarketDataControllerGetMarketDataBySymbolData;
6865
- res: {
6866
- /**
6867
- * Market data retrieved successfully
6868
- */
6869
- 200: unknown;
6870
- /**
6871
- * Insufficient permissions to read market data
6872
- */
6873
- 403: unknown;
6874
- /**
6875
- * Market data not found
6876
- */
6877
- 404: unknown;
6878
- };
6879
- };
6880
- post: {
6881
- req: MarketDataControllerData;
6882
- res: {
6883
- 201: unknown;
6884
- };
6885
- };
6886
- };
6887
7982
  };