@firela/api-types 0.0.0-canary.0f069763 → 0.0.0-canary.0fb9523b

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -78,6 +78,10 @@ type AccountResponseDto = {
78
78
  * Account type (root segment)
79
79
  */
80
80
  type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
81
+ /**
82
+ * Account-level asset sub-class (product type, e.g. STOCK/DEPOSIT/CREDIT_CARD/PERSONAL_LOAN). Computed from the account path via the asset-classifier (ADR-0077). Null for non-asset accounts (Income/Expenses/Equity) or unmatched paths.
83
+ */
84
+ assetSubClass?: 'DEPOSIT' | 'CASH' | 'MONEY_MARKET_FUND' | 'STOCK' | 'ETF' | 'MUTUAL_FUND' | 'EQUITY_COMPENSATION' | 'GOVERNMENT_BOND' | 'CORPORATE_BOND' | 'BOND_FUND' | 'PRIMARY_RESIDENCE' | 'INVESTMENT_PROPERTY' | 'REIT' | 'GOLD' | 'SILVER' | 'PRECIOUS_METAL' | 'PRECIOUS_METAL_FUND' | 'COMMODITY' | 'COMMODITY_FUND' | 'CRYPTOCURRENCY' | 'RETIREMENT_ACCOUNT' | 'HEALTH_ACCOUNT' | 'EDUCATION_ACCOUNT' | 'INSURANCE' | 'PRIVATE_EQUITY' | 'HEDGE_FUND' | 'COLLECTIBLES' | 'MORTGAGE' | 'STUDENT_LOAN' | 'CREDIT_CARD' | 'PERSONAL_LOAN' | 'ACCOUNTS_PAYABLE' | 'TAX_PAYABLE' | 'OTHER' | null;
81
85
  /**
82
86
  * Account status
83
87
  */
@@ -145,6 +149,10 @@ type AccountResponseDto = {
145
149
  * Account type (root segment)
146
150
  */
147
151
  type type = 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
152
+ /**
153
+ * Account-level asset sub-class (product type, e.g. STOCK/DEPOSIT/CREDIT_CARD/PERSONAL_LOAN). Computed from the account path via the asset-classifier (ADR-0077). Null for non-asset accounts (Income/Expenses/Equity) or unmatched paths.
154
+ */
155
+ type assetSubClass = 'DEPOSIT' | 'CASH' | 'MONEY_MARKET_FUND' | 'STOCK' | 'ETF' | 'MUTUAL_FUND' | 'EQUITY_COMPENSATION' | 'GOVERNMENT_BOND' | 'CORPORATE_BOND' | 'BOND_FUND' | 'PRIMARY_RESIDENCE' | 'INVESTMENT_PROPERTY' | 'REIT' | 'GOLD' | 'SILVER' | 'PRECIOUS_METAL' | 'PRECIOUS_METAL_FUND' | 'COMMODITY' | 'COMMODITY_FUND' | 'CRYPTOCURRENCY' | 'RETIREMENT_ACCOUNT' | 'HEALTH_ACCOUNT' | 'EDUCATION_ACCOUNT' | 'INSURANCE' | 'PRIVATE_EQUITY' | 'HEDGE_FUND' | 'COLLECTIBLES' | 'MORTGAGE' | 'STUDENT_LOAN' | 'CREDIT_CARD' | 'PERSONAL_LOAN' | 'ACCOUNTS_PAYABLE' | 'TAX_PAYABLE' | 'OTHER';
148
156
  /**
149
157
  * Account status
150
158
  */
@@ -246,7 +254,27 @@ type AccountStandardResponseDto = {
246
254
  * Icon identifier for UI display
247
255
  */
248
256
  icon: string;
257
+ /**
258
+ * Onboarding product category (coarse grouping derived from assetSubClass)
259
+ */
260
+ productCategory: 'cash' | 'investment' | 'credit_card' | 'loan' | 'payable_tax' | 'other';
261
+ /**
262
+ * Asset class (LIQUIDITY/EQUITY/.../LIABILITY), derived at read time from classification rules
263
+ */
264
+ assetClass?: 'LIQUIDITY' | 'EQUITY' | 'FIXED_INCOME' | 'PRECIOUS_METALS' | 'COMMODITY' | 'INSURANCE' | 'ALTERNATIVE_INVESTMENT' | 'PERSONAL_ASSETS' | 'LIABILITY' | 'REAL_ESTATE' | 'INDEX';
265
+ /**
266
+ * Asset sub-class (product type, derived at read time from classification rules)
267
+ */
268
+ assetSubClass?: string;
249
269
  };
270
+ /**
271
+ * Onboarding product category (coarse grouping derived from assetSubClass)
272
+ */
273
+ type productCategory = 'cash' | 'investment' | 'credit_card' | 'loan' | 'payable_tax' | 'other';
274
+ /**
275
+ * Asset class (LIQUIDITY/EQUITY/.../LIABILITY), derived at read time from classification rules
276
+ */
277
+ type assetClass = 'LIQUIDITY' | 'EQUITY' | 'FIXED_INCOME' | 'PRECIOUS_METALS' | 'COMMODITY' | 'INSURANCE' | 'ALTERNATIVE_INVESTMENT' | 'PERSONAL_ASSETS' | 'LIABILITY' | 'REAL_ESTATE' | 'INDEX';
250
278
  type AccountStandardListResponseDto = {
251
279
  /**
252
280
  * Array of account templates
@@ -429,7 +457,7 @@ type PostingResponseDto = {
429
457
  */
430
458
  account: string;
431
459
  /**
432
- * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
460
+ * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned. Carries the raw Beancount sign (credit-normal accounts such as Income post negative — the accounting truth, ADR-0126); renderers must not infer economic semantics from this sign.
433
461
  */
434
462
  units?: string;
435
463
  /**
@@ -641,7 +669,7 @@ type PostingDetailDto = {
641
669
  */
642
670
  account: string;
643
671
  /**
644
- * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned.
672
+ * Amount as decimal string. Typed optional but always present in responses: interpolation fills any MISSING posting before it is persisted or returned. Carries the raw Beancount sign (credit-normal accounts such as Income post negative — the accounting truth, ADR-0126); renderers must not infer economic semantics from this sign.
645
673
  */
646
674
  units?: string;
647
675
  /**
@@ -771,6 +799,94 @@ type flag2 = 'CLEARED' | 'PENDING' | 'PADDING' | 'SUMMARIZE' | 'TRANSFER' | 'CON
771
799
  * Transaction status
772
800
  */
773
801
  type status2 = 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
802
+ type TransactionListItemDto = {
803
+ /**
804
+ * Transaction ID
805
+ */
806
+ id: string;
807
+ /**
808
+ * Transaction date
809
+ */
810
+ date: string;
811
+ /**
812
+ * Transaction flag
813
+ */
814
+ flag?: 'CLEARED' | 'PENDING' | 'PADDING' | 'SUMMARIZE' | 'TRANSFER' | 'CONVERSIONS';
815
+ /**
816
+ * Custom flag (if not using standard flags)
817
+ */
818
+ customFlag?: string;
819
+ /**
820
+ * Payee name
821
+ */
822
+ payee?: string;
823
+ /**
824
+ * Transaction narration
825
+ */
826
+ narration: string;
827
+ /**
828
+ * Transaction tags
829
+ */
830
+ tags: Array<string>;
831
+ /**
832
+ * Transaction links
833
+ */
834
+ links: Array<string>;
835
+ /**
836
+ * Transaction metadata
837
+ */
838
+ meta?: {
839
+ [key: string]: unknown;
840
+ };
841
+ /**
842
+ * Transaction status
843
+ */
844
+ status: 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
845
+ /**
846
+ * Source type (free-form string from transaction metadata, e.g. import, api)
847
+ */
848
+ sourceType?: string;
849
+ /**
850
+ * Source platform (e.g., alipay, wechat)
851
+ */
852
+ sourcePlatform?: string;
853
+ /**
854
+ * Transaction postings
855
+ */
856
+ postings: Array<PostingDetailDto>;
857
+ /**
858
+ * Created at timestamp
859
+ */
860
+ createdAt: string;
861
+ /**
862
+ * Voided at timestamp (if voided)
863
+ */
864
+ voidedAt?: string;
865
+ /**
866
+ * User ID who voided this transaction
867
+ */
868
+ voidedBy?: string;
869
+ /**
870
+ * Correction reason (if voided or superseded)
871
+ */
872
+ correctionReason?: string;
873
+ /**
874
+ * ID of the transaction that supersedes this one (set when status=SUPERSEDED)
875
+ */
876
+ supersededBy?: string;
877
+ /**
878
+ * ID of the transaction this one corrected/replaced (back-link on the replacement)
879
+ */
880
+ originalTxn?: string;
881
+ /**
882
+ * Per-leg sign-normalized row amount for the category viewpoint (ADR-0126): each posting on the category account set contributes its unitsNumber with Income-root legs negated and Expenses-root legs identity. Positive under normal booking but NOT clamped (explicit negative expense legs and net-flip refund months stay negative). Omitted outside the category viewpoint.
883
+ */
884
+ viewpointAmount?: string;
885
+ /**
886
+ * Currency of viewpointAmount. A row spanning multiple currencies takes the largest-magnitude currency group (known simplification, ADR-0126). Omitted outside the category viewpoint.
887
+ */
888
+ viewpointCurrency?: string;
889
+ };
774
890
  type BalanceByCurrencyDto = {
775
891
  /**
776
892
  * ISO 4217 currency code
@@ -797,7 +913,7 @@ type ExchangeRateWarningDto = {
797
913
  };
798
914
  type TransactionListSummaryDto = {
799
915
  /**
800
- * Partial converted total in base currency (rated currencies only, raw Beancount sign). When warnings is non-empty this excludes currencies missing an FX rate; may be "0.00" if ALL non-base currencies lack a rate. Converted at the dateTo (or current) available rate.
916
+ * Partial converted total in base currency (rated currencies only). Sign by viewpoint (ADR-0126): account viewpoint keeps the raw Beancount sign (income negative); category viewpoint is per-leg sign-normalized (Income legs negated, Expenses legs identity — positive under normal booking, not clamped). When warnings is non-empty this excludes currencies missing an FX rate; may be "0.00" if ALL non-base currencies lack a rate. Converted at the dateTo (or current) available rate.
801
917
  */
802
918
  totalAmount: string;
803
919
  /**
@@ -813,11 +929,29 @@ type TransactionListSummaryDto = {
813
929
  */
814
930
  warnings?: Array<ExchangeRateWarningDto>;
815
931
  };
932
+ type TransactionListViewpointDto = {
933
+ /**
934
+ * Viewpoint type (only category drill-down carries a viewpoint today)
935
+ */
936
+ type: 'category';
937
+ /**
938
+ * Flow root the category account set is restricted to
939
+ */
940
+ flow: 'income' | 'expense';
941
+ };
942
+ /**
943
+ * Viewpoint type (only category drill-down carries a viewpoint today)
944
+ */
945
+ type type2 = 'category';
946
+ /**
947
+ * Flow root the category account set is restricted to
948
+ */
949
+ type flow = 'income' | 'expense';
816
950
  type TransactionListResponseDto = {
817
951
  /**
818
952
  * List of transactions
819
953
  */
820
- data: Array<TransactionDetailDto>;
954
+ data: Array<TransactionListItemDto>;
821
955
  /**
822
956
  * Total count of matching transactions
823
957
  */
@@ -834,6 +968,10 @@ type TransactionListResponseDto = {
834
968
  * Amount summary for the full filtered set (#514). Present only when the request has a single account OR category viewpoint; omitted for search-only / plain-list / dual-perspective requests.
835
969
  */
836
970
  summary?: TransactionListSummaryDto;
971
+ /**
972
+ * Viewpoint metadata (ADR-0126). Present only for a single category filter (category + flow, no accountId); dual-perspective requests are viewpoint-less (raw signs, no viewpointAmount).
973
+ */
974
+ viewpoint?: TransactionListViewpointDto;
837
975
  };
838
976
  type TagSuggestionDto = {
839
977
  /**
@@ -1026,7 +1164,7 @@ type ReviewSummaryDto = {
1026
1164
  /**
1027
1165
  * Review type
1028
1166
  */
1029
- type type2 = 'DUPLICATE' | 'RULE_MATCH' | 'PAYEE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
1167
+ type type3 = 'DUPLICATE' | 'RULE_MATCH' | 'PAYEE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
1030
1168
  /**
1031
1169
  * Review status
1032
1170
  */
@@ -2375,356 +2513,222 @@ type ForecastResponseDto = {
2375
2513
  */
2376
2514
  periodEnd: string;
2377
2515
  };
2378
- type CreateTransactionRuleDto = {
2379
- name: string;
2380
- description?: string;
2381
- narrationKeywords?: Array<unknown[]>;
2382
- payeeKeywords?: Array<unknown[]>;
2383
- categoryKeywords?: Array<unknown[]>;
2516
+ type CurrencyBalanceDto = {
2384
2517
  /**
2385
- * Payment method keywords (e.g., HuaBei, YuEBao)
2518
+ * ISO 4217 currency code
2386
2519
  */
2387
- methodKeywords?: Array<unknown[]>;
2520
+ currency: string;
2388
2521
  /**
2389
- * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2522
+ * Balance amount
2390
2523
  */
2391
- categoryAccount?: string;
2392
- matchLogic: 'OR' | 'AND';
2524
+ balance: string;
2525
+ };
2526
+ type TimeSeriesPointDto = {
2393
2527
  /**
2394
- * Minimum transaction amount (inclusive)
2528
+ * Date in YYYY-MM-DD format
2395
2529
  */
2396
- amountMin?: number;
2530
+ date: string;
2397
2531
  /**
2398
- * Maximum transaction amount (inclusive)
2532
+ * Value at this date (in base currency)
2399
2533
  */
2400
- amountMax?: number;
2401
- priority: number;
2402
- additionalTags?: Array<unknown[]>;
2403
- additionalMetadata?: {
2534
+ value: string;
2535
+ /**
2536
+ * Change from previous point
2537
+ */
2538
+ change?: {
2404
2539
  [key: string]: unknown;
2405
2540
  };
2406
2541
  /**
2407
- * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2542
+ * Total assets at this date (in base currency)
2408
2543
  */
2409
- upsertByPayee?: boolean;
2410
- };
2411
- type matchLogic = 'OR' | 'AND';
2412
- type AmountRangeDto = {
2544
+ assets?: string;
2413
2545
  /**
2414
- * Minimum amount
2546
+ * Total liabilities at this date (in base currency)
2415
2547
  */
2416
- min?: number;
2548
+ liabilities?: string;
2417
2549
  /**
2418
- * Maximum amount
2550
+ * Multi-currency breakdown for this point
2419
2551
  */
2420
- max?: number;
2552
+ byCurrency?: Array<CurrencyBalanceDto>;
2421
2553
  };
2422
- type TransactionRuleResponseDto = {
2554
+ type TrendSummaryDto = {
2423
2555
  /**
2424
- * Rule ID
2556
+ * Value at start of period
2425
2557
  */
2426
- id: string;
2558
+ startValue: string;
2427
2559
  /**
2428
- * Rule name
2560
+ * Value at end of period
2429
2561
  */
2430
- name: string;
2562
+ endValue: string;
2431
2563
  /**
2432
- * Rule description
2564
+ * Total change over period
2433
2565
  */
2434
- description?: string;
2566
+ totalChange: string;
2435
2567
  /**
2436
- * Keywords to match in transaction narration
2568
+ * Total change percentage
2437
2569
  */
2438
- narrationKeywords: Array<string>;
2570
+ totalChangePercentage: string;
2571
+ };
2572
+ type MultiCurrencyPointDto = {
2439
2573
  /**
2440
- * Keywords to match in payee name
2574
+ * Date in YYYY-MM-DD format
2441
2575
  */
2442
- payeeKeywords: Array<string>;
2576
+ date: string;
2443
2577
  /**
2444
- * Keywords to match in category
2578
+ * Balances by currency
2445
2579
  */
2446
- categoryKeywords: Array<string>;
2580
+ byCurrency: Array<CurrencyBalanceDto>;
2581
+ };
2582
+ type PortfolioTrendsResponseDto = {
2447
2583
  /**
2448
- * Keywords to match in payment method
2584
+ * Time series data points
2449
2585
  */
2450
- methodKeywords: Array<string>;
2586
+ series: Array<TimeSeriesPointDto>;
2451
2587
  /**
2452
- * Destination account for categorization
2588
+ * Period summary
2453
2589
  */
2454
- categoryAccount?: string;
2590
+ summary: TrendSummaryDto;
2455
2591
  /**
2456
- * Keyword matching logic
2592
+ * Period requested
2457
2593
  */
2458
- matchLogic: 'OR' | 'AND';
2594
+ period: string;
2459
2595
  /**
2460
- * Amount range for matching
2596
+ * Data granularity
2461
2597
  */
2462
- amountRange?: AmountRangeDto;
2598
+ granularity: string;
2463
2599
  /**
2464
- * Rule priority (0-1000, higher = first match)
2600
+ * Base currency for converted values
2465
2601
  */
2466
- priority: number;
2602
+ currency: string;
2467
2603
  /**
2468
- * Whether the rule is enabled
2604
+ * Multi-currency time series (each point has currency breakdown)
2469
2605
  */
2470
- enabled: boolean;
2606
+ byCurrency?: Array<MultiCurrencyPointDto>;
2471
2607
  /**
2472
- * Learning source: NLP, REVIEW_CENTER, or null for manual
2608
+ * Exchange rate warnings
2473
2609
  */
2474
- learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
2610
+ warnings?: Array<ExchangeRateWarningDto>;
2611
+ };
2612
+ type CashFlowPointDto = {
2475
2613
  /**
2476
- * Whether auto-apply is enabled for this rule
2614
+ * Month key (YYYY-MM)
2477
2615
  */
2478
- autoApplyEnabled: boolean;
2616
+ month: string;
2479
2617
  /**
2480
- * Number of confirmations for NLP-learned rules
2618
+ * Income in base currency (absolute, converted)
2481
2619
  */
2482
- confirmationCount: number;
2620
+ income: string;
2483
2621
  /**
2484
- * Additional tags
2622
+ * Expense in base currency (absolute, converted)
2485
2623
  */
2486
- additionalTags: Array<string>;
2624
+ expense: string;
2487
2625
  /**
2488
- * Additional metadata
2626
+ * netSavings = income − expense (savings positive)
2489
2627
  */
2490
- additionalMetadata?: {
2491
- [key: string]: string;
2492
- };
2628
+ netSavings: string;
2629
+ };
2630
+ type CashFlowTrendSummaryDto = {
2493
2631
  /**
2494
- * Created timestamp
2632
+ * Total income across the period
2495
2633
  */
2496
- createdAt: string;
2634
+ totalIncome: string;
2497
2635
  /**
2498
- * Updated timestamp
2636
+ * Total expense across the period
2499
2637
  */
2500
- updatedAt: string;
2501
- };
2502
- /**
2503
- * Learning source: NLP, REVIEW_CENTER, or null for manual
2504
- */
2505
- type learningSource = 'NLP' | 'REVIEW_CENTER';
2506
- type TransactionRuleListResponseDto = {
2507
- data: Array<TransactionRuleResponseDto>;
2638
+ totalExpense: string;
2508
2639
  /**
2509
- * Total count of rules
2640
+ * income expense across the period
2510
2641
  */
2511
- total: number;
2512
- /**
2513
- * Results per page
2514
- */
2515
- limit: number;
2642
+ totalNetSavings: string;
2516
2643
  /**
2517
- * Pagination offset
2644
+ * totalNetSavings divided by the window length (N months, incl. zero-filled)
2518
2645
  */
2519
- offset: number;
2646
+ averageMonthlyNetSavings: string;
2520
2647
  };
2521
- type ValidateRuleDto = {
2522
- name: string;
2523
- description?: string;
2524
- narrationKeywords?: Array<unknown[]>;
2525
- payeeKeywords?: Array<unknown[]>;
2526
- categoryKeywords?: Array<unknown[]>;
2527
- /**
2528
- * Payment method keywords (e.g., HuaBei, YuEBao)
2529
- */
2530
- methodKeywords?: Array<unknown[]>;
2531
- /**
2532
- * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2533
- */
2534
- categoryAccount?: string;
2535
- matchLogic: 'OR' | 'AND';
2648
+ type CashFlowTrendsResponseDto = {
2536
2649
  /**
2537
- * Minimum transaction amount (inclusive)
2650
+ * Monthly cash-flow series (fixed N-month window, zero-filled)
2538
2651
  */
2539
- amountMin?: number;
2652
+ series: Array<CashFlowPointDto>;
2540
2653
  /**
2541
- * Maximum transaction amount (inclusive)
2654
+ * Period totals
2542
2655
  */
2543
- amountMax?: number;
2544
- priority: number;
2545
- additionalTags?: Array<unknown[]>;
2546
- additionalMetadata?: {
2547
- [key: string]: unknown;
2548
- };
2656
+ summary: CashFlowTrendSummaryDto;
2549
2657
  /**
2550
- * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2658
+ * Period requested
2551
2659
  */
2552
- upsertByPayee?: boolean;
2553
- };
2554
- type ValidateRuleResponseDto = {
2660
+ period: string;
2555
2661
  /**
2556
- * Whether the rule configuration is valid
2662
+ * Data granularity (v1 returns month buckets)
2557
2663
  */
2558
- valid: boolean;
2664
+ granularity: string;
2559
2665
  /**
2560
- * List of validation errors (empty if valid)
2666
+ * Base currency for converted values
2561
2667
  */
2562
- errors: Array<unknown[]>;
2668
+ currency: string;
2563
2669
  /**
2564
- * List of validation warnings (non-blocking issues)
2670
+ * Exchange rate warnings (e.g. missing rate for a currency)
2565
2671
  */
2566
- warnings: Array<unknown[]>;
2672
+ warnings?: Array<ExchangeRateWarningDto>;
2567
2673
  };
2568
- type BulkCreateRulesDto = {
2569
- /**
2570
- * Array of rules to import
2571
- */
2572
- rules: Array<unknown[]>;
2674
+ type GenerateSnapshotBody = unknown;
2675
+ type GenerateSnapshotResponse = unknown;
2676
+ type BackfillSnapshotsBody = unknown;
2677
+ type BackfillSnapshotsResponse = unknown;
2678
+ type DeleteOwnUserDto = {
2573
2679
  /**
2574
- * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2680
+ * Access token for user verification
2575
2681
  */
2576
- conflictStrategy: 'replace' | 'skip';
2682
+ accessToken: string;
2577
2683
  };
2578
- /**
2579
- * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2580
- */
2581
- type conflictStrategy = 'replace' | 'skip';
2582
- type BulkCreateRulesResponseDto = {
2583
- /**
2584
- * Number of successfully created rules
2585
- */
2586
- successCount: number;
2587
- /**
2588
- * Number of failed rules
2589
- */
2590
- failureCount: number;
2591
- /**
2592
- * Error details for failed rules
2593
- */
2594
- errors: Array<{
2595
- index?: number;
2596
- message?: string;
2597
- }>;
2684
+ type UserSettingsResponseDto = {
2598
2685
  /**
2599
- * IDs of successfully created rules
2686
+ * Base currency (ISO 4217) for net-worth/report aggregation. Independent of region (ADR-0006).
2600
2687
  */
2601
- createdRuleIds: Array<string>;
2688
+ baseCurrency: string | null;
2602
2689
  };
2603
- type ExportRulesResponseDto = {
2604
- /**
2605
- * Export timestamp
2606
- */
2607
- exportedAt: string;
2690
+ type UserResponseDto = {
2608
2691
  /**
2609
2692
  * User ID
2610
2693
  */
2611
- userId: string;
2612
- /**
2613
- * Number of exported rules
2614
- */
2615
- ruleCount: number;
2616
- /**
2617
- * Exported rules
2618
- */
2619
- rules: unknown[];
2620
- };
2621
- type RuleStatisticsResponseDto = {
2622
- /**
2623
- * Statistics time period
2624
- */
2625
- period: '7d' | '30d' | '90d';
2626
- /**
2627
- * Total number of rules
2628
- */
2629
- totalRules: number;
2630
- /**
2631
- * Number of rules with at least one match
2632
- */
2633
- rulesWithMatches: number;
2694
+ id: string;
2634
2695
  /**
2635
- * Total number of matches across all rules
2696
+ * Assigned user role
2636
2697
  */
2637
- totalMatches: number;
2698
+ role: string;
2638
2699
  /**
2639
- * Average confidence score across all matches
2700
+ * Permission strings
2640
2701
  */
2641
- averageConfidence: number;
2702
+ permissions: Array<string>;
2642
2703
  /**
2643
- * Per-rule statistics
2704
+ * User settings
2644
2705
  */
2645
- ruleStats: Array<{
2646
- ruleId?: string;
2647
- ruleName?: string;
2648
- matchCount?: number;
2649
- averageConfidence?: number;
2650
- }>;
2706
+ settings: UserSettingsResponseDto;
2651
2707
  };
2652
- /**
2653
- * Statistics time period
2654
- */
2655
- type period = '7d' | '30d' | '90d';
2656
- type UpdateTransactionRuleDto = {
2657
- name?: string;
2658
- description?: string;
2659
- narrationKeywords?: Array<unknown[]>;
2660
- payeeKeywords?: Array<unknown[]>;
2661
- categoryKeywords?: Array<unknown[]>;
2662
- /**
2663
- * Payment method keywords (e.g., HuaBei, YuEBao)
2664
- */
2665
- methodKeywords?: Array<unknown[]>;
2666
- /**
2667
- * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2668
- */
2669
- categoryAccount?: string;
2670
- matchLogic?: 'OR' | 'AND';
2671
- /**
2672
- * Minimum transaction amount (inclusive)
2673
- */
2674
- amountMin?: number;
2675
- /**
2676
- * Maximum transaction amount (inclusive)
2677
- */
2678
- amountMax?: number;
2679
- priority?: number;
2708
+ type SignupDto = {
2680
2709
  /**
2681
- * Enable or disable the rule
2710
+ * Cloudflare Turnstile verification token (optional when Turnstile disabled)
2682
2711
  */
2683
- enabled?: boolean;
2684
- additionalTags?: Array<unknown[]>;
2685
- additionalMetadata?: {
2686
- [key: string]: unknown;
2687
- };
2688
- };
2689
- type TestRuleDto = {
2690
- narration: string;
2691
- payee?: string;
2692
- categoryAccount?: string;
2693
- amount?: number;
2694
- currency?: string;
2712
+ turnstileToken?: string;
2695
2713
  };
2696
- type TestRuleResponseDto = {
2697
- /**
2698
- * Rule ID that was tested
2699
- */
2700
- ruleId: string;
2701
- /**
2702
- * Whether the rule matched the test data
2703
- */
2704
- matches: boolean;
2705
- /**
2706
- * Match confidence score (0-1)
2707
- */
2708
- confidence: number;
2714
+ type SignupResponseDto = {
2709
2715
  /**
2710
- * Details of which fields matched
2716
+ * JWT auth token
2711
2717
  */
2712
- matchDetails: {
2713
- [key: string]: unknown;
2714
- };
2715
- };
2716
- type DeleteOwnUserDto = {
2718
+ authToken: string;
2717
2719
  /**
2718
- * Access token for user verification
2720
+ * Auto-generated access token
2719
2721
  */
2720
2722
  accessToken: string;
2721
- };
2722
- type SignupDto = {
2723
2723
  /**
2724
- * Cloudflare Turnstile verification token (optional when Turnstile disabled)
2724
+ * Assigned user role
2725
2725
  */
2726
- turnstileToken?: string;
2726
+ role: 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
2727
2727
  };
2728
+ /**
2729
+ * Assigned user role
2730
+ */
2731
+ type role = 'USER' | 'ADMIN' | 'DEMO' | 'INACTIVE' | 'PAID' | 'OPS';
2728
2732
  type UpdateUserSettingDto = {
2729
2733
  /**
2730
2734
  * Security ID
@@ -2825,47 +2829,421 @@ type UpdatePropertyDto = {
2825
2829
  */
2826
2830
  value: string;
2827
2831
  };
2828
- type CreateBeanEventDto = {
2832
+ type CreateTransactionRuleDto = {
2833
+ name: string;
2834
+ description?: string;
2835
+ narrationKeywords?: Array<unknown[]>;
2836
+ payeeKeywords?: Array<unknown[]>;
2837
+ categoryKeywords?: Array<unknown[]>;
2829
2838
  /**
2830
- * Life event date (ISO 8601)
2839
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2831
2840
  */
2832
- date: string;
2841
+ methodKeywords?: Array<unknown[]>;
2833
2842
  /**
2834
- * Life event type (e.g., "employer", "location", "marital-status") — user-defined, no enum constraint at engine layer
2843
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2835
2844
  */
2836
- type: string;
2845
+ categoryAccount?: string;
2846
+ matchLogic: 'OR' | 'AND';
2837
2847
  /**
2838
- * Life event description. Empty string is a VALID value (distinct from absence).
2848
+ * Minimum transaction amount (inclusive)
2839
2849
  */
2840
- description: string;
2850
+ amountMin?: number;
2841
2851
  /**
2842
- * Product-side metadata (lives in BeanEvent.meta JSON, never in engine Event fields)
2852
+ * Maximum transaction amount (inclusive)
2843
2853
  */
2844
- meta?: {
2854
+ amountMax?: number;
2855
+ priority: number;
2856
+ additionalTags?: Array<unknown[]>;
2857
+ additionalMetadata?: {
2845
2858
  [key: string]: unknown;
2846
2859
  };
2847
- };
2848
- type EventResponseDto = {
2849
2860
  /**
2850
- * Unique identifier
2861
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2851
2862
  */
2852
- id: string;
2863
+ upsertByPayee?: boolean;
2864
+ };
2865
+ type matchLogic = 'OR' | 'AND';
2866
+ type AmountRangeDto = {
2853
2867
  /**
2854
- * User ID (owner of the life event)
2868
+ * Minimum amount
2855
2869
  */
2856
- userId: string;
2870
+ min?: number;
2857
2871
  /**
2858
- * Life event date (ISO 8601 format)
2872
+ * Maximum amount
2859
2873
  */
2860
- date: string;
2874
+ max?: number;
2875
+ };
2876
+ type TransactionRuleResponseDto = {
2861
2877
  /**
2862
- * Life event type (user-defined, e.g., "employer", "location")
2878
+ * Rule ID
2863
2879
  */
2864
- type: string;
2880
+ id: string;
2865
2881
  /**
2866
- * Life event description. May be an empty string (a valid value distinct from absence).
2882
+ * Rule name
2867
2883
  */
2868
- description: string;
2884
+ name: string;
2885
+ /**
2886
+ * Rule description
2887
+ */
2888
+ description?: string;
2889
+ /**
2890
+ * Keywords to match in transaction narration
2891
+ */
2892
+ narrationKeywords: Array<string>;
2893
+ /**
2894
+ * Keywords to match in payee name
2895
+ */
2896
+ payeeKeywords: Array<string>;
2897
+ /**
2898
+ * Keywords to match in category
2899
+ */
2900
+ categoryKeywords: Array<string>;
2901
+ /**
2902
+ * Keywords to match in payment method
2903
+ */
2904
+ methodKeywords: Array<string>;
2905
+ /**
2906
+ * Destination account for categorization
2907
+ */
2908
+ categoryAccount?: string;
2909
+ /**
2910
+ * Keyword matching logic
2911
+ */
2912
+ matchLogic: 'OR' | 'AND';
2913
+ /**
2914
+ * Amount range for matching
2915
+ */
2916
+ amountRange?: AmountRangeDto;
2917
+ /**
2918
+ * Rule priority (0-1000, higher = first match)
2919
+ */
2920
+ priority: number;
2921
+ /**
2922
+ * Whether the rule is enabled
2923
+ */
2924
+ enabled: boolean;
2925
+ /**
2926
+ * Learning source: NLP, REVIEW_CENTER, or null for manual
2927
+ */
2928
+ learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
2929
+ /**
2930
+ * Whether auto-apply is enabled for this rule
2931
+ */
2932
+ autoApplyEnabled: boolean;
2933
+ /**
2934
+ * Number of confirmations for NLP-learned rules
2935
+ */
2936
+ confirmationCount: number;
2937
+ /**
2938
+ * Additional tags
2939
+ */
2940
+ additionalTags: Array<string>;
2941
+ /**
2942
+ * Additional metadata
2943
+ */
2944
+ additionalMetadata?: {
2945
+ [key: string]: string;
2946
+ };
2947
+ /**
2948
+ * Created timestamp
2949
+ */
2950
+ createdAt: string;
2951
+ /**
2952
+ * Updated timestamp
2953
+ */
2954
+ updatedAt: string;
2955
+ };
2956
+ /**
2957
+ * Learning source: NLP, REVIEW_CENTER, or null for manual
2958
+ */
2959
+ type learningSource = 'NLP' | 'REVIEW_CENTER';
2960
+ type TransactionRuleListResponseDto = {
2961
+ data: Array<TransactionRuleResponseDto>;
2962
+ /**
2963
+ * Total count of rules
2964
+ */
2965
+ total: number;
2966
+ /**
2967
+ * Results per page
2968
+ */
2969
+ limit: number;
2970
+ /**
2971
+ * Pagination offset
2972
+ */
2973
+ offset: number;
2974
+ };
2975
+ type ValidateRuleDto = {
2976
+ name: string;
2977
+ description?: string;
2978
+ narrationKeywords?: Array<unknown[]>;
2979
+ payeeKeywords?: Array<unknown[]>;
2980
+ categoryKeywords?: Array<unknown[]>;
2981
+ /**
2982
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2983
+ */
2984
+ methodKeywords?: Array<unknown[]>;
2985
+ /**
2986
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2987
+ */
2988
+ categoryAccount?: string;
2989
+ matchLogic: 'OR' | 'AND';
2990
+ /**
2991
+ * Minimum transaction amount (inclusive)
2992
+ */
2993
+ amountMin?: number;
2994
+ /**
2995
+ * Maximum transaction amount (inclusive)
2996
+ */
2997
+ amountMax?: number;
2998
+ priority: number;
2999
+ additionalTags?: Array<unknown[]>;
3000
+ additionalMetadata?: {
3001
+ [key: string]: unknown;
3002
+ };
3003
+ /**
3004
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
3005
+ */
3006
+ upsertByPayee?: boolean;
3007
+ };
3008
+ type ValidateRuleResponseDto = {
3009
+ /**
3010
+ * Whether the rule configuration is valid
3011
+ */
3012
+ valid: boolean;
3013
+ /**
3014
+ * List of validation errors (empty if valid)
3015
+ */
3016
+ errors: Array<unknown[]>;
3017
+ /**
3018
+ * List of validation warnings (non-blocking issues)
3019
+ */
3020
+ warnings: Array<unknown[]>;
3021
+ };
3022
+ type BulkCreateRulesDto = {
3023
+ /**
3024
+ * Array of rules to import
3025
+ */
3026
+ rules: Array<unknown[]>;
3027
+ /**
3028
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
3029
+ */
3030
+ conflictStrategy: 'replace' | 'skip';
3031
+ };
3032
+ /**
3033
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
3034
+ */
3035
+ type conflictStrategy = 'replace' | 'skip';
3036
+ type BulkCreateRulesResponseDto = {
3037
+ /**
3038
+ * Number of successfully created rules
3039
+ */
3040
+ successCount: number;
3041
+ /**
3042
+ * Number of failed rules
3043
+ */
3044
+ failureCount: number;
3045
+ /**
3046
+ * Error details for failed rules
3047
+ */
3048
+ errors: Array<{
3049
+ index?: number;
3050
+ message?: string;
3051
+ }>;
3052
+ /**
3053
+ * IDs of successfully created rules
3054
+ */
3055
+ createdRuleIds: Array<string>;
3056
+ };
3057
+ type ExportRulesResponseDto = {
3058
+ /**
3059
+ * Export timestamp
3060
+ */
3061
+ exportedAt: string;
3062
+ /**
3063
+ * User ID
3064
+ */
3065
+ userId: string;
3066
+ /**
3067
+ * Number of exported rules
3068
+ */
3069
+ ruleCount: number;
3070
+ /**
3071
+ * Exported rules
3072
+ */
3073
+ rules: unknown[];
3074
+ };
3075
+ type RuleStatisticsResponseDto = {
3076
+ /**
3077
+ * Statistics time period
3078
+ */
3079
+ period: '7d' | '30d' | '90d';
3080
+ /**
3081
+ * Total number of rules
3082
+ */
3083
+ totalRules: number;
3084
+ /**
3085
+ * Number of rules with at least one match
3086
+ */
3087
+ rulesWithMatches: number;
3088
+ /**
3089
+ * Total number of matches across all rules
3090
+ */
3091
+ totalMatches: number;
3092
+ /**
3093
+ * Average confidence score across all matches
3094
+ */
3095
+ averageConfidence: number;
3096
+ /**
3097
+ * Per-rule statistics
3098
+ */
3099
+ ruleStats: Array<{
3100
+ ruleId?: string;
3101
+ ruleName?: string;
3102
+ matchCount?: number;
3103
+ averageConfidence?: number;
3104
+ }>;
3105
+ };
3106
+ /**
3107
+ * Statistics time period
3108
+ */
3109
+ type period = '7d' | '30d' | '90d';
3110
+ type UpdateTransactionRuleDto = {
3111
+ name?: string;
3112
+ description?: string;
3113
+ narrationKeywords?: Array<unknown[]>;
3114
+ payeeKeywords?: Array<unknown[]>;
3115
+ categoryKeywords?: Array<unknown[]>;
3116
+ /**
3117
+ * Payment method keywords (e.g., HuaBei, YuEBao)
3118
+ */
3119
+ methodKeywords?: Array<unknown[]>;
3120
+ /**
3121
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
3122
+ */
3123
+ categoryAccount?: string;
3124
+ matchLogic?: 'OR' | 'AND';
3125
+ /**
3126
+ * Minimum transaction amount (inclusive)
3127
+ */
3128
+ amountMin?: number;
3129
+ /**
3130
+ * Maximum transaction amount (inclusive)
3131
+ */
3132
+ amountMax?: number;
3133
+ priority?: number;
3134
+ /**
3135
+ * Enable or disable the rule
3136
+ */
3137
+ enabled?: boolean;
3138
+ additionalTags?: Array<unknown[]>;
3139
+ additionalMetadata?: {
3140
+ [key: string]: unknown;
3141
+ };
3142
+ };
3143
+ type TestRuleDto = {
3144
+ narration: string;
3145
+ payee?: string;
3146
+ categoryAccount?: string;
3147
+ amount?: number;
3148
+ currency?: string;
3149
+ };
3150
+ type TestRuleResponseDto = {
3151
+ /**
3152
+ * Rule ID that was tested
3153
+ */
3154
+ ruleId: string;
3155
+ /**
3156
+ * Whether the rule matched the test data
3157
+ */
3158
+ matches: boolean;
3159
+ /**
3160
+ * Match confidence score (0-1)
3161
+ */
3162
+ confidence: number;
3163
+ /**
3164
+ * Details of which fields matched
3165
+ */
3166
+ matchDetails: {
3167
+ [key: string]: unknown;
3168
+ };
3169
+ };
3170
+ type CategoryCatalogEntryDto = {
3171
+ /**
3172
+ * Category slug (single source-of-truth)
3173
+ */
3174
+ slug: string;
3175
+ /**
3176
+ * Display scenario group (maps to frontend picker _scenario)
3177
+ */
3178
+ scenario: 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
3179
+ /**
3180
+ * Lucide icon name
3181
+ */
3182
+ icon: string;
3183
+ /**
3184
+ * Applicable regions ('*' = all, 'cn' = CN-only)
3185
+ */
3186
+ regions: Array<string>;
3187
+ };
3188
+ /**
3189
+ * Display scenario group (maps to frontend picker _scenario)
3190
+ */
3191
+ type scenario = 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
3192
+ type CategoryCatalogListResponseDto = {
3193
+ /**
3194
+ * Category entries (region-scoped, query-filtered)
3195
+ */
3196
+ items: Array<CategoryCatalogEntryDto>;
3197
+ /**
3198
+ * Total category entries for the region (before query filtering)
3199
+ */
3200
+ total: number;
3201
+ /**
3202
+ * Region code
3203
+ */
3204
+ region: string;
3205
+ };
3206
+ type CreateBeanEventDto = {
3207
+ /**
3208
+ * Life event date (ISO 8601)
3209
+ */
3210
+ date: string;
3211
+ /**
3212
+ * Life event type (e.g., "employer", "location", "marital-status") — user-defined, no enum constraint at engine layer
3213
+ */
3214
+ type: string;
3215
+ /**
3216
+ * Life event description. Empty string is a VALID value (distinct from absence).
3217
+ */
3218
+ description: string;
3219
+ /**
3220
+ * Product-side metadata (lives in BeanEvent.meta JSON, never in engine Event fields)
3221
+ */
3222
+ meta?: {
3223
+ [key: string]: unknown;
3224
+ };
3225
+ };
3226
+ type EventResponseDto = {
3227
+ /**
3228
+ * Unique identifier
3229
+ */
3230
+ id: string;
3231
+ /**
3232
+ * User ID (owner of the life event)
3233
+ */
3234
+ userId: string;
3235
+ /**
3236
+ * Life event date (ISO 8601 format)
3237
+ */
3238
+ date: string;
3239
+ /**
3240
+ * Life event type (user-defined, e.g., "employer", "location")
3241
+ */
3242
+ type: string;
3243
+ /**
3244
+ * Life event description. May be an empty string (a valid value distinct from absence).
3245
+ */
3246
+ description: string;
2869
3247
  /**
2870
3248
  * Product-side metadata (free-form JSON)
2871
3249
  */
@@ -3309,13 +3687,13 @@ type ProviderSyncConfigDto = {
3309
3687
  */
3310
3688
  defaultCurrency: string;
3311
3689
  /**
3312
- * Default expense account for the second posting
3690
+ * Default expense account for the second posting. Omit when no real default exists; the pipeline routes to Review via the Uncategorized sentinel (#618).
3313
3691
  */
3314
- defaultExpenseAccount: string;
3692
+ defaultExpenseAccount?: string;
3315
3693
  /**
3316
- * Default income account for the second posting
3694
+ * Default income account for the second posting. Omit when no real default exists; the pipeline routes to Review via the Uncategorized sentinel (#618).
3317
3695
  */
3318
- defaultIncomeAccount: string;
3696
+ defaultIncomeAccount?: string;
3319
3697
  /**
3320
3698
  * Filter pending transactions
3321
3699
  */
@@ -3412,11 +3790,85 @@ type ExternalAccountLinkListResponseDto = {
3412
3790
  };
3413
3791
  type ParserTelemetryReportDto = unknown;
3414
3792
  type UncoveredFormatMissDto = unknown;
3793
+ type ClientParsedDataDto = {
3794
+ /**
3795
+ * Transaction amount
3796
+ */
3797
+ amount?: number;
3798
+ /**
3799
+ * Currency code
3800
+ */
3801
+ currency?: string;
3802
+ /**
3803
+ * Transaction date (ISO 8601)
3804
+ */
3805
+ date?: string;
3806
+ /**
3807
+ * Payee/merchant name
3808
+ */
3809
+ payee?: string;
3810
+ /**
3811
+ * Transaction narration
3812
+ */
3813
+ narration?: string;
3814
+ /**
3815
+ * Category slug
3816
+ */
3817
+ category?: string;
3818
+ /**
3819
+ * Income type
3820
+ */
3821
+ incomeType?: string;
3822
+ /**
3823
+ * Income source
3824
+ */
3825
+ incomeSource?: string;
3826
+ /**
3827
+ * Security symbol code (e.g., 600519, AAPL)
3828
+ */
3829
+ symbol?: string;
3830
+ /**
3831
+ * Quantity of shares/units
3832
+ */
3833
+ quantity?: number;
3834
+ /**
3835
+ * Unit price per share/unit
3836
+ */
3837
+ price?: number;
3838
+ /**
3839
+ * Investment action
3840
+ */
3841
+ investmentAction?: 'buy' | 'sell';
3842
+ /**
3843
+ * Payment source: asset (default) or liability (credit card)
3844
+ */
3845
+ paymentSource?: 'asset' | 'liability';
3846
+ /**
3847
+ * Liability account hint (CreditCard/Huabei/Baitiao)
3848
+ */
3849
+ liabilityHint?: string;
3850
+ /**
3851
+ * Display-only warning from the prior response; accepted but ignored.
3852
+ */
3853
+ warning?: string;
3854
+ };
3855
+ /**
3856
+ * Investment action
3857
+ */
3858
+ type investmentAction = 'buy' | 'sell';
3859
+ /**
3860
+ * Payment source: asset (default) or liability (credit card)
3861
+ */
3862
+ type paymentSource = 'asset' | 'liability';
3415
3863
  type ProcessNlpDto = {
3416
3864
  /**
3417
- * Natural language text describing a transaction (Chinese)
3865
+ * Natural language text describing a transaction. Optional when `confirm` is true (structured confirm); otherwise required.
3866
+ */
3867
+ message?: string;
3868
+ /**
3869
+ * Structured confirm signal — bypasses NL confirm-word matching when true. Send parsedData field edits alongside. The NL word-list path is the fallback.
3418
3870
  */
3419
- message: string;
3871
+ confirm?: boolean;
3420
3872
  /**
3421
3873
  * Session ID for multi-turn conversation (auto-generated if not provided)
3422
3874
  */
@@ -3424,9 +3876,15 @@ type ProcessNlpDto = {
3424
3876
  /**
3425
3877
  * Parsed data from previous NLP response for session recovery. Send back the parsedData received in confirm_payee/confirm responses.
3426
3878
  */
3427
- parsedData?: {
3428
- [key: string]: unknown;
3429
- };
3879
+ parsedData?: ClientParsedDataDto;
3880
+ /**
3881
+ * confirm_rule echo-back: rule id selected from the prior confirm_rule response (matchedRule.id or alternatives[i].ruleId). Applied directly when the session is confirming_rule — no NL re-parse.
3882
+ */
3883
+ selectedRuleId?: string;
3884
+ /**
3885
+ * confirm_account echo-back: account path selected from the prior confirm_account response (suggestedAccount, similarAccounts[i], or a typed path). Applied directly when the session is confirming_account — no NL re-parse.
3886
+ */
3887
+ selectedAccount?: string;
3430
3888
  };
3431
3889
  type NlpTransactionInfoDto = {
3432
3890
  /**
@@ -3520,14 +3978,6 @@ type NlpParsedDataDto = {
3520
3978
  */
3521
3979
  warning?: string;
3522
3980
  };
3523
- /**
3524
- * Investment action
3525
- */
3526
- type investmentAction = 'buy' | 'sell';
3527
- /**
3528
- * Payment source: asset (default) or liability (credit card)
3529
- */
3530
- type paymentSource = 'asset' | 'liability';
3531
3981
  type NlpSourceTransactionDto = {
3532
3982
  /**
3533
3983
  * Transaction date (ISO format)
@@ -3660,9 +4110,9 @@ type NlpAccountConfirmationDataDto = {
3660
4110
  */
3661
4111
  invalidAccount: string;
3662
4112
  /**
3663
- * Suggested replacement account
4113
+ * Suggested replacement account (omitted when no clear candidate)
3664
4114
  */
3665
- suggestedAccount: string;
4115
+ suggestedAccount?: string;
3666
4116
  /**
3667
4117
  * Similar accounts for user selection
3668
4118
  */
@@ -3784,7 +4234,7 @@ type NlpSuggestedAccountDto = {
3784
4234
  */
3785
4235
  account: string;
3786
4236
  /**
3787
- * Confidence score for this suggestion (0-1)
4237
+ * Confidence score for this suggestion (0-1). Present = predicted (confirm/confirm_rule/confirm_account); omitted = actual persisted account (created). (#586)
3788
4238
  */
3789
4239
  confidence?: number;
3790
4240
  };
@@ -3800,21 +4250,21 @@ type NlpSuggestedAccountsDto = {
3800
4250
  };
3801
4251
  type NlpDefaultAccountsDto = {
3802
4252
  /**
3803
- * Default asset account
4253
+ * Default OPEN asset account (MRU when multiple), or null when none/ambiguous
3804
4254
  */
3805
- asset: string;
4255
+ asset: string | null;
3806
4256
  /**
3807
- * Default expense account
4257
+ * Default OPEN expense account (MRU when multiple), or null when none/ambiguous
3808
4258
  */
3809
- expense: string;
4259
+ expense: string | null;
3810
4260
  /**
3811
- * Default income account
4261
+ * Default OPEN income account (MRU when multiple), or null when none/ambiguous
3812
4262
  */
3813
- income: string;
4263
+ income: string | null;
3814
4264
  /**
3815
- * Default liability account
4265
+ * Default OPEN liability account (MRU when multiple), or null when none/ambiguous
3816
4266
  */
3817
- liability: string;
4267
+ liability: string | null;
3818
4268
  };
3819
4269
  type NlpResponseDto = {
3820
4270
  /**
@@ -3824,7 +4274,7 @@ type NlpResponseDto = {
3824
4274
  /**
3825
4275
  * Action taken or requested
3826
4276
  */
3827
- action: 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel';
4277
+ action: 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel' | 'aborted';
3828
4278
  /**
3829
4279
  * Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
3830
4280
  */
@@ -3832,7 +4282,7 @@ type NlpResponseDto = {
3832
4282
  /**
3833
4283
  * Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
3834
4284
  */
3835
- assetSubType?: 'transfer' | 'banking' | 'investment';
4285
+ assetSubType?: 'transfer' | 'banking' | 'investment' | 'lend' | 'lend_collect';
3836
4286
  /**
3837
4287
  * Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
3838
4288
  */
@@ -3913,11 +4363,11 @@ type NlpResponseDto = {
3913
4363
  */
3914
4364
  recurringSuggestion?: RecurringSuggestionDto;
3915
4365
  /**
3916
- * Suggested accounts for this transaction. Contains recommended source and destination accounts based on the detected intent and rules.
4366
+ * Suggested accounts for this transaction (#586). confirm/confirm_rule/confirm_account: predicted (source/destination carry confidence); created: actual persisted accounts (confidence omitted). confirm_account destination is the suggested replacement, never the invalid account.
3917
4367
  */
3918
4368
  suggestedAccounts?: NlpSuggestedAccountsDto;
3919
4369
  /**
3920
- * Default accounts for the user/region. These are fallback accounts used when no specific suggestion is available.
4370
+ * Default fallback accounts for the user/region (#586). v1 returns universal constants; per-user personalization is planned.
3921
4371
  */
3922
4372
  defaultAccounts?: NlpDefaultAccountsDto;
3923
4373
  };
@@ -3928,7 +4378,7 @@ type status4 = 'success' | 'pending' | 'error';
3928
4378
  /**
3929
4379
  * Action taken or requested
3930
4380
  */
3931
- type action2 = 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel';
4381
+ type action2 = 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel' | 'aborted';
3932
4382
  /**
3933
4383
  * Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
3934
4384
  */
@@ -3936,7 +4386,7 @@ type intent = 'expense' | 'asset' | 'income' | 'liability' | 'equity';
3936
4386
  /**
3937
4387
  * Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
3938
4388
  */
3939
- type assetSubType = 'transfer' | 'banking' | 'investment';
4389
+ type assetSubType = 'transfer' | 'banking' | 'investment' | 'lend' | 'lend_collect';
3940
4390
  /**
3941
4391
  * Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
3942
4392
  */
@@ -3967,13 +4417,21 @@ type PlatformListItemDto = {
3967
4417
  */
3968
4418
  canonical: string;
3969
4419
  /**
3970
- * Suggested path segment — canonical with first char uppercased (ACC_COMP_NAME_RE)
4420
+ * Suggested path segment — canonical PascalCased per hyphen-part, hyphens preserved (e.g. "Apple-Pay")
3971
4421
  */
3972
4422
  suggestedSegment: string;
3973
4423
  /**
3974
4424
  * Logo URL
3975
4425
  */
3976
4426
  logoUrl: string | null;
4427
+ /**
4428
+ * ISO 3166-1 alpha-2 (UPPERCASE); null = global platform
4429
+ */
4430
+ countryCode: string | null;
4431
+ /**
4432
+ * Region-aware category (institution vocab, e.g. DigitalWallet/Bank). null = no region-aware suggestion; fall back to type.
4433
+ */
4434
+ category: string | null;
3977
4435
  /**
3978
4436
  * Whether user has accounts using this platform
3979
4437
  */
@@ -3982,7 +4440,7 @@ type PlatformListItemDto = {
3982
4440
  /**
3983
4441
  * Platform type
3984
4442
  */
3985
- type type3 = 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
4443
+ type type4 = 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
3986
4444
  type PlatformMatchResultDto = {
3987
4445
  /**
3988
4446
  * Global platform ID
@@ -4001,13 +4459,21 @@ type PlatformMatchResultDto = {
4001
4459
  */
4002
4460
  type: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
4003
4461
  /**
4004
- * Suggested path segment — canonical, already in ACCOUNT_RE format
4462
+ * Suggested path segment — canonical PascalCased per hyphen-part, hyphens preserved (e.g. "Apple-Pay")
4005
4463
  */
4006
4464
  suggestedSegment: string;
4007
4465
  /**
4008
4466
  * Logo URL
4009
4467
  */
4010
4468
  logoUrl: string | null;
4469
+ /**
4470
+ * ISO 3166-1 alpha-2 (UPPERCASE); null = global platform
4471
+ */
4472
+ countryCode: string | null;
4473
+ /**
4474
+ * Region-aware category (institution vocab, e.g. DigitalWallet/Bank). null = no region-aware suggestion; fall back to type.
4475
+ */
4476
+ category: string | null;
4011
4477
  /**
4012
4478
  * How this row matched: 'exact' > 'prefix' > 'substring'
4013
4479
  */
@@ -4353,10 +4819,6 @@ type AssetClassGroupDto = {
4353
4819
  */
4354
4820
  convertedBalance?: string;
4355
4821
  };
4356
- /**
4357
- * Asset class name
4358
- */
4359
- type assetClass = 'LIQUIDITY' | 'EQUITY' | 'FIXED_INCOME' | 'PRECIOUS_METALS' | 'COMMODITY' | 'INSURANCE' | 'ALTERNATIVE_INVESTMENT' | 'PERSONAL_ASSETS' | 'LIABILITY' | 'REAL_ESTATE' | 'INDEX';
4360
4822
  type AssetClassSummaryDto = {
4361
4823
  /**
4362
4824
  * Total number of accounts
@@ -4685,234 +5147,204 @@ type HoldingPnlRowDto = {
4685
5147
  [key: string]: unknown;
4686
5148
  } | null;
4687
5149
  /**
4688
- * Historical FX rate applied to cost basis
4689
- */
4690
- costFxRate?: FxRateDto | null;
4691
- /**
4692
- * FX rate applied to market value
4693
- */
4694
- marketFxRate?: FxRateDto | null;
4695
- /**
4696
- * Share of invested assets % (Decimal string); only for invested chartTokens
4697
- */
4698
- pctOfInvestedAssets?: {
4699
- [key: string]: unknown;
4700
- } | null;
4701
- /**
4702
- * Cumulative realized P&L on sold lots (asOf-date cutoff); null when the method has no applicable sells, a sell lacks a price, or any required FX rate is missing (never-mix). When a sell spans multiple currencies (cross-currency sale), amount and currency reflect the base currency; baseCcyEquivalent is always the authoritative dual-FX figure
4703
- */
4704
- realizedPnl?: MonetaryDto | null;
4705
- };
4706
- /**
4707
- * Chart segment token (libs/common resolver)
4708
- */
4709
- type chartToken = 'equity' | 'fund' | 'bond' | 'cash' | 'other';
4710
- type HoldingPnlWarningDto = {
4711
- /**
4712
- * Warning type
4713
- */
4714
- type: 'MISSING_COST_FX_RATE' | 'MISSING_MARKET_FX_RATE' | 'MISSING_SALE_PRICE' | 'MISSING_REALIZED_FX_RATE' | 'OVERSOLD_LOTS' | 'NO_PRICE' | 'MIXED_COST_CURRENCY';
4715
- symbol?: {
4716
- [key: string]: unknown;
4717
- } | null;
4718
- accountId?: {
4719
- [key: string]: unknown;
4720
- } | null;
4721
- currency?: {
4722
- [key: string]: unknown;
4723
- } | null;
4724
- };
4725
- /**
4726
- * Warning type
4727
- */
4728
- type type4 = 'MISSING_COST_FX_RATE' | 'MISSING_MARKET_FX_RATE' | 'MISSING_SALE_PRICE' | 'MISSING_REALIZED_FX_RATE' | 'OVERSOLD_LOTS' | 'NO_PRICE' | 'MIXED_COST_CURRENCY';
4729
- type HoldingPnlResponseDto = {
4730
- asOfDate: string;
4731
- baseCurrency: string;
4732
- /**
4733
- * Realized-P&L lot-matching method (FIFO or average). Unrealized cost basis remains average regardless of this value (#473).
4734
- */
4735
- method: 'average' | 'FIFO';
4736
- rows: Array<HoldingPnlRowDto>;
4737
- warnings: Array<HoldingPnlWarningDto>;
4738
- };
4739
- /**
4740
- * Realized-P&L lot-matching method (FIFO or average). Unrealized cost basis remains average regardless of this value (#473).
4741
- */
4742
- type method = 'average' | 'FIFO';
4743
- type CurrencyBalanceDto = {
4744
- /**
4745
- * ISO 4217 currency code
4746
- */
4747
- currency: string;
4748
- /**
4749
- * Balance amount
4750
- */
4751
- balance: string;
4752
- };
4753
- type TimeSeriesPointDto = {
4754
- /**
4755
- * Date in YYYY-MM-DD format
4756
- */
4757
- date: string;
4758
- /**
4759
- * Value at this date (in base currency)
4760
- */
4761
- value: string;
4762
- /**
4763
- * Change from previous point
4764
- */
4765
- change?: {
4766
- [key: string]: unknown;
4767
- };
4768
- /**
4769
- * Total assets at this date (in base currency)
4770
- */
4771
- assets?: string;
4772
- /**
4773
- * Total liabilities at this date (in base currency)
4774
- */
4775
- liabilities?: string;
4776
- /**
4777
- * Multi-currency breakdown for this point
4778
- */
4779
- byCurrency?: Array<CurrencyBalanceDto>;
4780
- };
4781
- type TrendSummaryDto = {
4782
- /**
4783
- * Value at start of period
4784
- */
4785
- startValue: string;
4786
- /**
4787
- * Value at end of period
4788
- */
4789
- endValue: string;
4790
- /**
4791
- * Total change over period
5150
+ * Historical FX rate applied to cost basis
4792
5151
  */
4793
- totalChange: string;
5152
+ costFxRate?: FxRateDto | null;
4794
5153
  /**
4795
- * Total change percentage
5154
+ * FX rate applied to market value
4796
5155
  */
4797
- totalChangePercentage: string;
4798
- };
4799
- type MultiCurrencyPointDto = {
5156
+ marketFxRate?: FxRateDto | null;
4800
5157
  /**
4801
- * Date in YYYY-MM-DD format
5158
+ * Share of invested assets % (Decimal string); only for invested chartTokens
4802
5159
  */
4803
- date: string;
5160
+ pctOfInvestedAssets?: {
5161
+ [key: string]: unknown;
5162
+ } | null;
4804
5163
  /**
4805
- * Balances by currency
5164
+ * Cumulative realized P&L on sold lots (asOf-date cutoff); null when the method has no applicable sells, a sell lacks a price, or any required FX rate is missing (never-mix). When a sell spans multiple currencies (cross-currency sale), amount and currency reflect the base currency; baseCcyEquivalent is always the authoritative dual-FX figure
4806
5165
  */
4807
- byCurrency: Array<CurrencyBalanceDto>;
5166
+ realizedPnl?: MonetaryDto | null;
4808
5167
  };
4809
- type PortfolioTrendsResponseDto = {
5168
+ /**
5169
+ * Chart segment token (libs/common resolver)
5170
+ */
5171
+ type chartToken = 'equity' | 'fund' | 'bond' | 'cash' | 'other';
5172
+ type HoldingPnlWarningDto = {
4810
5173
  /**
4811
- * Time series data points
5174
+ * Warning type
4812
5175
  */
4813
- series: Array<TimeSeriesPointDto>;
5176
+ type: 'MISSING_COST_FX_RATE' | 'MISSING_MARKET_FX_RATE' | 'MISSING_SALE_PRICE' | 'MISSING_REALIZED_FX_RATE' | 'OVERSOLD_LOTS' | 'NO_PRICE' | 'MIXED_COST_CURRENCY';
5177
+ symbol?: {
5178
+ [key: string]: unknown;
5179
+ } | null;
5180
+ accountId?: {
5181
+ [key: string]: unknown;
5182
+ } | null;
5183
+ currency?: {
5184
+ [key: string]: unknown;
5185
+ } | null;
5186
+ };
5187
+ /**
5188
+ * Warning type
5189
+ */
5190
+ type type5 = 'MISSING_COST_FX_RATE' | 'MISSING_MARKET_FX_RATE' | 'MISSING_SALE_PRICE' | 'MISSING_REALIZED_FX_RATE' | 'OVERSOLD_LOTS' | 'NO_PRICE' | 'MIXED_COST_CURRENCY';
5191
+ type HoldingPnlResponseDto = {
5192
+ asOfDate: string;
5193
+ baseCurrency: string;
4814
5194
  /**
4815
- * Period summary
5195
+ * Realized-P&L lot-matching method (FIFO or average). Unrealized cost basis remains average regardless of this value (#473).
4816
5196
  */
4817
- summary: TrendSummaryDto;
5197
+ method: 'average' | 'FIFO';
5198
+ rows: Array<HoldingPnlRowDto>;
5199
+ warnings: Array<HoldingPnlWarningDto>;
5200
+ };
5201
+ /**
5202
+ * Realized-P&L lot-matching method (FIFO or average). Unrealized cost basis remains average regardless of this value (#473).
5203
+ */
5204
+ type method = 'average' | 'FIFO';
5205
+ type AnonymousLoginDto = {
4818
5206
  /**
4819
- * Period requested
5207
+ * Access token for anonymous login
4820
5208
  */
4821
- period: string;
5209
+ accessToken: string;
5210
+ };
5211
+ type AnonymousLoginResponseDto = {
4822
5212
  /**
4823
- * Data granularity
5213
+ * JWT auth token
4824
5214
  */
4825
- granularity: string;
5215
+ authToken: string;
5216
+ };
5217
+ type SymbolSearchResultDto = {
5218
+ symbol: string;
5219
+ name?: {
5220
+ [key: string]: unknown;
5221
+ } | null;
5222
+ exchange?: {
5223
+ [key: string]: unknown;
5224
+ } | null;
4826
5225
  /**
4827
- * Base currency for converted values
5226
+ * OpenBB asset_type (e.g. stock, etf)
4828
5227
  */
4829
- currency: string;
5228
+ assetType?: {
5229
+ [key: string]: unknown;
5230
+ } | null;
4830
5231
  /**
4831
- * Multi-currency time series (each point has currency breakdown)
5232
+ * IGN asset class (region.types.ts ASSET_CLASSES)
4832
5233
  */
4833
- byCurrency?: Array<MultiCurrencyPointDto>;
5234
+ assetClass?: {
5235
+ [key: string]: unknown;
5236
+ } | null;
4834
5237
  /**
4835
- * Exchange rate warnings
5238
+ * IGN asset sub-class (region.types.ts ASSET_SUB_CLASSES)
4836
5239
  */
4837
- warnings?: Array<ExchangeRateWarningDto>;
4838
- };
4839
- type CashFlowPointDto = {
5240
+ assetSubClass?: {
5241
+ [key: string]: unknown;
5242
+ } | null;
4840
5243
  /**
4841
- * Month key (YYYY-MM)
5244
+ * Trading currency (extra_data or inferred from exchange)
4842
5245
  */
4843
- month: string;
5246
+ currency?: {
5247
+ [key: string]: unknown;
5248
+ } | null;
5249
+ };
5250
+ type SymbolQuoteDto = {
5251
+ symbol?: string;
5252
+ name?: {
5253
+ [key: string]: unknown;
5254
+ } | null;
5255
+ exchange?: {
5256
+ [key: string]: unknown;
5257
+ } | null;
4844
5258
  /**
4845
- * Income in base currency (absolute, converted)
5259
+ * OpenBB asset_type
4846
5260
  */
4847
- income: string;
5261
+ assetType?: {
5262
+ [key: string]: unknown;
5263
+ } | null;
4848
5264
  /**
4849
- * Expense in base currency (absolute, converted)
5265
+ * IGN asset class
4850
5266
  */
4851
- expense: string;
5267
+ assetClass?: {
5268
+ [key: string]: unknown;
5269
+ } | null;
4852
5270
  /**
4853
- * netSavings = income − expense (savings positive)
5271
+ * IGN asset sub-class
4854
5272
  */
4855
- netSavings: string;
4856
- };
4857
- type CashFlowTrendSummaryDto = {
5273
+ assetSubClass?: {
5274
+ [key: string]: unknown;
5275
+ } | null;
4858
5276
  /**
4859
- * Total income across the period
5277
+ * Trading currency (extra_data or inferred from exchange)
4860
5278
  */
4861
- totalIncome: string;
5279
+ currency?: {
5280
+ [key: string]: unknown;
5281
+ } | null;
4862
5282
  /**
4863
- * Total expense across the period
5283
+ * Latest price (Decimal string)
4864
5284
  */
4865
- totalExpense: string;
5285
+ price?: {
5286
+ [key: string]: unknown;
5287
+ } | null;
4866
5288
  /**
4867
- * income expense across the period
5289
+ * Date the price was observed (ISO yyyy-MM-dd)
4868
5290
  */
4869
- totalNetSavings: string;
5291
+ priceDate?: {
5292
+ [key: string]: unknown;
5293
+ } | null;
4870
5294
  /**
4871
- * totalNetSavings divided by the window length (N months, incl. zero-filled)
5295
+ * Change vs previous close, in percentage points (1.7 == 1.7%). openbb stores change_percent as a normalized decimal; this exposes percentage points for frontend convenience.
4872
5296
  */
4873
- averageMonthlyNetSavings: string;
4874
- };
4875
- type CashFlowTrendsResponseDto = {
5297
+ changePercent?: {
5298
+ [key: string]: unknown;
5299
+ } | null;
4876
5300
  /**
4877
- * Monthly cash-flow series (fixed N-month window, zero-filled)
5301
+ * Previous close (Decimal string)
4878
5302
  */
4879
- series: Array<CashFlowPointDto>;
5303
+ prevClose?: {
5304
+ [key: string]: unknown;
5305
+ } | null;
4880
5306
  /**
4881
- * Period totals
5307
+ * Day open (Decimal string)
4882
5308
  */
4883
- summary: CashFlowTrendSummaryDto;
5309
+ open?: {
5310
+ [key: string]: unknown;
5311
+ } | null;
4884
5312
  /**
4885
- * Period requested
5313
+ * Day high (Decimal string)
4886
5314
  */
4887
- period: string;
5315
+ high?: {
5316
+ [key: string]: unknown;
5317
+ } | null;
4888
5318
  /**
4889
- * Data granularity (v1 returns month buckets)
5319
+ * Day low (Decimal string)
4890
5320
  */
4891
- granularity: string;
5321
+ low?: {
5322
+ [key: string]: unknown;
5323
+ } | null;
4892
5324
  /**
4893
- * Base currency for converted values
5325
+ * Day volume (Decimal string)
4894
5326
  */
4895
- currency: string;
5327
+ volume?: {
5328
+ [key: string]: unknown;
5329
+ } | null;
4896
5330
  /**
4897
- * Exchange rate warnings (e.g. missing rate for a currency)
5331
+ * 52-week high (Decimal string)
4898
5332
  */
4899
- warnings?: Array<ExchangeRateWarningDto>;
4900
- };
4901
- type GenerateSnapshotBody = unknown;
4902
- type GenerateSnapshotResponse = unknown;
4903
- type BackfillSnapshotsBody = unknown;
4904
- type BackfillSnapshotsResponse = unknown;
4905
- type AnonymousLoginDto = {
5333
+ yearHigh?: {
5334
+ [key: string]: unknown;
5335
+ } | null;
4906
5336
  /**
4907
- * Access token for anonymous login
5337
+ * 52-week low (Decimal string)
4908
5338
  */
4909
- accessToken: string;
5339
+ yearLow?: {
5340
+ [key: string]: unknown;
5341
+ } | null;
4910
5342
  };
4911
5343
  type AccountControllerCreateData = {
4912
5344
  /**
4913
5345
  * Region code for tenant context
4914
5346
  */
4915
- region: 'cn' | 'us' | 'de' | 'gb';
5347
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4916
5348
  requestBody: CreateAccountDto;
4917
5349
  };
4918
5350
  type AccountControllerCreateResponse = AccountResponseDto;
@@ -4932,7 +5364,7 @@ type AccountControllerFindAllData = {
4932
5364
  /**
4933
5365
  * Region code for tenant context
4934
5366
  */
4935
- region: 'cn' | 'us' | 'de' | 'gb';
5367
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4936
5368
  /**
4937
5369
  * Search term for account path
4938
5370
  */
@@ -4955,7 +5387,7 @@ type AccountControllerFindOneData = {
4955
5387
  /**
4956
5388
  * Region code for tenant context
4957
5389
  */
4958
- region: 'cn' | 'us' | 'de' | 'gb';
5390
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4959
5391
  };
4960
5392
  type AccountControllerFindOneResponse = AccountResponseDto;
4961
5393
  type AccountControllerUpdateData = {
@@ -4966,7 +5398,7 @@ type AccountControllerUpdateData = {
4966
5398
  /**
4967
5399
  * Region code for tenant context
4968
5400
  */
4969
- region: 'cn' | 'us' | 'de' | 'gb';
5401
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4970
5402
  requestBody: UpdateAccountDto;
4971
5403
  };
4972
5404
  type AccountControllerUpdateResponse = AccountResponseDto;
@@ -4978,7 +5410,7 @@ type AccountControllerDeleteData = {
4978
5410
  /**
4979
5411
  * Region code for tenant context
4980
5412
  */
4981
- region: 'cn' | 'us' | 'de' | 'gb';
5413
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4982
5414
  };
4983
5415
  type AccountControllerDeleteResponse = void;
4984
5416
  type AccountControllerCloseData = {
@@ -4989,7 +5421,7 @@ type AccountControllerCloseData = {
4989
5421
  /**
4990
5422
  * Region code for tenant context
4991
5423
  */
4992
- region: 'cn' | 'us' | 'de' | 'gb';
5424
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
4993
5425
  requestBody: CloseAccountDto;
4994
5426
  };
4995
5427
  type AccountControllerCloseResponse = AccountResponseDto;
@@ -5001,7 +5433,7 @@ type AccountControllerReopenData = {
5001
5433
  /**
5002
5434
  * Region code for tenant context
5003
5435
  */
5004
- region: 'cn' | 'us' | 'de' | 'gb';
5436
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5005
5437
  requestBody: ReopenAccountDto;
5006
5438
  };
5007
5439
  type AccountControllerReopenResponse = AccountResponseDto;
@@ -5013,7 +5445,7 @@ type AccountControllerAddOpeningBalanceData = {
5013
5445
  /**
5014
5446
  * Region code for tenant context
5015
5447
  */
5016
- region: 'cn' | 'us' | 'de' | 'gb';
5448
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5017
5449
  requestBody: CreateOpeningBalanceDto;
5018
5450
  };
5019
5451
  type AccountControllerAddOpeningBalanceResponse = OpeningBalanceResultDto;
@@ -5021,7 +5453,7 @@ type AccountStandardsControllerGetTemplatesData = {
5021
5453
  /**
5022
5454
  * Region code (cn, us, de)
5023
5455
  */
5024
- region: 'cn' | 'us' | 'de' | 'gb';
5456
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5025
5457
  /**
5026
5458
  * Search term for path or description
5027
5459
  */
@@ -5040,21 +5472,21 @@ type AccountStandardsControllerGetTemplateMetadataData = {
5040
5472
  /**
5041
5473
  * Region code for tenant context
5042
5474
  */
5043
- region: 'cn' | 'us' | 'de' | 'gb';
5475
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5044
5476
  };
5045
5477
  type AccountStandardsControllerGetTemplateMetadataResponse = TemplateMetadataResponseDto;
5046
5478
  type AccountStandardsControllerGetRegionsData = {
5047
5479
  /**
5048
5480
  * Region code for tenant context
5049
5481
  */
5050
- region: 'cn' | 'us' | 'de' | 'gb';
5482
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5051
5483
  };
5052
5484
  type AccountStandardsControllerGetRegionsResponse = RegionsMetadataResponseDto;
5053
5485
  type TransactionControllerCreateData = {
5054
5486
  /**
5055
5487
  * Region code for tenant context
5056
5488
  */
5057
- region: 'cn' | 'us' | 'de' | 'gb';
5489
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5058
5490
  /**
5059
5491
  * Transaction data with postings
5060
5492
  */
@@ -5067,7 +5499,7 @@ type TransactionControllerListData = {
5067
5499
  */
5068
5500
  accountId?: string;
5069
5501
  /**
5070
- * Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
5502
+ * Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
5071
5503
  */
5072
5504
  category?: string;
5073
5505
  /**
@@ -5078,6 +5510,10 @@ type TransactionControllerListData = {
5078
5510
  * Filter by end date (inclusive), format: YYYY-MM-DD
5079
5511
  */
5080
5512
  dateTo?: string;
5513
+ /**
5514
+ * Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
5515
+ */
5516
+ flow?: 'income' | 'expense';
5081
5517
  /**
5082
5518
  * Number of items per page (1-100, default: 20)
5083
5519
  */
@@ -5089,7 +5525,7 @@ type TransactionControllerListData = {
5089
5525
  /**
5090
5526
  * Region code for tenant context
5091
5527
  */
5092
- region: 'cn' | 'us' | 'de' | 'gb';
5528
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5093
5529
  /**
5094
5530
  * Search in narration and payee fields (max 200 chars)
5095
5531
  */
@@ -5104,7 +5540,7 @@ type TransactionControllerCreateBatchData = {
5104
5540
  /**
5105
5541
  * Region code for tenant context
5106
5542
  */
5107
- region: 'cn' | 'us' | 'de' | 'gb';
5543
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5108
5544
  requestBody: BatchCreateTransactionDto;
5109
5545
  };
5110
5546
  type TransactionControllerCreateBatchResponse = BatchTransactionResponseDto;
@@ -5116,7 +5552,7 @@ type TransactionControllerCorrectData = {
5116
5552
  /**
5117
5553
  * Region code for tenant context
5118
5554
  */
5119
- region: 'cn' | 'us' | 'de' | 'gb';
5555
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5120
5556
  requestBody: CorrectTransactionDto;
5121
5557
  };
5122
5558
  type TransactionControllerCorrectResponse = TransactionDetailDto;
@@ -5132,7 +5568,7 @@ type TransactionControllerSuggestTagsData = {
5132
5568
  /**
5133
5569
  * Region code for tenant context
5134
5570
  */
5135
- region: 'cn' | 'us' | 'de' | 'gb';
5571
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5136
5572
  /**
5137
5573
  * usage (default) or name
5138
5574
  */
@@ -5147,7 +5583,7 @@ type TransactionControllerGetDetailData = {
5147
5583
  /**
5148
5584
  * Region code for tenant context
5149
5585
  */
5150
- region: 'cn' | 'us' | 'de' | 'gb';
5586
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5151
5587
  };
5152
5588
  type TransactionControllerGetDetailResponse = TransactionDetailDto;
5153
5589
  type TransactionControllerUpdateData = {
@@ -5158,7 +5594,7 @@ type TransactionControllerUpdateData = {
5158
5594
  /**
5159
5595
  * Region code for tenant context
5160
5596
  */
5161
- region: 'cn' | 'us' | 'de' | 'gb';
5597
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5162
5598
  /**
5163
5599
  * Fields to update (all optional)
5164
5600
  */
@@ -5173,7 +5609,7 @@ type TransactionControllerDeleteData = {
5173
5609
  /**
5174
5610
  * Region code for tenant context
5175
5611
  */
5176
- region: 'cn' | 'us' | 'de' | 'gb';
5612
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5177
5613
  };
5178
5614
  type TransactionControllerDeleteResponse = void;
5179
5615
  type BalanceControllerGetBalanceData = {
@@ -5192,14 +5628,14 @@ type BalanceControllerGetBalanceData = {
5192
5628
  /**
5193
5629
  * Region code for tenant context
5194
5630
  */
5195
- region: 'cn' | 'us' | 'de' | 'gb';
5631
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5196
5632
  };
5197
5633
  type BalanceControllerGetBalanceResponse = BalanceResponseDto;
5198
5634
  type BalanceControllerGetMultiCurrencyBalanceData = {
5199
5635
  /**
5200
5636
  * Region code for tenant context
5201
5637
  */
5202
- region: 'cn' | 'us' | 'de' | 'gb';
5638
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5203
5639
  };
5204
5640
  type BalanceControllerGetMultiCurrencyBalanceResponse = MultiCurrencyBalanceResponseDto;
5205
5641
  type ReviewControllerFindAllData = {
@@ -5218,7 +5654,7 @@ type ReviewControllerFindAllData = {
5218
5654
  /**
5219
5655
  * Region code for tenant context
5220
5656
  */
5221
- region: 'cn' | 'us' | 'de' | 'gb';
5657
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5222
5658
  /**
5223
5659
  * Sort order
5224
5660
  */
@@ -5233,7 +5669,7 @@ type ReviewControllerGetStatsData = {
5233
5669
  /**
5234
5670
  * Region code for tenant context
5235
5671
  */
5236
- region: 'cn' | 'us' | 'de' | 'gb';
5672
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5237
5673
  };
5238
5674
  type ReviewControllerGetStatsResponse = ReviewStatsDto;
5239
5675
  type ReviewControllerFindOneData = {
@@ -5244,7 +5680,7 @@ type ReviewControllerFindOneData = {
5244
5680
  /**
5245
5681
  * Region code for tenant context
5246
5682
  */
5247
- region: 'cn' | 'us' | 'de' | 'gb';
5683
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5248
5684
  };
5249
5685
  type ReviewControllerFindOneResponse = ReviewDetailDto;
5250
5686
  type ReviewControllerResolveData = {
@@ -5255,7 +5691,7 @@ type ReviewControllerResolveData = {
5255
5691
  /**
5256
5692
  * Region code for tenant context
5257
5693
  */
5258
- region: 'cn' | 'us' | 'de' | 'gb';
5694
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5259
5695
  requestBody: ResolveReviewDto;
5260
5696
  };
5261
5697
  type ReviewControllerResolveResponse = ResolveResultDto;
@@ -5267,14 +5703,14 @@ type ReviewControllerUndoData = {
5267
5703
  /**
5268
5704
  * Region code for tenant context
5269
5705
  */
5270
- region: 'cn' | 'us' | 'de' | 'gb';
5706
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5271
5707
  };
5272
5708
  type ReviewControllerUndoResponse = UndoResultDto;
5273
5709
  type ReviewControllerBatchResolveData = {
5274
5710
  /**
5275
5711
  * Region code for tenant context
5276
5712
  */
5277
- region: 'cn' | 'us' | 'de' | 'gb';
5713
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5278
5714
  /**
5279
5715
  * Batch resolution request containing review IDs and action
5280
5716
  */
@@ -5419,7 +5855,7 @@ type CommodityControllerCreateData = {
5419
5855
  /**
5420
5856
  * Region code for tenant context
5421
5857
  */
5422
- region: 'cn' | 'us' | 'de' | 'gb';
5858
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5423
5859
  requestBody: CreateCommodityDto;
5424
5860
  };
5425
5861
  type CommodityControllerCreateResponse = CommodityResponseDto;
@@ -5427,7 +5863,7 @@ type CommodityControllerFindAllData = {
5427
5863
  /**
5428
5864
  * Region code for tenant context
5429
5865
  */
5430
- region: 'cn' | 'us' | 'de' | 'gb';
5866
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5431
5867
  /**
5432
5868
  * Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
5433
5869
  */
@@ -5442,7 +5878,7 @@ type CommodityControllerFindOneData = {
5442
5878
  /**
5443
5879
  * Region code for tenant context
5444
5880
  */
5445
- region: 'cn' | 'us' | 'de' | 'gb';
5881
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5446
5882
  /**
5447
5883
  * Commodity symbol
5448
5884
  */
@@ -5453,7 +5889,7 @@ type CommodityControllerUpdateData = {
5453
5889
  /**
5454
5890
  * Region code for tenant context
5455
5891
  */
5456
- region: 'cn' | 'us' | 'de' | 'gb';
5892
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5457
5893
  requestBody: UpdateCommodityDto;
5458
5894
  /**
5459
5895
  * Commodity symbol
@@ -5465,7 +5901,7 @@ type CommodityControllerDeleteData = {
5465
5901
  /**
5466
5902
  * Region code for tenant context
5467
5903
  */
5468
- region: 'cn' | 'us' | 'de' | 'gb';
5904
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5469
5905
  /**
5470
5906
  * Commodity symbol
5471
5907
  */
@@ -5476,7 +5912,7 @@ type CommodityControllerGetOrCreateData = {
5476
5912
  /**
5477
5913
  * Region code for tenant context
5478
5914
  */
5479
- region: 'cn' | 'us' | 'de' | 'gb';
5915
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5480
5916
  /**
5481
5917
  * Commodity symbol
5482
5918
  */
@@ -5487,14 +5923,14 @@ type CommodityControllerBulkCreateData = {
5487
5923
  /**
5488
5924
  * Region code for tenant context
5489
5925
  */
5490
- region: 'cn' | 'us' | 'de' | 'gb';
5926
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5491
5927
  };
5492
5928
  type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
5493
5929
  type PriceControllerCreateData = {
5494
5930
  /**
5495
5931
  * Region code for tenant context
5496
5932
  */
5497
- region: 'cn' | 'us' | 'de' | 'gb';
5933
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5498
5934
  requestBody: CreateBeanPriceDto;
5499
5935
  };
5500
5936
  type PriceControllerCreateResponse = PriceResponseDto;
@@ -5526,7 +5962,7 @@ type PriceControllerFindAllData = {
5526
5962
  /**
5527
5963
  * Region code for tenant context
5528
5964
  */
5529
- region: 'cn' | 'us' | 'de' | 'gb';
5965
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5530
5966
  /**
5531
5967
  * Search term for currency or quoteCurrency (case-insensitive partial match)
5532
5968
  */
@@ -5541,7 +5977,7 @@ type PriceControllerFindOneData = {
5541
5977
  /**
5542
5978
  * Region code for tenant context
5543
5979
  */
5544
- region: 'cn' | 'us' | 'de' | 'gb';
5980
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5545
5981
  };
5546
5982
  type PriceControllerFindOneResponse = PriceResponseDto;
5547
5983
  type PriceControllerUpdateData = {
@@ -5552,7 +5988,7 @@ type PriceControllerUpdateData = {
5552
5988
  /**
5553
5989
  * Region code for tenant context
5554
5990
  */
5555
- region: 'cn' | 'us' | 'de' | 'gb';
5991
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5556
5992
  requestBody: UpdateBeanPriceDto;
5557
5993
  };
5558
5994
  type PriceControllerUpdateResponse = PriceResponseDto;
@@ -5564,14 +6000,14 @@ type PriceControllerDeleteData = {
5564
6000
  /**
5565
6001
  * Region code for tenant context
5566
6002
  */
5567
- region: 'cn' | 'us' | 'de' | 'gb';
6003
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5568
6004
  };
5569
6005
  type PriceControllerDeleteResponse = void;
5570
6006
  type PriceControllerBulkCreateData = {
5571
6007
  /**
5572
6008
  * Region code for tenant context
5573
6009
  */
5574
- region: 'cn' | 'us' | 'de' | 'gb';
6010
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5575
6011
  requestBody: Array<string>;
5576
6012
  };
5577
6013
  type PriceControllerBulkCreateResponse = Array<PriceResponseDto>;
@@ -5579,7 +6015,7 @@ type RecurringRuleControllerCreateData = {
5579
6015
  /**
5580
6016
  * Region code for tenant context
5581
6017
  */
5582
- region: 'cn' | 'us' | 'de' | 'gb';
6018
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5583
6019
  requestBody: CreateRecurringRuleDto;
5584
6020
  };
5585
6021
  type RecurringRuleControllerCreateResponse = RecurringRuleResponseDto;
@@ -5599,14 +6035,14 @@ type RecurringRuleControllerFindAllData = {
5599
6035
  /**
5600
6036
  * Region code for tenant context
5601
6037
  */
5602
- region: 'cn' | 'us' | 'de' | 'gb';
6038
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5603
6039
  };
5604
6040
  type RecurringRuleControllerFindAllResponse = Array<RecurringRuleResponseDto>;
5605
6041
  type RecurringRuleControllerCreateFromTransactionData = {
5606
6042
  /**
5607
6043
  * Region code for tenant context
5608
6044
  */
5609
- region: 'cn' | 'us' | 'de' | 'gb';
6045
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5610
6046
  requestBody: CreateRuleFromTransactionDto;
5611
6047
  /**
5612
6048
  * Source transaction ID
@@ -5622,7 +6058,7 @@ type RecurringRuleControllerFindOneData = {
5622
6058
  /**
5623
6059
  * Region code for tenant context
5624
6060
  */
5625
- region: 'cn' | 'us' | 'de' | 'gb';
6061
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5626
6062
  };
5627
6063
  type RecurringRuleControllerFindOneResponse = RecurringRuleResponseDto;
5628
6064
  type RecurringRuleControllerUpdateData = {
@@ -5633,7 +6069,7 @@ type RecurringRuleControllerUpdateData = {
5633
6069
  /**
5634
6070
  * Region code for tenant context
5635
6071
  */
5636
- region: 'cn' | 'us' | 'de' | 'gb';
6072
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5637
6073
  requestBody: UpdateRecurringRuleDto;
5638
6074
  };
5639
6075
  type RecurringRuleControllerUpdateResponse = RecurringRuleResponseDto;
@@ -5645,7 +6081,7 @@ type RecurringRuleControllerDeleteData = {
5645
6081
  /**
5646
6082
  * Region code for tenant context
5647
6083
  */
5648
- region: 'cn' | 'us' | 'de' | 'gb';
6084
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5649
6085
  };
5650
6086
  type RecurringRuleControllerDeleteResponse = void;
5651
6087
  type RecurringRuleControllerGetWithStatsData = {
@@ -5656,7 +6092,7 @@ type RecurringRuleControllerGetWithStatsData = {
5656
6092
  /**
5657
6093
  * Region code for tenant context
5658
6094
  */
5659
- region: 'cn' | 'us' | 'de' | 'gb';
6095
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5660
6096
  };
5661
6097
  type RecurringRuleControllerGetWithStatsResponse = RecurringRuleWithStatsResponseDto;
5662
6098
  type ExpectedTransactionControllerFindAllData = {
@@ -5667,7 +6103,7 @@ type ExpectedTransactionControllerFindAllData = {
5667
6103
  /**
5668
6104
  * Region code for tenant context
5669
6105
  */
5670
- region: 'cn' | 'us' | 'de' | 'gb';
6106
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5671
6107
  /**
5672
6108
  * Filter by recurring rule ID
5673
6109
  */
@@ -5686,93 +6122,207 @@ type ExpectedTransactionControllerFindOverdueData = {
5686
6122
  /**
5687
6123
  * Region code for tenant context
5688
6124
  */
5689
- region: 'cn' | 'us' | 'de' | 'gb';
6125
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5690
6126
  };
5691
6127
  type ExpectedTransactionControllerFindOverdueResponse = ExpectedTransactionListResponseDto;
5692
6128
  type ExpectedTransactionControllerFindOneData = {
5693
6129
  /**
5694
- * Expected transaction ID
6130
+ * Expected transaction ID
6131
+ */
6132
+ id: string;
6133
+ /**
6134
+ * Region code for tenant context
6135
+ */
6136
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6137
+ };
6138
+ type ExpectedTransactionControllerFindOneResponse = ExpectedTransactionResponseDto;
6139
+ type ExpectedTransactionControllerSkipData = {
6140
+ /**
6141
+ * Expected transaction ID
6142
+ */
6143
+ id: string;
6144
+ /**
6145
+ * Region code for tenant context
6146
+ */
6147
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6148
+ };
6149
+ type ExpectedTransactionControllerSkipResponse = ExpectedTransactionResponseDto;
6150
+ type ExpectedTransactionControllerUndoSkipData = {
6151
+ /**
6152
+ * Expected transaction ID
6153
+ */
6154
+ id: string;
6155
+ /**
6156
+ * Region code for tenant context
6157
+ */
6158
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6159
+ };
6160
+ type ExpectedTransactionControllerUndoSkipResponse = ExpectedTransactionResponseDto;
6161
+ type ExpectedTransactionControllerConfirmMatchData = {
6162
+ /**
6163
+ * Expected transaction ID
6164
+ */
6165
+ id: string;
6166
+ /**
6167
+ * Region code for tenant context
6168
+ */
6169
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6170
+ requestBody: ConfirmMatchDto;
6171
+ };
6172
+ type ExpectedTransactionControllerConfirmMatchResponse = unknown;
6173
+ type ExpectedTransactionControllerUnmatchData = {
6174
+ /**
6175
+ * Expected transaction ID
6176
+ */
6177
+ id: string;
6178
+ /**
6179
+ * Region code for tenant context
6180
+ */
6181
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6182
+ };
6183
+ type ExpectedTransactionControllerUnmatchResponse = unknown;
6184
+ type ExpectedTransactionControllerEnterNowData = {
6185
+ /**
6186
+ * Expected transaction ID
6187
+ */
6188
+ id: string;
6189
+ /**
6190
+ * Region code for tenant context
6191
+ */
6192
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6193
+ requestBody: EnterNowDto;
6194
+ };
6195
+ type ExpectedTransactionControllerEnterNowResponse = unknown;
6196
+ type ForecastControllerGetForecastData = {
6197
+ /**
6198
+ * Number of months to forecast (1-12, default 3)
6199
+ */
6200
+ months?: number;
6201
+ /**
6202
+ * Region code for tenant context
6203
+ */
6204
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6205
+ };
6206
+ type ForecastControllerGetForecastResponse = ForecastResponseDto;
6207
+ type ReportingControllerGetPortfolioTrendsData = {
6208
+ /**
6209
+ * Data granularity
6210
+ */
6211
+ granularity?: 'day' | 'week' | 'month';
6212
+ /**
6213
+ * Time period
6214
+ */
6215
+ period?: '1m' | '3m' | '6m' | '1y';
6216
+ /**
6217
+ * Region code for tenant context
6218
+ */
6219
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6220
+ };
6221
+ type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
6222
+ type ReportingControllerGetCashFlowTrendsData = {
6223
+ /**
6224
+ * Data granularity (accepted for API symmetry; v1 returns month buckets)
6225
+ */
6226
+ granularity?: 'day' | 'week' | 'month';
6227
+ /**
6228
+ * Time period
5695
6229
  */
5696
- id: string;
6230
+ period?: '1m' | '3m' | '6m' | '1y';
5697
6231
  /**
5698
6232
  * Region code for tenant context
5699
6233
  */
5700
- region: 'cn' | 'us' | 'de' | 'gb';
6234
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5701
6235
  };
5702
- type ExpectedTransactionControllerFindOneResponse = ExpectedTransactionResponseDto;
5703
- type ExpectedTransactionControllerSkipData = {
5704
- /**
5705
- * Expected transaction ID
5706
- */
5707
- id: string;
6236
+ type ReportingControllerGetCashFlowTrendsResponse = CashFlowTrendsResponseDto;
6237
+ type ReportingControllerGenerateSnapshotData = {
5708
6238
  /**
5709
6239
  * Region code for tenant context
5710
6240
  */
5711
- region: 'cn' | 'us' | 'de' | 'gb';
5712
- };
5713
- type ExpectedTransactionControllerSkipResponse = ExpectedTransactionResponseDto;
5714
- type ExpectedTransactionControllerUndoSkipData = {
6241
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5715
6242
  /**
5716
- * Expected transaction ID
6243
+ * Optional date (defaults to today)
5717
6244
  */
5718
- id: string;
6245
+ requestBody: GenerateSnapshotBody;
6246
+ };
6247
+ type ReportingControllerGenerateSnapshotResponse = GenerateSnapshotResponse;
6248
+ type ReportingControllerBackfillSnapshotsData = {
5719
6249
  /**
5720
6250
  * Region code for tenant context
5721
6251
  */
5722
- region: 'cn' | 'us' | 'de' | 'gb';
6252
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6253
+ requestBody: BackfillSnapshotsBody;
5723
6254
  };
5724
- type ExpectedTransactionControllerUndoSkipResponse = ExpectedTransactionResponseDto;
5725
- type ExpectedTransactionControllerConfirmMatchData = {
6255
+ type ReportingControllerBackfillSnapshotsResponse = BackfillSnapshotsResponse;
6256
+ type UserControllerDeleteOwnUserData = {
6257
+ requestBody: DeleteOwnUserDto;
6258
+ };
6259
+ type UserControllerDeleteOwnUserResponse = void;
6260
+ type UserControllerGetUserData = {
6261
+ acceptLanguage: string;
6262
+ };
6263
+ type UserControllerGetUserResponse = UserResponseDto;
6264
+ type UserControllerSignupUserData = {
6265
+ requestBody: SignupDto;
6266
+ };
6267
+ type UserControllerSignupUserResponse = SignupResponseDto;
6268
+ type UserControllerDeleteUserData = {
5726
6269
  /**
5727
- * Expected transaction ID
6270
+ * User ID to delete
5728
6271
  */
5729
6272
  id: string;
5730
- /**
5731
- * Region code for tenant context
5732
- */
5733
- region: 'cn' | 'us' | 'de' | 'gb';
5734
- requestBody: ConfirmMatchDto;
5735
6273
  };
5736
- type ExpectedTransactionControllerConfirmMatchResponse = unknown;
5737
- type ExpectedTransactionControllerUnmatchData = {
6274
+ type UserControllerDeleteUserResponse = void;
6275
+ type UserControllerGetUserInfoData = {
5738
6276
  /**
5739
- * Expected transaction ID
6277
+ * User ID
5740
6278
  */
5741
6279
  id: string;
6280
+ };
6281
+ type UserControllerGetUserInfoResponse = unknown;
6282
+ type UserControllerUpdateUserSettingData = {
6283
+ requestBody: UpdateUserSettingDto;
6284
+ };
6285
+ type UserControllerUpdateUserSettingResponse = unknown;
6286
+ type UserControllerGetAllUserSettingsByPageData = {
5742
6287
  /**
5743
- * Region code for tenant context
6288
+ * Page number
5744
6289
  */
5745
- region: 'cn' | 'us' | 'de' | 'gb';
5746
- };
5747
- type ExpectedTransactionControllerUnmatchResponse = unknown;
5748
- type ExpectedTransactionControllerEnterNowData = {
6290
+ pageNo: number;
5749
6291
  /**
5750
- * Expected transaction ID
6292
+ * Page size
5751
6293
  */
5752
- id: string;
6294
+ pageSize: number;
6295
+ };
6296
+ type UserControllerGetAllUserSettingsByPageResponse = unknown;
6297
+ type UserControllerGetAssetLiabilitySummaryResponse = unknown;
6298
+ type PropertyControllerGetAllResponse = unknown;
6299
+ type PropertyControllerGetByKeyData = {
5753
6300
  /**
5754
- * Region code for tenant context
6301
+ * Property key
5755
6302
  */
5756
- region: 'cn' | 'us' | 'de' | 'gb';
5757
- requestBody: EnterNowDto;
6303
+ key: string;
5758
6304
  };
5759
- type ExpectedTransactionControllerEnterNowResponse = unknown;
5760
- type ForecastControllerGetForecastData = {
6305
+ type PropertyControllerGetByKeyResponse = unknown;
6306
+ type PropertyControllerUpdateData = {
5761
6307
  /**
5762
- * Number of months to forecast (1-12, default 3)
6308
+ * Property key
5763
6309
  */
5764
- months?: number;
6310
+ key: string;
6311
+ requestBody: UpdatePropertyDto;
6312
+ };
6313
+ type PropertyControllerUpdateResponse = unknown;
6314
+ type PropertyControllerDeleteData = {
5765
6315
  /**
5766
- * Region code for tenant context
6316
+ * Property key
5767
6317
  */
5768
- region: 'cn' | 'us' | 'de' | 'gb';
6318
+ key: string;
5769
6319
  };
5770
- type ForecastControllerGetForecastResponse = ForecastResponseDto;
6320
+ type PropertyControllerDeleteResponse = void;
5771
6321
  type TransactionRuleControllerCreateData = {
5772
6322
  /**
5773
6323
  * Region code for tenant context
5774
6324
  */
5775
- region: 'cn' | 'us' | 'de' | 'gb';
6325
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5776
6326
  requestBody: CreateTransactionRuleDto;
5777
6327
  };
5778
6328
  type TransactionRuleControllerCreateResponse = TransactionRuleResponseDto;
@@ -5800,14 +6350,14 @@ type TransactionRuleControllerListData = {
5800
6350
  /**
5801
6351
  * Region code for tenant context
5802
6352
  */
5803
- region: 'cn' | 'us' | 'de' | 'gb';
6353
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5804
6354
  };
5805
6355
  type TransactionRuleControllerListResponse = TransactionRuleListResponseDto;
5806
6356
  type TransactionRuleControllerValidateData = {
5807
6357
  /**
5808
6358
  * Region code for tenant context
5809
6359
  */
5810
- region: 'cn' | 'us' | 'de' | 'gb';
6360
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5811
6361
  requestBody: ValidateRuleDto;
5812
6362
  };
5813
6363
  type TransactionRuleControllerValidateResponse = ValidateRuleResponseDto;
@@ -5815,7 +6365,7 @@ type TransactionRuleControllerBulkCreateData = {
5815
6365
  /**
5816
6366
  * Region code for tenant context
5817
6367
  */
5818
- region: 'cn' | 'us' | 'de' | 'gb';
6368
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5819
6369
  requestBody: BulkCreateRulesDto;
5820
6370
  };
5821
6371
  type TransactionRuleControllerBulkCreateResponse = BulkCreateRulesResponseDto;
@@ -5827,7 +6377,7 @@ type TransactionRuleControllerExportData = {
5827
6377
  /**
5828
6378
  * Region code for tenant context
5829
6379
  */
5830
- region: 'cn' | 'us' | 'de' | 'gb';
6380
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5831
6381
  };
5832
6382
  type TransactionRuleControllerExportResponse = ExportRulesResponseDto;
5833
6383
  type TransactionRuleControllerGetStatisticsData = {
@@ -5838,14 +6388,14 @@ type TransactionRuleControllerGetStatisticsData = {
5838
6388
  /**
5839
6389
  * Region code for tenant context
5840
6390
  */
5841
- region: 'cn' | 'us' | 'de' | 'gb';
6391
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5842
6392
  };
5843
6393
  type TransactionRuleControllerGetStatisticsResponse = RuleStatisticsResponseDto;
5844
6394
  type TransactionRuleControllerGetDetailData = {
5845
6395
  /**
5846
6396
  * Region code for tenant context
5847
6397
  */
5848
- region: 'cn' | 'us' | 'de' | 'gb';
6398
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5849
6399
  /**
5850
6400
  * Rule ID
5851
6401
  */
@@ -5856,7 +6406,7 @@ type TransactionRuleControllerUpdateData = {
5856
6406
  /**
5857
6407
  * Region code for tenant context
5858
6408
  */
5859
- region: 'cn' | 'us' | 'de' | 'gb';
6409
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5860
6410
  requestBody: UpdateTransactionRuleDto;
5861
6411
  /**
5862
6412
  * Rule ID to update
@@ -5868,7 +6418,7 @@ type TransactionRuleControllerDeleteData = {
5868
6418
  /**
5869
6419
  * Region code for tenant context
5870
6420
  */
5871
- region: 'cn' | 'us' | 'de' | 'gb';
6421
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5872
6422
  /**
5873
6423
  * Rule ID to delete
5874
6424
  */
@@ -5879,7 +6429,7 @@ type TransactionRuleControllerTestData = {
5879
6429
  /**
5880
6430
  * Region code for tenant context
5881
6431
  */
5882
- region: 'cn' | 'us' | 'de' | 'gb';
6432
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5883
6433
  requestBody: TestRuleDto;
5884
6434
  /**
5885
6435
  * Rule ID to test
@@ -5887,76 +6437,26 @@ type TransactionRuleControllerTestData = {
5887
6437
  ruleId: string;
5888
6438
  };
5889
6439
  type TransactionRuleControllerTestResponse = TestRuleResponseDto;
5890
- type UserControllerDeleteOwnUserData = {
5891
- requestBody: DeleteOwnUserDto;
5892
- };
5893
- type UserControllerDeleteOwnUserResponse = void;
5894
- type UserControllerGetUserData = {
5895
- acceptLanguage: string;
5896
- };
5897
- type UserControllerGetUserResponse = unknown;
5898
- type UserControllerSignupUserData = {
5899
- requestBody: SignupDto;
5900
- };
5901
- type UserControllerSignupUserResponse = unknown;
5902
- type UserControllerDeleteUserData = {
5903
- /**
5904
- * User ID to delete
5905
- */
5906
- id: string;
5907
- };
5908
- type UserControllerDeleteUserResponse = void;
5909
- type UserControllerGetUserInfoData = {
5910
- /**
5911
- * User ID
5912
- */
5913
- id: string;
5914
- };
5915
- type UserControllerGetUserInfoResponse = unknown;
5916
- type UserControllerUpdateUserSettingData = {
5917
- requestBody: UpdateUserSettingDto;
5918
- };
5919
- type UserControllerUpdateUserSettingResponse = unknown;
5920
- type UserControllerGetAllUserSettingsByPageData = {
5921
- /**
5922
- * Page number
5923
- */
5924
- pageNo: number;
5925
- /**
5926
- * Page size
5927
- */
5928
- pageSize: number;
5929
- };
5930
- type UserControllerGetAllUserSettingsByPageResponse = unknown;
5931
- type UserControllerGetAssetLiabilitySummaryResponse = unknown;
5932
- type PropertyControllerGetAllResponse = unknown;
5933
- type PropertyControllerGetByKeyData = {
6440
+ type CategoryCatalogControllerListData = {
5934
6441
  /**
5935
- * Property key
6442
+ * Region code for tenant context
5936
6443
  */
5937
- key: string;
5938
- };
5939
- type PropertyControllerGetByKeyResponse = unknown;
5940
- type PropertyControllerUpdateData = {
6444
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5941
6445
  /**
5942
- * Property key
6446
+ * Filter by routeBearing (entity-router route() consumes it)
5943
6447
  */
5944
- key: string;
5945
- requestBody: UpdatePropertyDto;
5946
- };
5947
- type PropertyControllerUpdateResponse = unknown;
5948
- type PropertyControllerDeleteData = {
6448
+ routeBearing?: boolean;
5949
6449
  /**
5950
- * Property key
6450
+ * Filter by scenario
5951
6451
  */
5952
- key: string;
6452
+ scenario?: 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
5953
6453
  };
5954
- type PropertyControllerDeleteResponse = void;
6454
+ type CategoryCatalogControllerListResponse = CategoryCatalogListResponseDto;
5955
6455
  type EventControllerCreateData = {
5956
6456
  /**
5957
6457
  * Region code for tenant context (decorative for life events)
5958
6458
  */
5959
- region: 'cn' | 'us' | 'de' | 'gb';
6459
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5960
6460
  requestBody: CreateBeanEventDto;
5961
6461
  };
5962
6462
  type EventControllerCreateResponse = EventResponseDto;
@@ -5980,7 +6480,7 @@ type EventControllerFindAllData = {
5980
6480
  /**
5981
6481
  * Region code for tenant context (decorative for life events)
5982
6482
  */
5983
- region: 'cn' | 'us' | 'de' | 'gb';
6483
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
5984
6484
  /**
5985
6485
  * Filter life events to this date (ISO 8601 format)
5986
6486
  */
@@ -5999,7 +6499,7 @@ type EventControllerFindOneData = {
5999
6499
  /**
6000
6500
  * Region code for tenant context (decorative for life events)
6001
6501
  */
6002
- region: 'cn' | 'us' | 'de' | 'gb';
6502
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6003
6503
  };
6004
6504
  type EventControllerFindOneResponse = EventResponseDto;
6005
6505
  type EventControllerUpdateData = {
@@ -6010,7 +6510,7 @@ type EventControllerUpdateData = {
6010
6510
  /**
6011
6511
  * Region code for tenant context (decorative for life events)
6012
6512
  */
6013
- region: 'cn' | 'us' | 'de' | 'gb';
6513
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6014
6514
  requestBody: UpdateBeanEventDto;
6015
6515
  };
6016
6516
  type EventControllerUpdateResponse = EventResponseDto;
@@ -6022,7 +6522,7 @@ type EventControllerDeleteData = {
6022
6522
  /**
6023
6523
  * Region code for tenant context (decorative for life events)
6024
6524
  */
6025
- region: 'cn' | 'us' | 'de' | 'gb';
6525
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6026
6526
  };
6027
6527
  type EventControllerDeleteResponse = void;
6028
6528
  type EventControllerGetSliceData = {
@@ -6035,14 +6535,14 @@ type EventControllerGetSliceData = {
6035
6535
  /**
6036
6536
  * Region code for tenant context (decorative for life events)
6037
6537
  */
6038
- region: 'cn' | 'us' | 'de' | 'gb';
6538
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6039
6539
  };
6040
6540
  type EventControllerGetSliceResponse = unknown;
6041
6541
  type OnboardingControllerBootstrapData = {
6042
6542
  /**
6043
6543
  * Region code for tenant context
6044
6544
  */
6045
- region: 'cn' | 'us' | 'de' | 'gb';
6545
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6046
6546
  requestBody: OnboardingDto;
6047
6547
  };
6048
6548
  type OnboardingControllerBootstrapResponse = unknown;
@@ -6050,7 +6550,7 @@ type ReconciliationControllerComputeData = {
6050
6550
  /**
6051
6551
  * Region code for tenant context (decorative for reconciliation)
6052
6552
  */
6053
- region: 'cn' | 'us' | 'de' | 'gb';
6553
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6054
6554
  requestBody: ComputeReconciliationDto;
6055
6555
  };
6056
6556
  type ReconciliationControllerComputeResponse = ReconciliationComputeResultDto;
@@ -6058,7 +6558,7 @@ type ReconciliationControllerAssertData = {
6058
6558
  /**
6059
6559
  * Region code for tenant context (decorative for reconciliation)
6060
6560
  */
6061
- region: 'cn' | 'us' | 'de' | 'gb';
6561
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6062
6562
  requestBody: AssertReconciliationDto;
6063
6563
  };
6064
6564
  type ReconciliationControllerAssertResponse = ReconciliationRecordDto;
@@ -6066,7 +6566,7 @@ type ReconciliationControllerPadData = {
6066
6566
  /**
6067
6567
  * Region code for tenant context (decorative for reconciliation)
6068
6568
  */
6069
- region: 'cn' | 'us' | 'de' | 'gb';
6569
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6070
6570
  requestBody: PadReconciliationDto;
6071
6571
  };
6072
6572
  type ReconciliationControllerPadResponse = PadResultDto;
@@ -6078,7 +6578,7 @@ type ReconciliationControllerHistoryData = {
6078
6578
  /**
6079
6579
  * Region code for tenant context (decorative for reconciliation)
6080
6580
  */
6081
- region: 'cn' | 'us' | 'de' | 'gb';
6581
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6082
6582
  };
6083
6583
  type ReconciliationControllerHistoryResponse = Array<ReconciliationRecordDto>;
6084
6584
  type ExportControllerExportBeancountResponse = unknown;
@@ -6090,7 +6590,7 @@ type FileImportControllerImportFileData = {
6090
6590
  /**
6091
6591
  * Region code for tenant context
6092
6592
  */
6093
- region: 'cn' | 'us' | 'de' | 'gb';
6593
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6094
6594
  };
6095
6595
  type FileImportControllerImportFileResponse = ImportResultDto;
6096
6596
  type FileImportControllerIdentifyFileData = {
@@ -6101,7 +6601,7 @@ type FileImportControllerIdentifyFileData = {
6101
6601
  /**
6102
6602
  * Region code for tenant context
6103
6603
  */
6104
- region: 'cn' | 'us' | 'de' | 'gb';
6604
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6105
6605
  };
6106
6606
  type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
6107
6607
  type FileImportControllerImportBeancountData = {
@@ -6112,7 +6612,7 @@ type FileImportControllerImportBeancountData = {
6112
6612
  /**
6113
6613
  * Region code for tenant context
6114
6614
  */
6115
- region: 'cn' | 'us' | 'de' | 'gb';
6615
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6116
6616
  };
6117
6617
  type FileImportControllerImportBeancountResponse = {
6118
6618
  imported?: number;
@@ -6131,7 +6631,7 @@ type ImporterConfigControllerGetConfigData = {
6131
6631
  /**
6132
6632
  * Region code for tenant context
6133
6633
  */
6134
- region: 'cn' | 'us' | 'de' | 'gb';
6634
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6135
6635
  };
6136
6636
  type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
6137
6637
  type ImporterConfigControllerUpdateConfigData = {
@@ -6142,7 +6642,7 @@ type ImporterConfigControllerUpdateConfigData = {
6142
6642
  /**
6143
6643
  * Region code for tenant context
6144
6644
  */
6145
- region: 'cn' | 'us' | 'de' | 'gb';
6645
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6146
6646
  /**
6147
6647
  * Partial configuration update. Only provided fields will be updated.
6148
6648
  */
@@ -6157,7 +6657,7 @@ type ImporterConfigControllerResetConfigData = {
6157
6657
  /**
6158
6658
  * Region code for tenant context
6159
6659
  */
6160
- region: 'cn' | 'us' | 'de' | 'gb';
6660
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6161
6661
  };
6162
6662
  type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
6163
6663
  type ProviderSyncControllerSyncData = {
@@ -6168,7 +6668,7 @@ type ProviderSyncControllerSyncData = {
6168
6668
  /**
6169
6669
  * Region code for tenant context
6170
6670
  */
6171
- region: 'cn' | 'us' | 'de' | 'gb';
6671
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6172
6672
  requestBody: ProviderSyncDto;
6173
6673
  };
6174
6674
  type ProviderSyncControllerSyncResponse = ProviderSyncResponseDto;
@@ -6176,7 +6676,7 @@ type ProviderSyncControllerGetSupportedProvidersData = {
6176
6676
  /**
6177
6677
  * Region code for tenant context
6178
6678
  */
6179
- region: 'cn' | 'us' | 'de' | 'gb';
6679
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6180
6680
  };
6181
6681
  type ProviderSyncControllerGetSupportedProvidersResponse = SupportedProvidersResponseDto;
6182
6682
  type ProviderSyncControllerIsProviderSupportedData = {
@@ -6187,14 +6687,14 @@ type ProviderSyncControllerIsProviderSupportedData = {
6187
6687
  /**
6188
6688
  * Region code for tenant context
6189
6689
  */
6190
- region: 'cn' | 'us' | 'de' | 'gb';
6690
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6191
6691
  };
6192
6692
  type ProviderSyncControllerIsProviderSupportedResponse = unknown;
6193
6693
  type ExternalAccountLinkControllerCreateData = {
6194
6694
  /**
6195
6695
  * Region code for tenant context
6196
6696
  */
6197
- region: 'cn' | 'us' | 'de' | 'gb';
6697
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6198
6698
  requestBody: CreateExternalAccountLinkDto;
6199
6699
  };
6200
6700
  type ExternalAccountLinkControllerCreateResponse = ExternalAccountLinkResponseDto;
@@ -6203,7 +6703,7 @@ type ExternalAccountLinkControllerFindAllData = {
6203
6703
  /**
6204
6704
  * Region code for tenant context
6205
6705
  */
6206
- region: 'cn' | 'us' | 'de' | 'gb';
6706
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6207
6707
  };
6208
6708
  type ExternalAccountLinkControllerFindAllResponse = ExternalAccountLinkListResponseDto;
6209
6709
  type ExternalAccountLinkControllerFindOneData = {
@@ -6211,7 +6711,7 @@ type ExternalAccountLinkControllerFindOneData = {
6211
6711
  /**
6212
6712
  * Region code for tenant context
6213
6713
  */
6214
- region: 'cn' | 'us' | 'de' | 'gb';
6714
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6215
6715
  };
6216
6716
  type ExternalAccountLinkControllerFindOneResponse = ExternalAccountLinkResponseDto;
6217
6717
  type ExternalAccountLinkControllerRemoveData = {
@@ -6219,14 +6719,14 @@ type ExternalAccountLinkControllerRemoveData = {
6219
6719
  /**
6220
6720
  * Region code for tenant context
6221
6721
  */
6222
- region: 'cn' | 'us' | 'de' | 'gb';
6722
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6223
6723
  };
6224
6724
  type ExternalAccountLinkControllerRemoveResponse = void;
6225
6725
  type TelemetryControllerReportTelemetryData = {
6226
6726
  /**
6227
6727
  * Region code for tenant context
6228
6728
  */
6229
- region: 'cn' | 'us' | 'de' | 'gb';
6729
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6230
6730
  requestBody: ParserTelemetryReportDto;
6231
6731
  };
6232
6732
  type TelemetryControllerReportTelemetryResponse = unknown;
@@ -6234,7 +6734,7 @@ type TelemetryControllerReportCoverageMissData = {
6234
6734
  /**
6235
6735
  * Region code for tenant context
6236
6736
  */
6237
- region: 'cn' | 'us' | 'de' | 'gb';
6737
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6238
6738
  requestBody: UncoveredFormatMissDto;
6239
6739
  };
6240
6740
  type TelemetryControllerReportCoverageMissResponse = unknown;
@@ -6242,7 +6742,7 @@ type TelemetryControllerGetCoverageMetricsData = {
6242
6742
  /**
6243
6743
  * Region code for tenant context
6244
6744
  */
6245
- region: 'cn' | 'us' | 'de' | 'gb';
6745
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6246
6746
  /**
6247
6747
  * Top-N uncovered formats (default 10)
6248
6748
  */
@@ -6253,7 +6753,7 @@ type NlpControllerProcessNaturalLanguageData = {
6253
6753
  /**
6254
6754
  * Region code for tenant context
6255
6755
  */
6256
- region: 'cn' | 'us' | 'de' | 'gb';
6756
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6257
6757
  /**
6258
6758
  * Natural language transaction input with optional session ID
6259
6759
  */
@@ -6264,7 +6764,7 @@ type NlpControllerClearSessionData = {
6264
6764
  /**
6265
6765
  * Region code for tenant context
6266
6766
  */
6267
- region: 'cn' | 'us' | 'de' | 'gb';
6767
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6268
6768
  /**
6269
6769
  * Specific session ID to clear (defaults to user session)
6270
6770
  */
@@ -6275,7 +6775,7 @@ type NlpControllerGetSessionData = {
6275
6775
  /**
6276
6776
  * Region code for tenant context
6277
6777
  */
6278
- region: 'cn' | 'us' | 'de' | 'gb';
6778
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6279
6779
  /**
6280
6780
  * Specific session ID to get (defaults to user session)
6281
6781
  */
@@ -6287,6 +6787,12 @@ type PlatformControllerCreateData = {
6287
6787
  requestBody: CreatePlatformDto;
6288
6788
  };
6289
6789
  type PlatformControllerCreateResponse = unknown;
6790
+ type PlatformControllerGetPlatformListData = {
6791
+ /**
6792
+ * Region code (ISO 3166-1 alpha-2) that biases within-type-bucket ordering (local-region platforms first). Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
6793
+ */
6794
+ region?: string;
6795
+ };
6290
6796
  type PlatformControllerGetPlatformListResponse = Array<PlatformListItemDto>;
6291
6797
  type PlatformControllerMatchPlatformsData = {
6292
6798
  /**
@@ -6294,7 +6800,7 @@ type PlatformControllerMatchPlatformsData = {
6294
6800
  */
6295
6801
  q: string;
6296
6802
  /**
6297
- * Region code for category override lookup
6803
+ * Region code (ISO 3166-1 alpha-2) that biases within-tier ordering (local-region platforms first); also the intended categoryOverrides key. Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
6298
6804
  */
6299
6805
  region?: string;
6300
6806
  };
@@ -6322,7 +6828,7 @@ type DashboardControllerGetNetWorthData = {
6322
6828
  /**
6323
6829
  * Region code for tenant context
6324
6830
  */
6325
- region: 'cn' | 'us' | 'de' | 'gb';
6831
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6326
6832
  };
6327
6833
  type DashboardControllerGetNetWorthResponse = NetWorthResponseDto;
6328
6834
  type DashboardControllerGetAccountsData = {
@@ -6341,7 +6847,7 @@ type DashboardControllerGetAccountsData = {
6341
6847
  /**
6342
6848
  * Region code for tenant context
6343
6849
  */
6344
- region: 'cn' | 'us' | 'de' | 'gb';
6850
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6345
6851
  };
6346
6852
  type DashboardControllerGetAccountsResponse = AccountsResponseDto | AssetClassAccountsResponseDto | HoldingAssetClassCrossAccountResponseDto;
6347
6853
  type DashboardControllerGetCashFlowData = {
@@ -6352,7 +6858,7 @@ type DashboardControllerGetCashFlowData = {
6352
6858
  /**
6353
6859
  * Region code for tenant context
6354
6860
  */
6355
- region: 'cn' | 'us' | 'de' | 'gb';
6861
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6356
6862
  };
6357
6863
  type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
6358
6864
  type DashboardControllerGetExpensesData = {
@@ -6371,7 +6877,7 @@ type DashboardControllerGetExpensesData = {
6371
6877
  /**
6372
6878
  * Region code for tenant context
6373
6879
  */
6374
- region: 'cn' | 'us' | 'de' | 'gb';
6880
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6375
6881
  };
6376
6882
  type DashboardControllerGetExpensesResponse = ExpensesByCategoryResponseDto;
6377
6883
  type HoldingPnlControllerGetHoldingPnlData = {
@@ -6390,63 +6896,14 @@ type HoldingPnlControllerGetHoldingPnlData = {
6390
6896
  /**
6391
6897
  * Region code for tenant context
6392
6898
  */
6393
- region: 'cn' | 'us' | 'de' | 'gb';
6899
+ region: 'ad' | 'ae' | 'af' | 'ag' | 'al' | 'am' | 'ao' | 'au' | 'br' | 'ca' | 'cn' | 'de' | 'dz' | 'es' | 'fr' | 'gb' | 'hk' | 'in' | 'it' | 'jp' | 'kr' | 'nl' | 'sg' | 'tw' | 'us';
6394
6900
  };
6395
6901
  type HoldingPnlControllerGetHoldingPnlResponse = HoldingPnlResponseDto;
6396
- type ReportingControllerGetPortfolioTrendsData = {
6397
- /**
6398
- * Data granularity
6399
- */
6400
- granularity?: 'day' | 'week' | 'month';
6401
- /**
6402
- * Time period
6403
- */
6404
- period?: '1m' | '3m' | '6m' | '1y';
6405
- /**
6406
- * Region code for tenant context
6407
- */
6408
- region: 'cn' | 'us' | 'de' | 'gb';
6409
- };
6410
- type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
6411
- type ReportingControllerGetCashFlowTrendsData = {
6412
- /**
6413
- * Data granularity (accepted for API symmetry; v1 returns month buckets)
6414
- */
6415
- granularity?: 'day' | 'week' | 'month';
6416
- /**
6417
- * Time period
6418
- */
6419
- period?: '1m' | '3m' | '6m' | '1y';
6420
- /**
6421
- * Region code for tenant context
6422
- */
6423
- region: 'cn' | 'us' | 'de' | 'gb';
6424
- };
6425
- type ReportingControllerGetCashFlowTrendsResponse = CashFlowTrendsResponseDto;
6426
- type ReportingControllerGenerateSnapshotData = {
6427
- /**
6428
- * Region code for tenant context
6429
- */
6430
- region: 'cn' | 'us' | 'de' | 'gb';
6431
- /**
6432
- * Optional date (defaults to today)
6433
- */
6434
- requestBody: GenerateSnapshotBody;
6435
- };
6436
- type ReportingControllerGenerateSnapshotResponse = GenerateSnapshotResponse;
6437
- type ReportingControllerBackfillSnapshotsData = {
6438
- /**
6439
- * Region code for tenant context
6440
- */
6441
- region: 'cn' | 'us' | 'de' | 'gb';
6442
- requestBody: BackfillSnapshotsBody;
6443
- };
6444
- type ReportingControllerBackfillSnapshotsResponse = BackfillSnapshotsResponse;
6445
6902
  type ApiKeysControllerCreateApiKeyResponse = unknown;
6446
6903
  type AuthControllerAccessTokenLoginData = {
6447
6904
  requestBody: AnonymousLoginDto;
6448
6905
  };
6449
- type AuthControllerAccessTokenLoginResponse = unknown;
6906
+ type AuthControllerAccessTokenLoginResponse = AnonymousLoginResponseDto;
6450
6907
  type CacheControllerFlushCacheResponse = unknown;
6451
6908
  type ExchangeRateControllerGetExchangeRateData = {
6452
6909
  /**
@@ -6473,6 +6930,29 @@ type HealthControllerResetCircuitBreakerData = {
6473
6930
  type HealthControllerResetCircuitBreakerResponse = unknown;
6474
6931
  type HealthControllerGetMetricsResponse = unknown;
6475
6932
  type InfoControllerGetInfoResponse = unknown;
6933
+ type SymbolControllerSearchData = {
6934
+ /**
6935
+ * Filter by OpenBB asset_type (e.g. stock, etf)
6936
+ */
6937
+ assetType?: string;
6938
+ /**
6939
+ * Filter by exchange code (e.g. US, HK, SS, SZ)
6940
+ */
6941
+ exchange?: string;
6942
+ /**
6943
+ * Maximum number of results (clamped 1..50)
6944
+ */
6945
+ limit?: number;
6946
+ /**
6947
+ * Search term — matched against symbol and instrument name. Empty string returns [].
6948
+ */
6949
+ q: string;
6950
+ };
6951
+ type SymbolControllerSearchResponse = Array<SymbolSearchResultDto>;
6952
+ type SymbolControllerGetQuoteData = {
6953
+ symbol: string;
6954
+ };
6955
+ type SymbolControllerGetQuoteResponse = SymbolQuoteDto;
6476
6956
  type $OpenApiTs = {
6477
6957
  '/api/v1/{region}/bean/accounts': {
6478
6958
  post: {
@@ -6537,7 +7017,7 @@ type $OpenApiTs = {
6537
7017
  */
6538
7018
  404: unknown;
6539
7019
  /**
6540
- * Account has transactions and cannot be deleted
7020
+ * Account has active transactions and cannot be deleted
6541
7021
  */
6542
7022
  409: unknown;
6543
7023
  };
@@ -7536,403 +8016,486 @@ type $OpenApiTs = {
7536
8016
  req: ForecastControllerGetForecastData;
7537
8017
  res: {
7538
8018
  /**
7539
- * Forecast retrieved successfully
8019
+ * Forecast retrieved successfully
8020
+ */
8021
+ 200: ForecastResponseDto;
8022
+ };
8023
+ };
8024
+ };
8025
+ '/api/v1/{region}/reporting/portfolio/trends': {
8026
+ get: {
8027
+ req: ReportingControllerGetPortfolioTrendsData;
8028
+ res: {
8029
+ /**
8030
+ * Trends retrieved successfully
8031
+ */
8032
+ 200: PortfolioTrendsResponseDto;
8033
+ /**
8034
+ * User not authenticated
8035
+ */
8036
+ 401: unknown;
8037
+ };
8038
+ };
8039
+ };
8040
+ '/api/v1/{region}/reporting/cash-flow/trends': {
8041
+ get: {
8042
+ req: ReportingControllerGetCashFlowTrendsData;
8043
+ res: {
8044
+ /**
8045
+ * Cash-flow trends retrieved successfully
8046
+ */
8047
+ 200: CashFlowTrendsResponseDto;
8048
+ /**
8049
+ * User not authenticated
8050
+ */
8051
+ 401: unknown;
8052
+ };
8053
+ };
8054
+ };
8055
+ '/api/v1/{region}/reporting/snapshots/generate': {
8056
+ post: {
8057
+ req: ReportingControllerGenerateSnapshotData;
8058
+ res: {
8059
+ /**
8060
+ * Snapshot generated successfully
8061
+ */
8062
+ 200: GenerateSnapshotResponse;
8063
+ /**
8064
+ * Invalid date format
7540
8065
  */
7541
- 200: ForecastResponseDto;
8066
+ 400: unknown;
8067
+ /**
8068
+ * User not authenticated
8069
+ */
8070
+ 401: unknown;
7542
8071
  };
7543
8072
  };
7544
8073
  };
7545
- '/api/v1/{region}/bean/transaction-rules': {
8074
+ '/api/v1/{region}/reporting/snapshots/backfill': {
7546
8075
  post: {
7547
- req: TransactionRuleControllerCreateData;
8076
+ req: ReportingControllerBackfillSnapshotsData;
7548
8077
  res: {
7549
8078
  /**
7550
- * Rule updated successfully (upsert mode)
8079
+ * Backfill completed successfully
7551
8080
  */
7552
- 200: TransactionRuleResponseDto;
8081
+ 200: BackfillSnapshotsResponse;
7553
8082
  /**
7554
- * Validation failed
8083
+ * Invalid date format or range
7555
8084
  */
7556
- 400: ApiProblemResponseDto;
8085
+ 400: unknown;
7557
8086
  /**
7558
- * Unauthorized
8087
+ * User not authenticated
7559
8088
  */
7560
- 401: ApiProblemResponseDto;
8089
+ 401: unknown;
7561
8090
  /**
7562
- * Resource conflict - another process is updating this rule
8091
+ * Backfill already in progress for this user
7563
8092
  */
7564
- 409: ApiProblemResponseDto;
8093
+ 409: unknown;
7565
8094
  };
7566
8095
  };
7567
- get: {
7568
- req: TransactionRuleControllerListData;
8096
+ };
8097
+ '/api/v1/users': {
8098
+ delete: {
8099
+ req: UserControllerDeleteOwnUserData;
7569
8100
  res: {
7570
8101
  /**
7571
- * List of rules
8102
+ * User deleted successfully
7572
8103
  */
7573
- 200: TransactionRuleListResponseDto;
8104
+ 204: void;
7574
8105
  /**
7575
- * Unauthorized
8106
+ * Invalid access token
7576
8107
  */
7577
- 401: ApiProblemResponseDto;
8108
+ 403: unknown;
7578
8109
  };
7579
8110
  };
7580
- };
7581
- '/api/v1/{region}/bean/transaction-rules/validate': {
7582
- post: {
7583
- req: TransactionRuleControllerValidateData;
8111
+ get: {
8112
+ req: UserControllerGetUserData;
7584
8113
  res: {
7585
8114
  /**
7586
- * Validation result
7587
- */
7588
- 200: ValidateRuleResponseDto;
7589
- /**
7590
- * Validation failed
7591
- */
7592
- 400: ApiProblemResponseDto;
7593
- /**
7594
- * Unauthorized
8115
+ * User retrieved successfully
7595
8116
  */
7596
- 401: ApiProblemResponseDto;
8117
+ 200: UserResponseDto;
7597
8118
  };
7598
8119
  };
7599
- };
7600
- '/api/v1/{region}/bean/transaction-rules/bulk': {
7601
8120
  post: {
7602
- req: TransactionRuleControllerBulkCreateData;
8121
+ req: UserControllerSignupUserData;
7603
8122
  res: {
7604
8123
  /**
7605
- * Bulk create completed
8124
+ * User created successfully
7606
8125
  */
7607
- 201: BulkCreateRulesResponseDto;
8126
+ 201: SignupResponseDto;
7608
8127
  /**
7609
- * Invalid bulk create data
8128
+ * Invalid Turnstile token (when Turnstile is enabled)
7610
8129
  */
7611
- 400: ApiProblemResponseDto;
8130
+ 400: unknown;
7612
8131
  /**
7613
- * Unauthorized
8132
+ * User signup is disabled
7614
8133
  */
7615
- 401: ApiProblemResponseDto;
8134
+ 403: unknown;
7616
8135
  };
7617
8136
  };
7618
8137
  };
7619
- '/api/v1/{region}/bean/transaction-rules/export/{format}': {
7620
- get: {
7621
- req: TransactionRuleControllerExportData;
8138
+ '/api/v1/users/{id}': {
8139
+ delete: {
8140
+ req: UserControllerDeleteUserData;
7622
8141
  res: {
7623
8142
  /**
7624
- * Exported rules
7625
- */
7626
- 200: ExportRulesResponseDto;
7627
- /**
7628
- * Unsupported format
8143
+ * User deleted successfully
7629
8144
  */
7630
- 400: ApiProblemResponseDto;
8145
+ 204: void;
7631
8146
  /**
7632
- * Unauthorized
8147
+ * Cannot delete own account or insufficient permissions
7633
8148
  */
7634
- 401: ApiProblemResponseDto;
8149
+ 403: unknown;
7635
8150
  };
7636
8151
  };
7637
8152
  };
7638
- '/api/v1/{region}/bean/transaction-rules/statistics/{period}': {
8153
+ '/api/v1/users/{id}/info': {
7639
8154
  get: {
7640
- req: TransactionRuleControllerGetStatisticsData;
8155
+ req: UserControllerGetUserInfoData;
7641
8156
  res: {
7642
8157
  /**
7643
- * Rule statistics
8158
+ * User info retrieved successfully
7644
8159
  */
7645
- 200: RuleStatisticsResponseDto;
8160
+ 200: unknown;
7646
8161
  /**
7647
- * Unauthorized
8162
+ * Cannot access other user info without admin permission
7648
8163
  */
7649
- 401: ApiProblemResponseDto;
8164
+ 403: unknown;
7650
8165
  };
7651
8166
  };
7652
8167
  };
7653
- '/api/v1/{region}/bean/transaction-rules/{ruleId}': {
7654
- get: {
7655
- req: TransactionRuleControllerGetDetailData;
8168
+ '/api/v1/users/setting': {
8169
+ put: {
8170
+ req: UserControllerUpdateUserSettingData;
7656
8171
  res: {
7657
8172
  /**
7658
- * Rule details
7659
- */
7660
- 200: TransactionRuleResponseDto;
7661
- /**
7662
- * Unauthorized
8173
+ * Settings updated successfully
7663
8174
  */
7664
- 401: ApiProblemResponseDto;
8175
+ 200: unknown;
7665
8176
  /**
7666
- * Forbidden - not owner of rule
8177
+ * Insufficient permissions
7667
8178
  */
7668
- 403: ApiProblemResponseDto;
8179
+ 403: unknown;
8180
+ };
8181
+ };
8182
+ };
8183
+ '/api/v1/users/settings-by-page': {
8184
+ get: {
8185
+ req: UserControllerGetAllUserSettingsByPageData;
8186
+ res: {
7669
8187
  /**
7670
- * Rule not found
8188
+ * Settings list retrieved successfully
7671
8189
  */
7672
- 404: ApiProblemResponseDto;
8190
+ 200: unknown;
7673
8191
  };
7674
8192
  };
7675
- put: {
7676
- req: TransactionRuleControllerUpdateData;
8193
+ };
8194
+ '/api/v1/users/asset-liability-summary': {
8195
+ get: {
7677
8196
  res: {
7678
8197
  /**
7679
- * Rule updated successfully
8198
+ * Summary retrieved successfully
7680
8199
  */
7681
- 200: TransactionRuleResponseDto;
8200
+ 200: unknown;
8201
+ };
8202
+ };
8203
+ };
8204
+ '/api/v1/admin/properties': {
8205
+ get: {
8206
+ res: {
7682
8207
  /**
7683
- * Validation failed
8208
+ * Properties retrieved successfully
7684
8209
  */
7685
- 400: ApiProblemResponseDto;
8210
+ 200: unknown;
7686
8211
  /**
7687
8212
  * Unauthorized
7688
8213
  */
7689
- 401: ApiProblemResponseDto;
7690
- /**
7691
- * Forbidden - not owner of rule
7692
- */
7693
- 403: ApiProblemResponseDto;
7694
- /**
7695
- * Rule not found
7696
- */
7697
- 404: ApiProblemResponseDto;
8214
+ 401: unknown;
7698
8215
  /**
7699
- * Resource conflict - rule is being modified by another process
8216
+ * Forbidden - insufficient permissions
7700
8217
  */
7701
- 409: ApiProblemResponseDto;
8218
+ 403: unknown;
7702
8219
  };
7703
8220
  };
7704
- delete: {
7705
- req: TransactionRuleControllerDeleteData;
8221
+ };
8222
+ '/api/v1/admin/properties/{key}': {
8223
+ get: {
8224
+ req: PropertyControllerGetByKeyData;
7706
8225
  res: {
7707
8226
  /**
7708
- * Rule deleted successfully
8227
+ * Property retrieved successfully
7709
8228
  */
7710
- 204: void;
8229
+ 200: unknown;
7711
8230
  /**
7712
8231
  * Unauthorized
7713
8232
  */
7714
- 401: ApiProblemResponseDto;
7715
- /**
7716
- * Forbidden - not owner of rule
7717
- */
7718
- 403: ApiProblemResponseDto;
8233
+ 401: unknown;
7719
8234
  /**
7720
- * Rule not found
8235
+ * Forbidden - insufficient permissions
7721
8236
  */
7722
- 404: ApiProblemResponseDto;
8237
+ 403: unknown;
7723
8238
  /**
7724
- * Resource conflict - rule is being modified by another process
8239
+ * Property not found
7725
8240
  */
7726
- 409: ApiProblemResponseDto;
8241
+ 404: unknown;
7727
8242
  };
7728
8243
  };
7729
- };
7730
- '/api/v1/{region}/bean/transaction-rules/{ruleId}/test': {
7731
- post: {
7732
- req: TransactionRuleControllerTestData;
8244
+ put: {
8245
+ req: PropertyControllerUpdateData;
7733
8246
  res: {
7734
8247
  /**
7735
- * Test result
8248
+ * Property updated successfully
7736
8249
  */
7737
- 200: TestRuleResponseDto;
8250
+ 200: unknown;
7738
8251
  /**
7739
8252
  * Unauthorized
7740
8253
  */
7741
- 401: ApiProblemResponseDto;
7742
- /**
7743
- * Forbidden - not owner of rule
7744
- */
7745
- 403: ApiProblemResponseDto;
8254
+ 401: unknown;
7746
8255
  /**
7747
- * Rule not found
8256
+ * Forbidden - insufficient permissions
7748
8257
  */
7749
- 404: ApiProblemResponseDto;
8258
+ 403: unknown;
7750
8259
  };
7751
8260
  };
7752
- };
7753
- '/api/v1/users': {
7754
8261
  delete: {
7755
- req: UserControllerDeleteOwnUserData;
8262
+ req: PropertyControllerDeleteData;
7756
8263
  res: {
7757
8264
  /**
7758
- * User deleted successfully
8265
+ * Property deleted successfully
7759
8266
  */
7760
8267
  204: void;
7761
8268
  /**
7762
- * Invalid access token
8269
+ * Unauthorized
8270
+ */
8271
+ 401: unknown;
8272
+ /**
8273
+ * Forbidden - insufficient permissions
7763
8274
  */
7764
8275
  403: unknown;
7765
- };
7766
- };
7767
- get: {
7768
- req: UserControllerGetUserData;
7769
- res: {
7770
8276
  /**
7771
- * User retrieved successfully
8277
+ * Property not found
7772
8278
  */
7773
- 200: unknown;
8279
+ 404: unknown;
7774
8280
  };
7775
8281
  };
8282
+ };
8283
+ '/api/v1/{region}/bean/transaction-rules': {
7776
8284
  post: {
7777
- req: UserControllerSignupUserData;
8285
+ req: TransactionRuleControllerCreateData;
7778
8286
  res: {
7779
8287
  /**
7780
- * User created successfully
8288
+ * Rule updated successfully (upsert mode)
7781
8289
  */
7782
- 201: unknown;
8290
+ 200: TransactionRuleResponseDto;
7783
8291
  /**
7784
- * Invalid Turnstile token (when Turnstile is enabled)
8292
+ * Validation failed
7785
8293
  */
7786
- 400: unknown;
8294
+ 400: ApiProblemResponseDto;
7787
8295
  /**
7788
- * User signup is disabled
8296
+ * Unauthorized
7789
8297
  */
7790
- 403: unknown;
8298
+ 401: ApiProblemResponseDto;
8299
+ /**
8300
+ * Resource conflict - another process is updating this rule
8301
+ */
8302
+ 409: ApiProblemResponseDto;
7791
8303
  };
7792
8304
  };
7793
- };
7794
- '/api/v1/users/{id}': {
7795
- delete: {
7796
- req: UserControllerDeleteUserData;
8305
+ get: {
8306
+ req: TransactionRuleControllerListData;
7797
8307
  res: {
7798
8308
  /**
7799
- * User deleted successfully
8309
+ * List of rules
7800
8310
  */
7801
- 204: void;
8311
+ 200: TransactionRuleListResponseDto;
7802
8312
  /**
7803
- * Cannot delete own account or insufficient permissions
8313
+ * Unauthorized
7804
8314
  */
7805
- 403: unknown;
8315
+ 401: ApiProblemResponseDto;
7806
8316
  };
7807
8317
  };
7808
8318
  };
7809
- '/api/v1/users/{id}/info': {
7810
- get: {
7811
- req: UserControllerGetUserInfoData;
8319
+ '/api/v1/{region}/bean/transaction-rules/validate': {
8320
+ post: {
8321
+ req: TransactionRuleControllerValidateData;
7812
8322
  res: {
7813
8323
  /**
7814
- * User info retrieved successfully
8324
+ * Validation result
7815
8325
  */
7816
- 200: unknown;
8326
+ 200: ValidateRuleResponseDto;
7817
8327
  /**
7818
- * Cannot access other user info without admin permission
8328
+ * Validation failed
7819
8329
  */
7820
- 403: unknown;
8330
+ 400: ApiProblemResponseDto;
8331
+ /**
8332
+ * Unauthorized
8333
+ */
8334
+ 401: ApiProblemResponseDto;
7821
8335
  };
7822
8336
  };
7823
8337
  };
7824
- '/api/v1/users/setting': {
7825
- put: {
7826
- req: UserControllerUpdateUserSettingData;
8338
+ '/api/v1/{region}/bean/transaction-rules/bulk': {
8339
+ post: {
8340
+ req: TransactionRuleControllerBulkCreateData;
7827
8341
  res: {
7828
8342
  /**
7829
- * Settings updated successfully
8343
+ * Bulk create completed
7830
8344
  */
7831
- 200: unknown;
8345
+ 201: BulkCreateRulesResponseDto;
7832
8346
  /**
7833
- * Insufficient permissions
8347
+ * Invalid bulk create data
7834
8348
  */
7835
- 403: unknown;
8349
+ 400: ApiProblemResponseDto;
8350
+ /**
8351
+ * Unauthorized
8352
+ */
8353
+ 401: ApiProblemResponseDto;
7836
8354
  };
7837
8355
  };
7838
8356
  };
7839
- '/api/v1/users/settings-by-page': {
8357
+ '/api/v1/{region}/bean/transaction-rules/export/{format}': {
7840
8358
  get: {
7841
- req: UserControllerGetAllUserSettingsByPageData;
8359
+ req: TransactionRuleControllerExportData;
7842
8360
  res: {
7843
8361
  /**
7844
- * Settings list retrieved successfully
8362
+ * Exported rules
7845
8363
  */
7846
- 200: unknown;
8364
+ 200: ExportRulesResponseDto;
8365
+ /**
8366
+ * Unsupported format
8367
+ */
8368
+ 400: ApiProblemResponseDto;
8369
+ /**
8370
+ * Unauthorized
8371
+ */
8372
+ 401: ApiProblemResponseDto;
7847
8373
  };
7848
8374
  };
7849
8375
  };
7850
- '/api/v1/users/asset-liability-summary': {
8376
+ '/api/v1/{region}/bean/transaction-rules/statistics/{period}': {
7851
8377
  get: {
8378
+ req: TransactionRuleControllerGetStatisticsData;
7852
8379
  res: {
7853
8380
  /**
7854
- * Summary retrieved successfully
8381
+ * Rule statistics
7855
8382
  */
7856
- 200: unknown;
8383
+ 200: RuleStatisticsResponseDto;
8384
+ /**
8385
+ * Unauthorized
8386
+ */
8387
+ 401: ApiProblemResponseDto;
7857
8388
  };
7858
8389
  };
7859
8390
  };
7860
- '/api/v1/admin/properties': {
8391
+ '/api/v1/{region}/bean/transaction-rules/{ruleId}': {
7861
8392
  get: {
8393
+ req: TransactionRuleControllerGetDetailData;
7862
8394
  res: {
7863
8395
  /**
7864
- * Properties retrieved successfully
8396
+ * Rule details
7865
8397
  */
7866
- 200: unknown;
8398
+ 200: TransactionRuleResponseDto;
7867
8399
  /**
7868
8400
  * Unauthorized
7869
8401
  */
7870
- 401: unknown;
8402
+ 401: ApiProblemResponseDto;
7871
8403
  /**
7872
- * Forbidden - insufficient permissions
8404
+ * Forbidden - not owner of rule
7873
8405
  */
7874
- 403: unknown;
8406
+ 403: ApiProblemResponseDto;
8407
+ /**
8408
+ * Rule not found
8409
+ */
8410
+ 404: ApiProblemResponseDto;
7875
8411
  };
7876
8412
  };
7877
- };
7878
- '/api/v1/admin/properties/{key}': {
7879
- get: {
7880
- req: PropertyControllerGetByKeyData;
8413
+ put: {
8414
+ req: TransactionRuleControllerUpdateData;
7881
8415
  res: {
7882
8416
  /**
7883
- * Property retrieved successfully
8417
+ * Rule updated successfully
7884
8418
  */
7885
- 200: unknown;
8419
+ 200: TransactionRuleResponseDto;
8420
+ /**
8421
+ * Validation failed
8422
+ */
8423
+ 400: ApiProblemResponseDto;
7886
8424
  /**
7887
8425
  * Unauthorized
7888
8426
  */
7889
- 401: unknown;
8427
+ 401: ApiProblemResponseDto;
7890
8428
  /**
7891
- * Forbidden - insufficient permissions
8429
+ * Forbidden - not owner of rule
7892
8430
  */
7893
- 403: unknown;
8431
+ 403: ApiProblemResponseDto;
7894
8432
  /**
7895
- * Property not found
8433
+ * Rule not found
7896
8434
  */
7897
- 404: unknown;
8435
+ 404: ApiProblemResponseDto;
8436
+ /**
8437
+ * Resource conflict - rule is being modified by another process
8438
+ */
8439
+ 409: ApiProblemResponseDto;
7898
8440
  };
7899
8441
  };
7900
- put: {
7901
- req: PropertyControllerUpdateData;
8442
+ delete: {
8443
+ req: TransactionRuleControllerDeleteData;
7902
8444
  res: {
7903
8445
  /**
7904
- * Property updated successfully
8446
+ * Rule deleted successfully
7905
8447
  */
7906
- 200: unknown;
8448
+ 204: void;
7907
8449
  /**
7908
8450
  * Unauthorized
7909
8451
  */
7910
- 401: unknown;
8452
+ 401: ApiProblemResponseDto;
7911
8453
  /**
7912
- * Forbidden - insufficient permissions
8454
+ * Forbidden - not owner of rule
7913
8455
  */
7914
- 403: unknown;
8456
+ 403: ApiProblemResponseDto;
8457
+ /**
8458
+ * Rule not found
8459
+ */
8460
+ 404: ApiProblemResponseDto;
8461
+ /**
8462
+ * Resource conflict - rule is being modified by another process
8463
+ */
8464
+ 409: ApiProblemResponseDto;
7915
8465
  };
7916
8466
  };
7917
- delete: {
7918
- req: PropertyControllerDeleteData;
8467
+ };
8468
+ '/api/v1/{region}/bean/transaction-rules/{ruleId}/test': {
8469
+ post: {
8470
+ req: TransactionRuleControllerTestData;
7919
8471
  res: {
7920
8472
  /**
7921
- * Property deleted successfully
8473
+ * Test result
7922
8474
  */
7923
- 204: void;
8475
+ 200: TestRuleResponseDto;
7924
8476
  /**
7925
8477
  * Unauthorized
7926
8478
  */
7927
- 401: unknown;
8479
+ 401: ApiProblemResponseDto;
7928
8480
  /**
7929
- * Forbidden - insufficient permissions
8481
+ * Forbidden - not owner of rule
7930
8482
  */
7931
- 403: unknown;
8483
+ 403: ApiProblemResponseDto;
7932
8484
  /**
7933
- * Property not found
8485
+ * Rule not found
7934
8486
  */
7935
- 404: unknown;
8487
+ 404: ApiProblemResponseDto;
8488
+ };
8489
+ };
8490
+ };
8491
+ '/api/v1/{region}/bean/categories': {
8492
+ get: {
8493
+ req: CategoryCatalogControllerListData;
8494
+ res: {
8495
+ /**
8496
+ * Category catalog retrieved successfully
8497
+ */
8498
+ 200: CategoryCatalogListResponseDto;
7936
8499
  };
7937
8500
  };
7938
8501
  };
@@ -8475,6 +9038,7 @@ type $OpenApiTs = {
8475
9038
  };
8476
9039
  '/api/v1/bean/platforms/list': {
8477
9040
  get: {
9041
+ req: PlatformControllerGetPlatformListData;
8478
9042
  res: {
8479
9043
  /**
8480
9044
  * List of platforms with user binding status
@@ -8609,78 +9173,6 @@ type $OpenApiTs = {
8609
9173
  };
8610
9174
  };
8611
9175
  };
8612
- '/api/v1/{region}/reporting/portfolio/trends': {
8613
- get: {
8614
- req: ReportingControllerGetPortfolioTrendsData;
8615
- res: {
8616
- /**
8617
- * Trends retrieved successfully
8618
- */
8619
- 200: PortfolioTrendsResponseDto;
8620
- /**
8621
- * User not authenticated
8622
- */
8623
- 401: unknown;
8624
- };
8625
- };
8626
- };
8627
- '/api/v1/{region}/reporting/cash-flow/trends': {
8628
- get: {
8629
- req: ReportingControllerGetCashFlowTrendsData;
8630
- res: {
8631
- /**
8632
- * Cash-flow trends retrieved successfully
8633
- */
8634
- 200: CashFlowTrendsResponseDto;
8635
- /**
8636
- * User not authenticated
8637
- */
8638
- 401: unknown;
8639
- };
8640
- };
8641
- };
8642
- '/api/v1/{region}/reporting/snapshots/generate': {
8643
- post: {
8644
- req: ReportingControllerGenerateSnapshotData;
8645
- res: {
8646
- /**
8647
- * Snapshot generated successfully
8648
- */
8649
- 200: GenerateSnapshotResponse;
8650
- /**
8651
- * Invalid date format
8652
- */
8653
- 400: unknown;
8654
- /**
8655
- * User not authenticated
8656
- */
8657
- 401: unknown;
8658
- };
8659
- };
8660
- };
8661
- '/api/v1/{region}/reporting/snapshots/backfill': {
8662
- post: {
8663
- req: ReportingControllerBackfillSnapshotsData;
8664
- res: {
8665
- /**
8666
- * Backfill completed successfully
8667
- */
8668
- 200: BackfillSnapshotsResponse;
8669
- /**
8670
- * Invalid date format or range
8671
- */
8672
- 400: unknown;
8673
- /**
8674
- * User not authenticated
8675
- */
8676
- 401: unknown;
8677
- /**
8678
- * Backfill already in progress for this user
8679
- */
8680
- 409: unknown;
8681
- };
8682
- };
8683
- };
8684
9176
  '/api/v1/auth/api-keys': {
8685
9177
  post: {
8686
9178
  res: {
@@ -8702,7 +9194,7 @@ type $OpenApiTs = {
8702
9194
  /**
8703
9195
  * Login successful
8704
9196
  */
8705
- 200: unknown;
9197
+ 200: AnonymousLoginResponseDto;
8706
9198
  /**
8707
9199
  * Invalid access token
8708
9200
  */
@@ -8849,6 +9341,32 @@ type $OpenApiTs = {
8849
9341
  };
8850
9342
  };
8851
9343
  };
9344
+ '/api/v1/market/symbols/search': {
9345
+ get: {
9346
+ req: SymbolControllerSearchData;
9347
+ res: {
9348
+ /**
9349
+ * Ranked search results
9350
+ */
9351
+ 200: Array<SymbolSearchResultDto>;
9352
+ };
9353
+ };
9354
+ };
9355
+ '/api/v1/market/symbols/{symbol}/quote': {
9356
+ get: {
9357
+ req: SymbolControllerGetQuoteData;
9358
+ res: {
9359
+ /**
9360
+ * Symbol quote
9361
+ */
9362
+ 200: SymbolQuoteDto;
9363
+ /**
9364
+ * Symbol not found in the openbb catalog
9365
+ */
9366
+ 404: unknown;
9367
+ };
9368
+ };
9369
+ };
8852
9370
  };
8853
9371
 
8854
9372
  declare class BeanAccountsService {
@@ -8900,7 +9418,7 @@ declare class BeanAccountsService {
8900
9418
  static accountControllerUpdate(data: AccountControllerUpdateData): CancelablePromise<AccountControllerUpdateResponse>;
8901
9419
  /**
8902
9420
  * Delete account
8903
- * Deletes an account (only if no transactions)
9421
+ * Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
8904
9422
  * @param data The data for the request.
8905
9423
  * @param data.id Account UUID
8906
9424
  * @param data.region Region code for tenant context
@@ -8966,7 +9484,8 @@ declare class BeanTransactionsService {
8966
9484
  * @param data.status Filter by transaction status
8967
9485
  * @param data.search Search in narration and payee fields (max 200 chars)
8968
9486
  * @param data.accountId Filter by account ID (transactions with postings to this account)
8969
- * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
9487
+ * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an account whose derived Group segment equals this value. Must be accompanied by flow (ADR-0126).
9488
+ * @param data.flow Required when category is present (400 otherwise) and vice versa (ADR-0126). Restricts the category account set to the flow root (income → Income:, expense → Expenses:) and drives the per-leg sign normalization of row viewpointAmount and the summary. OpenAPI cannot express conditional requiredness — the pairing is enforced at runtime.
8970
9489
  * @returns TransactionListResponseDto Transaction list
8971
9490
  * @throws ApiError
8972
9491
  */
@@ -9272,4 +9791,4 @@ type OpenAPIConfig = {
9272
9791
  };
9273
9792
  declare const OpenAPI: OpenAPIConfig;
9274
9793
 
9275
- export { type $OpenApiTs, type AccountControllerAddOpeningBalanceData, type AccountControllerAddOpeningBalanceResponse, type AccountControllerCloseData, type AccountControllerCloseResponse, type AccountControllerCreateData, type AccountControllerCreateResponse, type AccountControllerDeleteData, type AccountControllerDeleteResponse, type AccountControllerFindAllData, type AccountControllerFindAllResponse, type AccountControllerFindOneData, type AccountControllerFindOneResponse, type AccountControllerReopenData, type AccountControllerReopenResponse, type AccountControllerUpdateData, type AccountControllerUpdateResponse, type AccountExchangeRateWarningDto, type AccountItemDto, type AccountItemWithAssetClassDto, type AccountListResponseDto, type AccountResponseDto, type AccountStandardListResponseDto, type AccountStandardResponseDto, type AccountStandardsControllerGetRegionsData, type AccountStandardsControllerGetRegionsResponse, type AccountStandardsControllerGetTemplateMetadataData, type AccountStandardsControllerGetTemplateMetadataResponse, type AccountStandardsControllerGetTemplatesData, type AccountStandardsControllerGetTemplatesResponse, type AccountsResponseDto, type AccountsSummaryDto, type ActualBalanceDto, type AmountDto, type AmountRangeDto, type AnonymousLoginDto, type ApiKeysControllerCreateApiKeyResponse, type ApiProblemResponseDto, type AssertReconciliationDto, type AssetClassAccountsResponseDto, type AssetClassGroupDto, type AssetClassSummaryDto, type AuthControllerAccessTokenLoginData, type AuthControllerAccessTokenLoginResponse, type BackfillSnapshotsBody, type BackfillSnapshotsResponse, type BalanceByCurrencyDto, type BalanceControllerGetBalanceData, type BalanceControllerGetBalanceResponse, type BalanceControllerGetMultiCurrencyBalanceData, type BalanceControllerGetMultiCurrencyBalanceResponse, type BalanceResponseDto, type BatchCreateTransactionDto, type BatchResolveDto, type BatchResolveResultDto, type BatchTransactionErrorDto, type BatchTransactionResponseDto, BeanAccountsService, BeanBalancesService, BeanCommoditiesService, BeanTransactionsService, type BulkCreateRulesDto, type BulkCreateRulesResponseDto, type CacheControllerFlushCacheResponse, type CashFlowByCurrencyDto, type CashFlowPointDto, type CashFlowResponseDto, type CashFlowTrendSummaryDto, type CashFlowTrendsResponseDto, type CategoryGroupDto, type CloseAccountDto, type CommodityControllerBulkCreateData, type CommodityControllerBulkCreateResponse, type CommodityControllerCreateData, type CommodityControllerCreateResponse, type CommodityControllerDeleteData, type CommodityControllerDeleteResponse, type CommodityControllerFindAllData, type CommodityControllerFindAllResponse, type CommodityControllerFindOneData, type CommodityControllerFindOneResponse, type CommodityControllerGetOrCreateData, type CommodityControllerGetOrCreateResponse, type CommodityControllerUpdateData, type CommodityControllerUpdateResponse, type CommodityListResponseDto, type CommodityResponseDto, type ComputeReconciliationDto, type ConfirmMatchDto, type ConvertedCashFlowDto, type ConvertedNetWorthDto, type CorrectTransactionDto, type CostDetailDto, type CostSpecDto, type CreateAccountDto, type CreateBeanEventDto, type CreateBeanPriceDto, type CreateCommodityDto, type CreateExternalAccountLinkDto, type CreateOpeningBalanceDto, type CreatePayeeDto, type CreatePayeeProfileDto, type CreatePlatformDto, type CreatePostingDto, type CreateRecurringRuleDto, type CreateRuleFromTransactionDto, type CreateTransactionDto, type CreateTransactionRuleDto, type CurrencyBalanceDto, type CurrentPriceDto, type DashboardControllerGetAccountsData, type DashboardControllerGetAccountsResponse, type DashboardControllerGetCashFlowData, type DashboardControllerGetCashFlowResponse, type DashboardControllerGetExpensesData, type DashboardControllerGetExpensesResponse, type DashboardControllerGetNetWorthData, type DashboardControllerGetNetWorthResponse, type DecisionOptionDto, type DeleteOwnUserDto, type EnterNowDto, type EventControllerCreateData, type EventControllerCreateResponse, type EventControllerDeleteData, type EventControllerDeleteResponse, type EventControllerFindAllData, type EventControllerFindAllResponse, type EventControllerFindOneData, type EventControllerFindOneResponse, type EventControllerGetSliceData, type EventControllerGetSliceResponse, type EventControllerUpdateData, type EventControllerUpdateResponse, type EventListResponseDto, type EventResponseDto, type ExchangeRateControllerGetExchangeRateData, type ExchangeRateControllerGetExchangeRateResponse, type ExchangeRateWarningDto, type ExpectedTransactionControllerConfirmMatchData, type ExpectedTransactionControllerConfirmMatchResponse, type ExpectedTransactionControllerEnterNowData, type ExpectedTransactionControllerEnterNowResponse, type ExpectedTransactionControllerFindAllData, type ExpectedTransactionControllerFindAllResponse, type ExpectedTransactionControllerFindOneData, type ExpectedTransactionControllerFindOneResponse, type ExpectedTransactionControllerFindOverdueData, type ExpectedTransactionControllerFindOverdueResponse, type ExpectedTransactionControllerSkipData, type ExpectedTransactionControllerSkipResponse, type ExpectedTransactionControllerUndoSkipData, type ExpectedTransactionControllerUndoSkipResponse, type ExpectedTransactionControllerUnmatchData, type ExpectedTransactionControllerUnmatchResponse, type ExpectedTransactionListResponseDto, type ExpectedTransactionResponseDto, type ExpectedTransactionRuleDto, type ExpensesByCategoryResponseDto, type ExpensesByCategorySummaryDto, type ExportControllerExportBeancountResponse, type ExportRulesResponseDto, type ExternalAccountLinkControllerCreateData, type ExternalAccountLinkControllerCreateResponse, type ExternalAccountLinkControllerFindAllData, type ExternalAccountLinkControllerFindAllResponse, type ExternalAccountLinkControllerFindOneData, type ExternalAccountLinkControllerFindOneResponse, type ExternalAccountLinkControllerRemoveData, type ExternalAccountLinkControllerRemoveResponse, type ExternalAccountLinkListResponseDto, type ExternalAccountLinkResponseDto, type FileImportControllerIdentifyFileData, type FileImportControllerIdentifyFileResponse, type FileImportControllerImportBeancountData, type FileImportControllerImportBeancountResponse, type FileImportControllerImportFileData, type FileImportControllerImportFileResponse, type FileImportDto, type ForecastControllerGetForecastData, type ForecastControllerGetForecastResponse, type ForecastItemDto, type ForecastResponseDto, type FxRateDto, type GenerateSnapshotBody, type GenerateSnapshotResponse, type HealthControllerCheckDatabaseResponse, type HealthControllerCheckOpenBbResponse, type HealthControllerCheckRedisResponse, type HealthControllerGetCircuitBreakersHealthResponse, type HealthControllerGetHealthResponse, type HealthControllerGetMetricsResponse, type HealthControllerResetCircuitBreakerData, type HealthControllerResetCircuitBreakerResponse, HealthService, type HoldingAssetClassAccountSliceDto, type HoldingAssetClassCrossAccountResponseDto, type HoldingPnlControllerGetHoldingPnlData, type HoldingPnlControllerGetHoldingPnlResponse, type HoldingPnlResponseDto, type HoldingPnlRowDto, type HoldingPnlWarningDto, type IdentifyResultDto, type ImportErrorDto, type ImportResultDto, type ImporterConfigControllerGetConfigData, type ImporterConfigControllerGetConfigResponse, type ImporterConfigControllerResetConfigData, type ImporterConfigControllerResetConfigResponse, type ImporterConfigControllerUpdateConfigData, type ImporterConfigControllerUpdateConfigResponse, type ImporterConfigDataDto, type ImporterConfigDto, type InfoControllerGetInfoResponse, type MapperDefaultsDto, type MonetaryDto, type MonthlyForecastDto, type MultiCurrencyBalanceResponseDto, type MultiCurrencyPointDto, type NetWorthByCurrencyDto, type NetWorthResponseDto, type NlpAccountConfirmationDataDto, type NlpAlternativePayeeDto, type NlpControllerClearSessionData, type NlpControllerClearSessionResponse, type NlpControllerGetSessionData, type NlpControllerGetSessionResponse, type NlpControllerProcessNaturalLanguageData, type NlpControllerProcessNaturalLanguageResponse, type NlpDefaultAccountsDto, type NlpDuplicateConfirmationDataDto, type NlpParsedDataDto, type NlpPayeeConfirmationDataDto, type NlpResponseDto, type NlpRuleConfirmationDataDto, type NlpSimilarityDto, type NlpSourceTransactionDto, type NlpSuggestedAccountDto, type NlpSuggestedAccountsDto, type NlpSuggestedPayeeDto, type NlpTargetTransactionDto, type NlpTransactionInfoDto, type OnboardingAccountDto, type OnboardingControllerBootstrapData, type OnboardingControllerBootstrapResponse, type OnboardingDto, OpenAPI, type OpenAPIConfig, type OpeningBalanceResultDto, type PadReconciliationDto, type PadResultDto, type ParserTelemetryReportDto, type PayeeAutocompleteResponseDto, type PayeeControllerAutocompleteData, type PayeeControllerAutocompleteResponse, type PayeeControllerCreateData, type PayeeControllerCreateResponse, type PayeeControllerDeleteData, type PayeeControllerDeleteResponse, type PayeeControllerFindAllData, type PayeeControllerFindAllResponse, type PayeeControllerFindOneData, type PayeeControllerFindOneResponse, type PayeeControllerGetTopPayeesData, type PayeeControllerGetTopPayeesResponse, type PayeeControllerUpdateData, type PayeeControllerUpdateResponse, type PayeeListResponseDto, type PayeeProfileAdminControllerCreateData, type PayeeProfileAdminControllerCreateResponse, type PayeeProfileAdminControllerDeleteData, type PayeeProfileAdminControllerDeleteResponse, type PayeeProfileAdminControllerFindAllData, type PayeeProfileAdminControllerFindAllResponse, type PayeeProfileAdminControllerFindOneData, type PayeeProfileAdminControllerFindOneResponse, type PayeeProfileAdminControllerUnverifyData, type PayeeProfileAdminControllerUnverifyResponse, type PayeeProfileAdminControllerUpdateData, type PayeeProfileAdminControllerUpdateResponse, type PayeeProfileAdminControllerVerifyData, type PayeeProfileAdminControllerVerifyResponse, type PayeeProfileListResponseDto, type PayeeProfileResponseDto, type PayeeResponseDto, type PayeeStatsResponseDto, type PlatformControllerCreateData, type PlatformControllerCreateResponse, type PlatformControllerDeleteData, type PlatformControllerDeleteResponse, type PlatformControllerFindAllResponse, type PlatformControllerGetPlatformListResponse, type PlatformControllerMatchPlatformsData, type PlatformControllerMatchPlatformsResponse, type PlatformControllerUpdateData, type PlatformControllerUpdateResponse, type PlatformGroupDto, type PlatformListItemDto, type PlatformMatchResponseDto, type PlatformMatchResultDto, type PortfolioTrendsResponseDto, type PostingDetailDto, type PostingResponseDto, type PriceControllerBulkCreateData, type PriceControllerBulkCreateResponse, type PriceControllerCreateData, type PriceControllerCreateResponse, type PriceControllerDeleteData, type PriceControllerDeleteResponse, type PriceControllerFindAllData, type PriceControllerFindAllResponse, type PriceControllerFindOneData, type PriceControllerFindOneResponse, type PriceControllerUpdateData, type PriceControllerUpdateResponse, type PriceListResponseDto, type PriceResponseDto, type ProcessNlpDto, type PropertyControllerDeleteData, type PropertyControllerDeleteResponse, type PropertyControllerGetAllResponse, type PropertyControllerGetByKeyData, type PropertyControllerGetByKeyResponse, type PropertyControllerUpdateData, type PropertyControllerUpdateResponse, type ProviderSyncConfigDto, type ProviderSyncControllerGetSupportedProvidersData, type ProviderSyncControllerGetSupportedProvidersResponse, type ProviderSyncControllerIsProviderSupportedData, type ProviderSyncControllerIsProviderSupportedResponse, type ProviderSyncControllerSyncData, type ProviderSyncControllerSyncResponse, type ProviderSyncDto, type ProviderSyncResponseDto, ProviderSyncService, type ReconciliationComputeResultDto, type ReconciliationControllerAssertData, type ReconciliationControllerAssertResponse, type ReconciliationControllerComputeData, type ReconciliationControllerComputeResponse, type ReconciliationControllerHistoryData, type ReconciliationControllerHistoryResponse, type ReconciliationControllerPadData, type ReconciliationControllerPadResponse, type ReconciliationRecordDto, type RecurringMatchInfoDto, type RecurringRuleControllerCreateData, type RecurringRuleControllerCreateFromTransactionData, type RecurringRuleControllerCreateFromTransactionResponse, type RecurringRuleControllerCreateResponse, type RecurringRuleControllerDeleteData, type RecurringRuleControllerDeleteResponse, type RecurringRuleControllerFindAllData, type RecurringRuleControllerFindAllResponse, type RecurringRuleControllerFindOneData, type RecurringRuleControllerFindOneResponse, type RecurringRuleControllerGetWithStatsData, type RecurringRuleControllerGetWithStatsResponse, type RecurringRuleControllerUpdateData, type RecurringRuleControllerUpdateResponse, type RecurringRuleResponseDto, type RecurringRuleWithStatsResponseDto, type RecurringSuggestionDto, type RegionConfigDto, type RegionInfoDto, type RegionsMetadataResponseDto, type ReopenAccountDto, type ReportingControllerBackfillSnapshotsData, type ReportingControllerBackfillSnapshotsResponse, type ReportingControllerGenerateSnapshotData, type ReportingControllerGenerateSnapshotResponse, type ReportingControllerGetCashFlowTrendsData, type ReportingControllerGetCashFlowTrendsResponse, type ReportingControllerGetPortfolioTrendsData, type ReportingControllerGetPortfolioTrendsResponse, type ResolveResultDto, type ResolveReviewDto, type ReviewControllerBatchResolveData, type ReviewControllerBatchResolveResponse, type ReviewControllerFindAllData, type ReviewControllerFindAllResponse, type ReviewControllerFindOneData, type ReviewControllerFindOneResponse, type ReviewControllerGetStatsData, type ReviewControllerGetStatsResponse, type ReviewControllerResolveData, type ReviewControllerResolveResponse, type ReviewControllerUndoData, type ReviewControllerUndoResponse, type ReviewDetailDto, type ReviewItemPreviewDto, type ReviewListResponseDto, type ReviewStatsDto, type ReviewSummaryDto, type RuleStatisticsResponseDto, type SignupDto, type SupportedProvidersResponseDto, type TagSuggestionDto, type TagSuggestionsResponseDto, type TelemetryControllerGetCoverageMetricsData, type TelemetryControllerGetCoverageMetricsResponse, type TelemetryControllerReportCoverageMissData, type TelemetryControllerReportCoverageMissResponse, type TelemetryControllerReportTelemetryData, type TelemetryControllerReportTelemetryResponse, type TemplateMetadataDto, type TemplateMetadataResponseDto, type TestRuleDto, type TestRuleResponseDto, type TimeSeriesPointDto, type TransactionControllerCorrectData, type TransactionControllerCorrectResponse, type TransactionControllerCreateBatchData, type TransactionControllerCreateBatchResponse, type TransactionControllerCreateData, type TransactionControllerCreateResponse, type TransactionControllerDeleteData, type TransactionControllerDeleteResponse, type TransactionControllerGetDetailData, type TransactionControllerGetDetailResponse, type TransactionControllerListData, type TransactionControllerListResponse, type TransactionControllerSuggestTagsData, type TransactionControllerSuggestTagsResponse, type TransactionControllerUpdateData, type TransactionControllerUpdateResponse, type TransactionDetailDto, type TransactionListResponseDto, type TransactionListSummaryDto, type TransactionResponseDto, type TransactionRuleControllerBulkCreateData, type TransactionRuleControllerBulkCreateResponse, type TransactionRuleControllerCreateData, type TransactionRuleControllerCreateResponse, type TransactionRuleControllerDeleteData, type TransactionRuleControllerDeleteResponse, type TransactionRuleControllerExportData, type TransactionRuleControllerExportResponse, type TransactionRuleControllerGetDetailData, type TransactionRuleControllerGetDetailResponse, type TransactionRuleControllerGetStatisticsData, type TransactionRuleControllerGetStatisticsResponse, type TransactionRuleControllerListData, type TransactionRuleControllerListResponse, type TransactionRuleControllerTestData, type TransactionRuleControllerTestResponse, type TransactionRuleControllerUpdateData, type TransactionRuleControllerUpdateResponse, type TransactionRuleControllerValidateData, type TransactionRuleControllerValidateResponse, type TransactionRuleListResponseDto, type TransactionRuleResponseDto, type TransactionSummaryDto, type TrendSummaryDto, type UncoveredFormatMissDto, type UndoResultDto, type UpdateAccountDto, type UpdateBeanEventDto, type UpdateBeanPriceDto, type UpdateCommodityDto, type UpdateConfigDataDto, type UpdateImporterConfigDto, type UpdateMapperDefaultsDto, type UpdatePayeeDto, type UpdatePayeeProfileDto, type UpdatePlatformDto, type UpdatePropertyDto, type UpdateRecurringRuleDto, type UpdateTransactionDto, type UpdateTransactionRuleDto, type UpdateUserSettingDto, type UserControllerDeleteOwnUserData, type UserControllerDeleteOwnUserResponse, type UserControllerDeleteUserData, type UserControllerDeleteUserResponse, type UserControllerGetAllUserSettingsByPageData, type UserControllerGetAllUserSettingsByPageResponse, type UserControllerGetAssetLiabilitySummaryResponse, type UserControllerGetUserData, type UserControllerGetUserInfoData, type UserControllerGetUserInfoResponse, type UserControllerGetUserResponse, type UserControllerSignupUserData, type UserControllerSignupUserResponse, type UserControllerUpdateUserSettingData, type UserControllerUpdateUserSettingResponse, type ValidateRuleDto, type ValidateRuleResponseDto, type VersionedConfigDto, type action, type action2, type assetClass, type assetSubType, type bookingMethod, type branchType, type category, type chartToken, type colorScheme, type confidenceLevel, type conflictStrategy, type dataSource, type equitySubType, type flag, type flag2, type frequency, type importerId, type intent, type investmentAction, type learningSource, type liabilitySubType, type matchLogic, type matchType, type matchType2, type method, type mode, type paymentSource, type period, type provider, type source, type source2, type source3, type status, type status2, type status3, type status4, type suggestedAction, type suggestedFrequency, type type, type type2, type type3, type type4, type value, type viewMode };
9794
+ export { type $OpenApiTs, type AccountControllerAddOpeningBalanceData, type AccountControllerAddOpeningBalanceResponse, type AccountControllerCloseData, type AccountControllerCloseResponse, type AccountControllerCreateData, type AccountControllerCreateResponse, type AccountControllerDeleteData, type AccountControllerDeleteResponse, type AccountControllerFindAllData, type AccountControllerFindAllResponse, type AccountControllerFindOneData, type AccountControllerFindOneResponse, type AccountControllerReopenData, type AccountControllerReopenResponse, type AccountControllerUpdateData, type AccountControllerUpdateResponse, type AccountExchangeRateWarningDto, type AccountItemDto, type AccountItemWithAssetClassDto, type AccountListResponseDto, type AccountResponseDto, type AccountStandardListResponseDto, type AccountStandardResponseDto, type AccountStandardsControllerGetRegionsData, type AccountStandardsControllerGetRegionsResponse, type AccountStandardsControllerGetTemplateMetadataData, type AccountStandardsControllerGetTemplateMetadataResponse, type AccountStandardsControllerGetTemplatesData, type AccountStandardsControllerGetTemplatesResponse, type AccountsResponseDto, type AccountsSummaryDto, type ActualBalanceDto, type AmountDto, type AmountRangeDto, type AnonymousLoginDto, type AnonymousLoginResponseDto, type ApiKeysControllerCreateApiKeyResponse, type ApiProblemResponseDto, type AssertReconciliationDto, type AssetClassAccountsResponseDto, type AssetClassGroupDto, type AssetClassSummaryDto, type AuthControllerAccessTokenLoginData, type AuthControllerAccessTokenLoginResponse, type BackfillSnapshotsBody, type BackfillSnapshotsResponse, type BalanceByCurrencyDto, type BalanceControllerGetBalanceData, type BalanceControllerGetBalanceResponse, type BalanceControllerGetMultiCurrencyBalanceData, type BalanceControllerGetMultiCurrencyBalanceResponse, type BalanceResponseDto, type BatchCreateTransactionDto, type BatchResolveDto, type BatchResolveResultDto, type BatchTransactionErrorDto, type BatchTransactionResponseDto, BeanAccountsService, BeanBalancesService, BeanCommoditiesService, BeanTransactionsService, type BulkCreateRulesDto, type BulkCreateRulesResponseDto, type CacheControllerFlushCacheResponse, type CashFlowByCurrencyDto, type CashFlowPointDto, type CashFlowResponseDto, type CashFlowTrendSummaryDto, type CashFlowTrendsResponseDto, type CategoryCatalogControllerListData, type CategoryCatalogControllerListResponse, type CategoryCatalogEntryDto, type CategoryCatalogListResponseDto, type CategoryGroupDto, type ClientParsedDataDto, type CloseAccountDto, type CommodityControllerBulkCreateData, type CommodityControllerBulkCreateResponse, type CommodityControllerCreateData, type CommodityControllerCreateResponse, type CommodityControllerDeleteData, type CommodityControllerDeleteResponse, type CommodityControllerFindAllData, type CommodityControllerFindAllResponse, type CommodityControllerFindOneData, type CommodityControllerFindOneResponse, type CommodityControllerGetOrCreateData, type CommodityControllerGetOrCreateResponse, type CommodityControllerUpdateData, type CommodityControllerUpdateResponse, type CommodityListResponseDto, type CommodityResponseDto, type ComputeReconciliationDto, type ConfirmMatchDto, type ConvertedCashFlowDto, type ConvertedNetWorthDto, type CorrectTransactionDto, type CostDetailDto, type CostSpecDto, type CreateAccountDto, type CreateBeanEventDto, type CreateBeanPriceDto, type CreateCommodityDto, type CreateExternalAccountLinkDto, type CreateOpeningBalanceDto, type CreatePayeeDto, type CreatePayeeProfileDto, type CreatePlatformDto, type CreatePostingDto, type CreateRecurringRuleDto, type CreateRuleFromTransactionDto, type CreateTransactionDto, type CreateTransactionRuleDto, type CurrencyBalanceDto, type CurrentPriceDto, type DashboardControllerGetAccountsData, type DashboardControllerGetAccountsResponse, type DashboardControllerGetCashFlowData, type DashboardControllerGetCashFlowResponse, type DashboardControllerGetExpensesData, type DashboardControllerGetExpensesResponse, type DashboardControllerGetNetWorthData, type DashboardControllerGetNetWorthResponse, type DecisionOptionDto, type DeleteOwnUserDto, type EnterNowDto, type EventControllerCreateData, type EventControllerCreateResponse, type EventControllerDeleteData, type EventControllerDeleteResponse, type EventControllerFindAllData, type EventControllerFindAllResponse, type EventControllerFindOneData, type EventControllerFindOneResponse, type EventControllerGetSliceData, type EventControllerGetSliceResponse, type EventControllerUpdateData, type EventControllerUpdateResponse, type EventListResponseDto, type EventResponseDto, type ExchangeRateControllerGetExchangeRateData, type ExchangeRateControllerGetExchangeRateResponse, type ExchangeRateWarningDto, type ExpectedTransactionControllerConfirmMatchData, type ExpectedTransactionControllerConfirmMatchResponse, type ExpectedTransactionControllerEnterNowData, type ExpectedTransactionControllerEnterNowResponse, type ExpectedTransactionControllerFindAllData, type ExpectedTransactionControllerFindAllResponse, type ExpectedTransactionControllerFindOneData, type ExpectedTransactionControllerFindOneResponse, type ExpectedTransactionControllerFindOverdueData, type ExpectedTransactionControllerFindOverdueResponse, type ExpectedTransactionControllerSkipData, type ExpectedTransactionControllerSkipResponse, type ExpectedTransactionControllerUndoSkipData, type ExpectedTransactionControllerUndoSkipResponse, type ExpectedTransactionControllerUnmatchData, type ExpectedTransactionControllerUnmatchResponse, type ExpectedTransactionListResponseDto, type ExpectedTransactionResponseDto, type ExpectedTransactionRuleDto, type ExpensesByCategoryResponseDto, type ExpensesByCategorySummaryDto, type ExportControllerExportBeancountResponse, type ExportRulesResponseDto, type ExternalAccountLinkControllerCreateData, type ExternalAccountLinkControllerCreateResponse, type ExternalAccountLinkControllerFindAllData, type ExternalAccountLinkControllerFindAllResponse, type ExternalAccountLinkControllerFindOneData, type ExternalAccountLinkControllerFindOneResponse, type ExternalAccountLinkControllerRemoveData, type ExternalAccountLinkControllerRemoveResponse, type ExternalAccountLinkListResponseDto, type ExternalAccountLinkResponseDto, type FileImportControllerIdentifyFileData, type FileImportControllerIdentifyFileResponse, type FileImportControllerImportBeancountData, type FileImportControllerImportBeancountResponse, type FileImportControllerImportFileData, type FileImportControllerImportFileResponse, type FileImportDto, type ForecastControllerGetForecastData, type ForecastControllerGetForecastResponse, type ForecastItemDto, type ForecastResponseDto, type FxRateDto, type GenerateSnapshotBody, type GenerateSnapshotResponse, type HealthControllerCheckDatabaseResponse, type HealthControllerCheckOpenBbResponse, type HealthControllerCheckRedisResponse, type HealthControllerGetCircuitBreakersHealthResponse, type HealthControllerGetHealthResponse, type HealthControllerGetMetricsResponse, type HealthControllerResetCircuitBreakerData, type HealthControllerResetCircuitBreakerResponse, HealthService, type HoldingAssetClassAccountSliceDto, type HoldingAssetClassCrossAccountResponseDto, type HoldingPnlControllerGetHoldingPnlData, type HoldingPnlControllerGetHoldingPnlResponse, type HoldingPnlResponseDto, type HoldingPnlRowDto, type HoldingPnlWarningDto, type IdentifyResultDto, type ImportErrorDto, type ImportResultDto, type ImporterConfigControllerGetConfigData, type ImporterConfigControllerGetConfigResponse, type ImporterConfigControllerResetConfigData, type ImporterConfigControllerResetConfigResponse, type ImporterConfigControllerUpdateConfigData, type ImporterConfigControllerUpdateConfigResponse, type ImporterConfigDataDto, type ImporterConfigDto, type InfoControllerGetInfoResponse, type MapperDefaultsDto, type MonetaryDto, type MonthlyForecastDto, type MultiCurrencyBalanceResponseDto, type MultiCurrencyPointDto, type NetWorthByCurrencyDto, type NetWorthResponseDto, type NlpAccountConfirmationDataDto, type NlpAlternativePayeeDto, type NlpControllerClearSessionData, type NlpControllerClearSessionResponse, type NlpControllerGetSessionData, type NlpControllerGetSessionResponse, type NlpControllerProcessNaturalLanguageData, type NlpControllerProcessNaturalLanguageResponse, type NlpDefaultAccountsDto, type NlpDuplicateConfirmationDataDto, type NlpParsedDataDto, type NlpPayeeConfirmationDataDto, type NlpResponseDto, type NlpRuleConfirmationDataDto, type NlpSimilarityDto, type NlpSourceTransactionDto, type NlpSuggestedAccountDto, type NlpSuggestedAccountsDto, type NlpSuggestedPayeeDto, type NlpTargetTransactionDto, type NlpTransactionInfoDto, type OnboardingAccountDto, type OnboardingControllerBootstrapData, type OnboardingControllerBootstrapResponse, type OnboardingDto, OpenAPI, type OpenAPIConfig, type OpeningBalanceResultDto, type PadReconciliationDto, type PadResultDto, type ParserTelemetryReportDto, type PayeeAutocompleteResponseDto, type PayeeControllerAutocompleteData, type PayeeControllerAutocompleteResponse, type PayeeControllerCreateData, type PayeeControllerCreateResponse, type PayeeControllerDeleteData, type PayeeControllerDeleteResponse, type PayeeControllerFindAllData, type PayeeControllerFindAllResponse, type PayeeControllerFindOneData, type PayeeControllerFindOneResponse, type PayeeControllerGetTopPayeesData, type PayeeControllerGetTopPayeesResponse, type PayeeControllerUpdateData, type PayeeControllerUpdateResponse, type PayeeListResponseDto, type PayeeProfileAdminControllerCreateData, type PayeeProfileAdminControllerCreateResponse, type PayeeProfileAdminControllerDeleteData, type PayeeProfileAdminControllerDeleteResponse, type PayeeProfileAdminControllerFindAllData, type PayeeProfileAdminControllerFindAllResponse, type PayeeProfileAdminControllerFindOneData, type PayeeProfileAdminControllerFindOneResponse, type PayeeProfileAdminControllerUnverifyData, type PayeeProfileAdminControllerUnverifyResponse, type PayeeProfileAdminControllerUpdateData, type PayeeProfileAdminControllerUpdateResponse, type PayeeProfileAdminControllerVerifyData, type PayeeProfileAdminControllerVerifyResponse, type PayeeProfileListResponseDto, type PayeeProfileResponseDto, type PayeeResponseDto, type PayeeStatsResponseDto, type PlatformControllerCreateData, type PlatformControllerCreateResponse, type PlatformControllerDeleteData, type PlatformControllerDeleteResponse, type PlatformControllerFindAllResponse, type PlatformControllerGetPlatformListData, type PlatformControllerGetPlatformListResponse, type PlatformControllerMatchPlatformsData, type PlatformControllerMatchPlatformsResponse, type PlatformControllerUpdateData, type PlatformControllerUpdateResponse, type PlatformGroupDto, type PlatformListItemDto, type PlatformMatchResponseDto, type PlatformMatchResultDto, type PortfolioTrendsResponseDto, type PostingDetailDto, type PostingResponseDto, type PriceControllerBulkCreateData, type PriceControllerBulkCreateResponse, type PriceControllerCreateData, type PriceControllerCreateResponse, type PriceControllerDeleteData, type PriceControllerDeleteResponse, type PriceControllerFindAllData, type PriceControllerFindAllResponse, type PriceControllerFindOneData, type PriceControllerFindOneResponse, type PriceControllerUpdateData, type PriceControllerUpdateResponse, type PriceListResponseDto, type PriceResponseDto, type ProcessNlpDto, type PropertyControllerDeleteData, type PropertyControllerDeleteResponse, type PropertyControllerGetAllResponse, type PropertyControllerGetByKeyData, type PropertyControllerGetByKeyResponse, type PropertyControllerUpdateData, type PropertyControllerUpdateResponse, type ProviderSyncConfigDto, type ProviderSyncControllerGetSupportedProvidersData, type ProviderSyncControllerGetSupportedProvidersResponse, type ProviderSyncControllerIsProviderSupportedData, type ProviderSyncControllerIsProviderSupportedResponse, type ProviderSyncControllerSyncData, type ProviderSyncControllerSyncResponse, type ProviderSyncDto, type ProviderSyncResponseDto, ProviderSyncService, type ReconciliationComputeResultDto, type ReconciliationControllerAssertData, type ReconciliationControllerAssertResponse, type ReconciliationControllerComputeData, type ReconciliationControllerComputeResponse, type ReconciliationControllerHistoryData, type ReconciliationControllerHistoryResponse, type ReconciliationControllerPadData, type ReconciliationControllerPadResponse, type ReconciliationRecordDto, type RecurringMatchInfoDto, type RecurringRuleControllerCreateData, type RecurringRuleControllerCreateFromTransactionData, type RecurringRuleControllerCreateFromTransactionResponse, type RecurringRuleControllerCreateResponse, type RecurringRuleControllerDeleteData, type RecurringRuleControllerDeleteResponse, type RecurringRuleControllerFindAllData, type RecurringRuleControllerFindAllResponse, type RecurringRuleControllerFindOneData, type RecurringRuleControllerFindOneResponse, type RecurringRuleControllerGetWithStatsData, type RecurringRuleControllerGetWithStatsResponse, type RecurringRuleControllerUpdateData, type RecurringRuleControllerUpdateResponse, type RecurringRuleResponseDto, type RecurringRuleWithStatsResponseDto, type RecurringSuggestionDto, type RegionConfigDto, type RegionInfoDto, type RegionsMetadataResponseDto, type ReopenAccountDto, type ReportingControllerBackfillSnapshotsData, type ReportingControllerBackfillSnapshotsResponse, type ReportingControllerGenerateSnapshotData, type ReportingControllerGenerateSnapshotResponse, type ReportingControllerGetCashFlowTrendsData, type ReportingControllerGetCashFlowTrendsResponse, type ReportingControllerGetPortfolioTrendsData, type ReportingControllerGetPortfolioTrendsResponse, type ResolveResultDto, type ResolveReviewDto, type ReviewControllerBatchResolveData, type ReviewControllerBatchResolveResponse, type ReviewControllerFindAllData, type ReviewControllerFindAllResponse, type ReviewControllerFindOneData, type ReviewControllerFindOneResponse, type ReviewControllerGetStatsData, type ReviewControllerGetStatsResponse, type ReviewControllerResolveData, type ReviewControllerResolveResponse, type ReviewControllerUndoData, type ReviewControllerUndoResponse, type ReviewDetailDto, type ReviewItemPreviewDto, type ReviewListResponseDto, type ReviewStatsDto, type ReviewSummaryDto, type RuleStatisticsResponseDto, type SignupDto, type SignupResponseDto, type SupportedProvidersResponseDto, type SymbolControllerGetQuoteData, type SymbolControllerGetQuoteResponse, type SymbolControllerSearchData, type SymbolControllerSearchResponse, type SymbolQuoteDto, type SymbolSearchResultDto, type TagSuggestionDto, type TagSuggestionsResponseDto, type TelemetryControllerGetCoverageMetricsData, type TelemetryControllerGetCoverageMetricsResponse, type TelemetryControllerReportCoverageMissData, type TelemetryControllerReportCoverageMissResponse, type TelemetryControllerReportTelemetryData, type TelemetryControllerReportTelemetryResponse, type TemplateMetadataDto, type TemplateMetadataResponseDto, type TestRuleDto, type TestRuleResponseDto, type TimeSeriesPointDto, type TransactionControllerCorrectData, type TransactionControllerCorrectResponse, type TransactionControllerCreateBatchData, type TransactionControllerCreateBatchResponse, type TransactionControllerCreateData, type TransactionControllerCreateResponse, type TransactionControllerDeleteData, type TransactionControllerDeleteResponse, type TransactionControllerGetDetailData, type TransactionControllerGetDetailResponse, type TransactionControllerListData, type TransactionControllerListResponse, type TransactionControllerSuggestTagsData, type TransactionControllerSuggestTagsResponse, type TransactionControllerUpdateData, type TransactionControllerUpdateResponse, type TransactionDetailDto, type TransactionListItemDto, type TransactionListResponseDto, type TransactionListSummaryDto, type TransactionListViewpointDto, type TransactionResponseDto, type TransactionRuleControllerBulkCreateData, type TransactionRuleControllerBulkCreateResponse, type TransactionRuleControllerCreateData, type TransactionRuleControllerCreateResponse, type TransactionRuleControllerDeleteData, type TransactionRuleControllerDeleteResponse, type TransactionRuleControllerExportData, type TransactionRuleControllerExportResponse, type TransactionRuleControllerGetDetailData, type TransactionRuleControllerGetDetailResponse, type TransactionRuleControllerGetStatisticsData, type TransactionRuleControllerGetStatisticsResponse, type TransactionRuleControllerListData, type TransactionRuleControllerListResponse, type TransactionRuleControllerTestData, type TransactionRuleControllerTestResponse, type TransactionRuleControllerUpdateData, type TransactionRuleControllerUpdateResponse, type TransactionRuleControllerValidateData, type TransactionRuleControllerValidateResponse, type TransactionRuleListResponseDto, type TransactionRuleResponseDto, type TransactionSummaryDto, type TrendSummaryDto, type UncoveredFormatMissDto, type UndoResultDto, type UpdateAccountDto, type UpdateBeanEventDto, type UpdateBeanPriceDto, type UpdateCommodityDto, type UpdateConfigDataDto, type UpdateImporterConfigDto, type UpdateMapperDefaultsDto, type UpdatePayeeDto, type UpdatePayeeProfileDto, type UpdatePlatformDto, type UpdatePropertyDto, type UpdateRecurringRuleDto, type UpdateTransactionDto, type UpdateTransactionRuleDto, type UpdateUserSettingDto, type UserControllerDeleteOwnUserData, type UserControllerDeleteOwnUserResponse, type UserControllerDeleteUserData, type UserControllerDeleteUserResponse, type UserControllerGetAllUserSettingsByPageData, type UserControllerGetAllUserSettingsByPageResponse, type UserControllerGetAssetLiabilitySummaryResponse, type UserControllerGetUserData, type UserControllerGetUserInfoData, type UserControllerGetUserInfoResponse, type UserControllerGetUserResponse, type UserControllerSignupUserData, type UserControllerSignupUserResponse, type UserControllerUpdateUserSettingData, type UserControllerUpdateUserSettingResponse, type UserResponseDto, type UserSettingsResponseDto, type ValidateRuleDto, type ValidateRuleResponseDto, type VersionedConfigDto, type action, type action2, type assetClass, type assetSubClass, type assetSubType, type bookingMethod, type branchType, type category, type chartToken, type colorScheme, type confidenceLevel, type conflictStrategy, type dataSource, type equitySubType, type flag, type flag2, type flow, type frequency, type importerId, type intent, type investmentAction, type learningSource, type liabilitySubType, type matchLogic, type matchType, type matchType2, type method, type mode, type paymentSource, type period, type productCategory, type provider, type role, type scenario, type source, type source2, type source3, type status, type status2, type status3, type status4, type suggestedAction, type suggestedFrequency, type type, type type2, type type3, type type4, type type5, type value, type viewMode };