@firela/api-types 0.0.0-canary.3d558482 → 0.0.0-canary.3e45eeb0

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
@@ -2375,363 +2403,211 @@ type ForecastResponseDto = {
2375
2403
  */
2376
2404
  periodEnd: string;
2377
2405
  };
2378
- type CreateTransactionRuleDto = {
2379
- name: string;
2380
- description?: string;
2381
- narrationKeywords?: Array<unknown[]>;
2382
- payeeKeywords?: Array<unknown[]>;
2383
- categoryKeywords?: Array<unknown[]>;
2406
+ type CurrencyBalanceDto = {
2384
2407
  /**
2385
- * Payment method keywords (e.g., HuaBei, YuEBao)
2408
+ * ISO 4217 currency code
2386
2409
  */
2387
- methodKeywords?: Array<unknown[]>;
2410
+ currency: string;
2388
2411
  /**
2389
- * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2412
+ * Balance amount
2390
2413
  */
2391
- categoryAccount?: string;
2392
- matchLogic: 'OR' | 'AND';
2414
+ balance: string;
2415
+ };
2416
+ type TimeSeriesPointDto = {
2393
2417
  /**
2394
- * Minimum transaction amount (inclusive)
2418
+ * Date in YYYY-MM-DD format
2395
2419
  */
2396
- amountMin?: number;
2420
+ date: string;
2397
2421
  /**
2398
- * Maximum transaction amount (inclusive)
2422
+ * Value at this date (in base currency)
2399
2423
  */
2400
- amountMax?: number;
2401
- priority: number;
2402
- additionalTags?: Array<unknown[]>;
2403
- additionalMetadata?: {
2424
+ value: string;
2425
+ /**
2426
+ * Change from previous point
2427
+ */
2428
+ change?: {
2404
2429
  [key: string]: unknown;
2405
2430
  };
2406
2431
  /**
2407
- * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2432
+ * Total assets at this date (in base currency)
2408
2433
  */
2409
- upsertByPayee?: boolean;
2410
- };
2411
- type matchLogic = 'OR' | 'AND';
2412
- type AmountRangeDto = {
2434
+ assets?: string;
2413
2435
  /**
2414
- * Minimum amount
2436
+ * Total liabilities at this date (in base currency)
2415
2437
  */
2416
- min?: number;
2438
+ liabilities?: string;
2417
2439
  /**
2418
- * Maximum amount
2440
+ * Multi-currency breakdown for this point
2419
2441
  */
2420
- max?: number;
2442
+ byCurrency?: Array<CurrencyBalanceDto>;
2421
2443
  };
2422
- type TransactionRuleResponseDto = {
2444
+ type TrendSummaryDto = {
2423
2445
  /**
2424
- * Rule ID
2446
+ * Value at start of period
2425
2447
  */
2426
- id: string;
2448
+ startValue: string;
2427
2449
  /**
2428
- * Rule name
2450
+ * Value at end of period
2429
2451
  */
2430
- name: string;
2452
+ endValue: string;
2431
2453
  /**
2432
- * Rule description
2454
+ * Total change over period
2433
2455
  */
2434
- description?: string;
2456
+ totalChange: string;
2435
2457
  /**
2436
- * Keywords to match in transaction narration
2458
+ * Total change percentage
2437
2459
  */
2438
- narrationKeywords: Array<string>;
2460
+ totalChangePercentage: string;
2461
+ };
2462
+ type MultiCurrencyPointDto = {
2439
2463
  /**
2440
- * Keywords to match in payee name
2464
+ * Date in YYYY-MM-DD format
2441
2465
  */
2442
- payeeKeywords: Array<string>;
2466
+ date: string;
2443
2467
  /**
2444
- * Keywords to match in category
2468
+ * Balances by currency
2445
2469
  */
2446
- categoryKeywords: Array<string>;
2470
+ byCurrency: Array<CurrencyBalanceDto>;
2471
+ };
2472
+ type PortfolioTrendsResponseDto = {
2447
2473
  /**
2448
- * Keywords to match in payment method
2474
+ * Time series data points
2449
2475
  */
2450
- methodKeywords: Array<string>;
2476
+ series: Array<TimeSeriesPointDto>;
2451
2477
  /**
2452
- * Destination account for categorization
2478
+ * Period summary
2453
2479
  */
2454
- categoryAccount?: string;
2480
+ summary: TrendSummaryDto;
2455
2481
  /**
2456
- * Keyword matching logic
2482
+ * Period requested
2457
2483
  */
2458
- matchLogic: 'OR' | 'AND';
2484
+ period: string;
2459
2485
  /**
2460
- * Amount range for matching
2486
+ * Data granularity
2461
2487
  */
2462
- amountRange?: AmountRangeDto;
2488
+ granularity: string;
2463
2489
  /**
2464
- * Rule priority (0-1000, higher = first match)
2490
+ * Base currency for converted values
2465
2491
  */
2466
- priority: number;
2492
+ currency: string;
2467
2493
  /**
2468
- * Whether the rule is enabled
2494
+ * Multi-currency time series (each point has currency breakdown)
2469
2495
  */
2470
- enabled: boolean;
2496
+ byCurrency?: Array<MultiCurrencyPointDto>;
2471
2497
  /**
2472
- * Learning source: NLP, REVIEW_CENTER, or null for manual
2498
+ * Exchange rate warnings
2473
2499
  */
2474
- learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
2500
+ warnings?: Array<ExchangeRateWarningDto>;
2501
+ };
2502
+ type CashFlowPointDto = {
2475
2503
  /**
2476
- * Whether auto-apply is enabled for this rule
2504
+ * Month key (YYYY-MM)
2477
2505
  */
2478
- autoApplyEnabled: boolean;
2506
+ month: string;
2479
2507
  /**
2480
- * Number of confirmations for NLP-learned rules
2508
+ * Income in base currency (absolute, converted)
2481
2509
  */
2482
- confirmationCount: number;
2510
+ income: string;
2483
2511
  /**
2484
- * Additional tags
2512
+ * Expense in base currency (absolute, converted)
2485
2513
  */
2486
- additionalTags: Array<string>;
2514
+ expense: string;
2487
2515
  /**
2488
- * Additional metadata
2516
+ * netSavings = income − expense (savings positive)
2489
2517
  */
2490
- additionalMetadata?: {
2491
- [key: string]: string;
2492
- };
2518
+ netSavings: string;
2519
+ };
2520
+ type CashFlowTrendSummaryDto = {
2493
2521
  /**
2494
- * Created timestamp
2522
+ * Total income across the period
2495
2523
  */
2496
- createdAt: string;
2524
+ totalIncome: string;
2497
2525
  /**
2498
- * Updated timestamp
2526
+ * Total expense across the period
2499
2527
  */
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>;
2528
+ totalExpense: string;
2508
2529
  /**
2509
- * Total count of rules
2530
+ * income expense across the period
2510
2531
  */
2511
- total: number;
2532
+ totalNetSavings: string;
2512
2533
  /**
2513
- * Results per page
2534
+ * totalNetSavings divided by the window length (N months, incl. zero-filled)
2514
2535
  */
2515
- limit: number;
2536
+ averageMonthlyNetSavings: string;
2537
+ };
2538
+ type CashFlowTrendsResponseDto = {
2516
2539
  /**
2517
- * Pagination offset
2540
+ * Monthly cash-flow series (fixed N-month window, zero-filled)
2518
2541
  */
2519
- offset: number;
2520
- };
2521
- type ValidateRuleDto = {
2522
- name: string;
2523
- description?: string;
2524
- narrationKeywords?: Array<unknown[]>;
2525
- payeeKeywords?: Array<unknown[]>;
2526
- categoryKeywords?: Array<unknown[]>;
2542
+ series: Array<CashFlowPointDto>;
2527
2543
  /**
2528
- * Payment method keywords (e.g., HuaBei, YuEBao)
2544
+ * Period totals
2529
2545
  */
2530
- methodKeywords?: Array<unknown[]>;
2546
+ summary: CashFlowTrendSummaryDto;
2531
2547
  /**
2532
- * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2548
+ * Period requested
2533
2549
  */
2534
- categoryAccount?: string;
2535
- matchLogic: 'OR' | 'AND';
2550
+ period: string;
2536
2551
  /**
2537
- * Minimum transaction amount (inclusive)
2552
+ * Data granularity (v1 returns month buckets)
2538
2553
  */
2539
- amountMin?: number;
2554
+ granularity: string;
2540
2555
  /**
2541
- * Maximum transaction amount (inclusive)
2556
+ * Base currency for converted values
2542
2557
  */
2543
- amountMax?: number;
2544
- priority: number;
2545
- additionalTags?: Array<unknown[]>;
2546
- additionalMetadata?: {
2547
- [key: string]: unknown;
2548
- };
2558
+ currency: string;
2549
2559
  /**
2550
- * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2560
+ * Exchange rate warnings (e.g. missing rate for a currency)
2551
2561
  */
2552
- upsertByPayee?: boolean;
2562
+ warnings?: Array<ExchangeRateWarningDto>;
2553
2563
  };
2554
- type ValidateRuleResponseDto = {
2564
+ type GenerateSnapshotBody = unknown;
2565
+ type GenerateSnapshotResponse = unknown;
2566
+ type BackfillSnapshotsBody = unknown;
2567
+ type BackfillSnapshotsResponse = unknown;
2568
+ type DeleteOwnUserDto = {
2555
2569
  /**
2556
- * Whether the rule configuration is valid
2570
+ * Access token for user verification
2557
2571
  */
2558
- valid: boolean;
2572
+ accessToken: string;
2573
+ };
2574
+ type UserSettingsResponseDto = {
2559
2575
  /**
2560
- * List of validation errors (empty if valid)
2576
+ * Base currency (ISO 4217) for net-worth/report aggregation. Independent of region (ADR-0006).
2561
2577
  */
2562
- errors: Array<unknown[]>;
2578
+ baseCurrency: string | null;
2579
+ };
2580
+ type UserResponseDto = {
2563
2581
  /**
2564
- * List of validation warnings (non-blocking issues)
2582
+ * User ID
2565
2583
  */
2566
- warnings: Array<unknown[]>;
2567
- };
2568
- type BulkCreateRulesDto = {
2584
+ id: string;
2569
2585
  /**
2570
- * Array of rules to import
2586
+ * Assigned user role
2571
2587
  */
2572
- rules: Array<unknown[]>;
2588
+ role: string;
2573
2589
  /**
2574
- * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2590
+ * Permission strings
2575
2591
  */
2576
- conflictStrategy: 'replace' | 'skip';
2577
- };
2578
- /**
2579
- * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2580
- */
2581
- type conflictStrategy = 'replace' | 'skip';
2582
- type BulkCreateRulesResponseDto = {
2592
+ permissions: Array<string>;
2583
2593
  /**
2584
- * Number of successfully created rules
2594
+ * User settings
2585
2595
  */
2586
- successCount: number;
2596
+ settings: UserSettingsResponseDto;
2597
+ };
2598
+ type SignupDto = {
2587
2599
  /**
2588
- * Number of failed rules
2600
+ * Cloudflare Turnstile verification token (optional when Turnstile disabled)
2589
2601
  */
2590
- failureCount: number;
2602
+ turnstileToken?: string;
2603
+ };
2604
+ type SignupResponseDto = {
2591
2605
  /**
2592
- * Error details for failed rules
2606
+ * JWT auth token
2593
2607
  */
2594
- errors: Array<{
2595
- index?: number;
2596
- message?: string;
2597
- }>;
2608
+ authToken: string;
2598
2609
  /**
2599
- * IDs of successfully created rules
2600
- */
2601
- createdRuleIds: Array<string>;
2602
- };
2603
- type ExportRulesResponseDto = {
2604
- /**
2605
- * Export timestamp
2606
- */
2607
- exportedAt: string;
2608
- /**
2609
- * User ID
2610
- */
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;
2634
- /**
2635
- * Total number of matches across all rules
2636
- */
2637
- totalMatches: number;
2638
- /**
2639
- * Average confidence score across all matches
2640
- */
2641
- averageConfidence: number;
2642
- /**
2643
- * Per-rule statistics
2644
- */
2645
- ruleStats: Array<{
2646
- ruleId?: string;
2647
- ruleName?: string;
2648
- matchCount?: number;
2649
- averageConfidence?: number;
2650
- }>;
2651
- };
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;
2680
- /**
2681
- * Enable or disable the rule
2682
- */
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;
2695
- };
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;
2709
- /**
2710
- * Details of which fields matched
2711
- */
2712
- matchDetails: {
2713
- [key: string]: unknown;
2714
- };
2715
- };
2716
- type DeleteOwnUserDto = {
2717
- /**
2718
- * Access token for user verification
2719
- */
2720
- accessToken: string;
2721
- };
2722
- type SignupDto = {
2723
- /**
2724
- * Cloudflare Turnstile verification token (optional when Turnstile disabled)
2725
- */
2726
- turnstileToken?: string;
2727
- };
2728
- type SignupResponseDto = {
2729
- /**
2730
- * JWT auth token
2731
- */
2732
- authToken: string;
2733
- /**
2734
- * Auto-generated access token
2610
+ * Auto-generated access token
2735
2611
  */
2736
2612
  accessToken: string;
2737
2613
  /**
@@ -2843,168 +2719,380 @@ type UpdatePropertyDto = {
2843
2719
  */
2844
2720
  value: string;
2845
2721
  };
2846
- type CurrencyBalanceDto = {
2722
+ type CreateTransactionRuleDto = {
2723
+ name: string;
2724
+ description?: string;
2725
+ narrationKeywords?: Array<unknown[]>;
2726
+ payeeKeywords?: Array<unknown[]>;
2727
+ categoryKeywords?: Array<unknown[]>;
2847
2728
  /**
2848
- * ISO 4217 currency code
2729
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2849
2730
  */
2850
- currency: string;
2731
+ methodKeywords?: Array<unknown[]>;
2851
2732
  /**
2852
- * Balance amount
2733
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2853
2734
  */
2854
- balance: string;
2735
+ categoryAccount?: string;
2736
+ matchLogic: 'OR' | 'AND';
2737
+ /**
2738
+ * Minimum transaction amount (inclusive)
2739
+ */
2740
+ amountMin?: number;
2741
+ /**
2742
+ * Maximum transaction amount (inclusive)
2743
+ */
2744
+ amountMax?: number;
2745
+ priority: number;
2746
+ additionalTags?: Array<unknown[]>;
2747
+ additionalMetadata?: {
2748
+ [key: string]: unknown;
2749
+ };
2750
+ /**
2751
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2752
+ */
2753
+ upsertByPayee?: boolean;
2855
2754
  };
2856
- type TimeSeriesPointDto = {
2755
+ type matchLogic = 'OR' | 'AND';
2756
+ type AmountRangeDto = {
2857
2757
  /**
2858
- * Date in YYYY-MM-DD format
2758
+ * Minimum amount
2859
2759
  */
2860
- date: string;
2760
+ min?: number;
2861
2761
  /**
2862
- * Value at this date (in base currency)
2762
+ * Maximum amount
2863
2763
  */
2864
- value: string;
2764
+ max?: number;
2765
+ };
2766
+ type TransactionRuleResponseDto = {
2865
2767
  /**
2866
- * Change from previous point
2768
+ * Rule ID
2867
2769
  */
2868
- change?: {
2770
+ id: string;
2771
+ /**
2772
+ * Rule name
2773
+ */
2774
+ name: string;
2775
+ /**
2776
+ * Rule description
2777
+ */
2778
+ description?: string;
2779
+ /**
2780
+ * Keywords to match in transaction narration
2781
+ */
2782
+ narrationKeywords: Array<string>;
2783
+ /**
2784
+ * Keywords to match in payee name
2785
+ */
2786
+ payeeKeywords: Array<string>;
2787
+ /**
2788
+ * Keywords to match in category
2789
+ */
2790
+ categoryKeywords: Array<string>;
2791
+ /**
2792
+ * Keywords to match in payment method
2793
+ */
2794
+ methodKeywords: Array<string>;
2795
+ /**
2796
+ * Destination account for categorization
2797
+ */
2798
+ categoryAccount?: string;
2799
+ /**
2800
+ * Keyword matching logic
2801
+ */
2802
+ matchLogic: 'OR' | 'AND';
2803
+ /**
2804
+ * Amount range for matching
2805
+ */
2806
+ amountRange?: AmountRangeDto;
2807
+ /**
2808
+ * Rule priority (0-1000, higher = first match)
2809
+ */
2810
+ priority: number;
2811
+ /**
2812
+ * Whether the rule is enabled
2813
+ */
2814
+ enabled: boolean;
2815
+ /**
2816
+ * Learning source: NLP, REVIEW_CENTER, or null for manual
2817
+ */
2818
+ learningSource?: 'NLP' | 'REVIEW_CENTER' | null;
2819
+ /**
2820
+ * Whether auto-apply is enabled for this rule
2821
+ */
2822
+ autoApplyEnabled: boolean;
2823
+ /**
2824
+ * Number of confirmations for NLP-learned rules
2825
+ */
2826
+ confirmationCount: number;
2827
+ /**
2828
+ * Additional tags
2829
+ */
2830
+ additionalTags: Array<string>;
2831
+ /**
2832
+ * Additional metadata
2833
+ */
2834
+ additionalMetadata?: {
2835
+ [key: string]: string;
2836
+ };
2837
+ /**
2838
+ * Created timestamp
2839
+ */
2840
+ createdAt: string;
2841
+ /**
2842
+ * Updated timestamp
2843
+ */
2844
+ updatedAt: string;
2845
+ };
2846
+ /**
2847
+ * Learning source: NLP, REVIEW_CENTER, or null for manual
2848
+ */
2849
+ type learningSource = 'NLP' | 'REVIEW_CENTER';
2850
+ type TransactionRuleListResponseDto = {
2851
+ data: Array<TransactionRuleResponseDto>;
2852
+ /**
2853
+ * Total count of rules
2854
+ */
2855
+ total: number;
2856
+ /**
2857
+ * Results per page
2858
+ */
2859
+ limit: number;
2860
+ /**
2861
+ * Pagination offset
2862
+ */
2863
+ offset: number;
2864
+ };
2865
+ type ValidateRuleDto = {
2866
+ name: string;
2867
+ description?: string;
2868
+ narrationKeywords?: Array<unknown[]>;
2869
+ payeeKeywords?: Array<unknown[]>;
2870
+ categoryKeywords?: Array<unknown[]>;
2871
+ /**
2872
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2873
+ */
2874
+ methodKeywords?: Array<unknown[]>;
2875
+ /**
2876
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2877
+ */
2878
+ categoryAccount?: string;
2879
+ matchLogic: 'OR' | 'AND';
2880
+ /**
2881
+ * Minimum transaction amount (inclusive)
2882
+ */
2883
+ amountMin?: number;
2884
+ /**
2885
+ * Maximum transaction amount (inclusive)
2886
+ */
2887
+ amountMax?: number;
2888
+ priority: number;
2889
+ additionalTags?: Array<unknown[]>;
2890
+ additionalMetadata?: {
2869
2891
  [key: string]: unknown;
2870
2892
  };
2871
2893
  /**
2872
- * Total assets at this date (in base currency)
2894
+ * If true, update existing rule with matching payeeKeywords[0] instead of creating new rule
2873
2895
  */
2874
- assets?: string;
2896
+ upsertByPayee?: boolean;
2897
+ };
2898
+ type ValidateRuleResponseDto = {
2875
2899
  /**
2876
- * Total liabilities at this date (in base currency)
2900
+ * Whether the rule configuration is valid
2901
+ */
2902
+ valid: boolean;
2903
+ /**
2904
+ * List of validation errors (empty if valid)
2905
+ */
2906
+ errors: Array<unknown[]>;
2907
+ /**
2908
+ * List of validation warnings (non-blocking issues)
2909
+ */
2910
+ warnings: Array<unknown[]>;
2911
+ };
2912
+ type BulkCreateRulesDto = {
2913
+ /**
2914
+ * Array of rules to import
2915
+ */
2916
+ rules: Array<unknown[]>;
2917
+ /**
2918
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2919
+ */
2920
+ conflictStrategy: 'replace' | 'skip';
2921
+ };
2922
+ /**
2923
+ * Conflict handling strategy: skip (default) ignores duplicates, replace soft-deletes existing rule
2924
+ */
2925
+ type conflictStrategy = 'replace' | 'skip';
2926
+ type BulkCreateRulesResponseDto = {
2927
+ /**
2928
+ * Number of successfully created rules
2877
2929
  */
2878
- liabilities?: string;
2930
+ successCount: number;
2879
2931
  /**
2880
- * Multi-currency breakdown for this point
2932
+ * Number of failed rules
2881
2933
  */
2882
- byCurrency?: Array<CurrencyBalanceDto>;
2883
- };
2884
- type TrendSummaryDto = {
2934
+ failureCount: number;
2885
2935
  /**
2886
- * Value at start of period
2936
+ * Error details for failed rules
2887
2937
  */
2888
- startValue: string;
2938
+ errors: Array<{
2939
+ index?: number;
2940
+ message?: string;
2941
+ }>;
2889
2942
  /**
2890
- * Value at end of period
2943
+ * IDs of successfully created rules
2891
2944
  */
2892
- endValue: string;
2945
+ createdRuleIds: Array<string>;
2946
+ };
2947
+ type ExportRulesResponseDto = {
2893
2948
  /**
2894
- * Total change over period
2949
+ * Export timestamp
2895
2950
  */
2896
- totalChange: string;
2951
+ exportedAt: string;
2897
2952
  /**
2898
- * Total change percentage
2953
+ * User ID
2899
2954
  */
2900
- totalChangePercentage: string;
2901
- };
2902
- type MultiCurrencyPointDto = {
2955
+ userId: string;
2903
2956
  /**
2904
- * Date in YYYY-MM-DD format
2957
+ * Number of exported rules
2905
2958
  */
2906
- date: string;
2959
+ ruleCount: number;
2907
2960
  /**
2908
- * Balances by currency
2961
+ * Exported rules
2909
2962
  */
2910
- byCurrency: Array<CurrencyBalanceDto>;
2963
+ rules: unknown[];
2911
2964
  };
2912
- type PortfolioTrendsResponseDto = {
2965
+ type RuleStatisticsResponseDto = {
2913
2966
  /**
2914
- * Time series data points
2967
+ * Statistics time period
2915
2968
  */
2916
- series: Array<TimeSeriesPointDto>;
2969
+ period: '7d' | '30d' | '90d';
2917
2970
  /**
2918
- * Period summary
2971
+ * Total number of rules
2919
2972
  */
2920
- summary: TrendSummaryDto;
2973
+ totalRules: number;
2921
2974
  /**
2922
- * Period requested
2975
+ * Number of rules with at least one match
2923
2976
  */
2924
- period: string;
2977
+ rulesWithMatches: number;
2925
2978
  /**
2926
- * Data granularity
2979
+ * Total number of matches across all rules
2927
2980
  */
2928
- granularity: string;
2981
+ totalMatches: number;
2929
2982
  /**
2930
- * Base currency for converted values
2983
+ * Average confidence score across all matches
2931
2984
  */
2932
- currency: string;
2985
+ averageConfidence: number;
2933
2986
  /**
2934
- * Multi-currency time series (each point has currency breakdown)
2987
+ * Per-rule statistics
2935
2988
  */
2936
- byCurrency?: Array<MultiCurrencyPointDto>;
2989
+ ruleStats: Array<{
2990
+ ruleId?: string;
2991
+ ruleName?: string;
2992
+ matchCount?: number;
2993
+ averageConfidence?: number;
2994
+ }>;
2995
+ };
2996
+ /**
2997
+ * Statistics time period
2998
+ */
2999
+ type period = '7d' | '30d' | '90d';
3000
+ type UpdateTransactionRuleDto = {
3001
+ name?: string;
3002
+ description?: string;
3003
+ narrationKeywords?: Array<unknown[]>;
3004
+ payeeKeywords?: Array<unknown[]>;
3005
+ categoryKeywords?: Array<unknown[]>;
2937
3006
  /**
2938
- * Exchange rate warnings
3007
+ * Payment method keywords (e.g., HuaBei, YuEBao)
2939
3008
  */
2940
- warnings?: Array<ExchangeRateWarningDto>;
2941
- };
2942
- type CashFlowPointDto = {
3009
+ methodKeywords?: Array<unknown[]>;
2943
3010
  /**
2944
- * Month key (YYYY-MM)
3011
+ * Destination account for expenses/income (e.g., Expenses:Food:Coffee)
2945
3012
  */
2946
- month: string;
3013
+ categoryAccount?: string;
3014
+ matchLogic?: 'OR' | 'AND';
2947
3015
  /**
2948
- * Income in base currency (absolute, converted)
3016
+ * Minimum transaction amount (inclusive)
2949
3017
  */
2950
- income: string;
3018
+ amountMin?: number;
2951
3019
  /**
2952
- * Expense in base currency (absolute, converted)
3020
+ * Maximum transaction amount (inclusive)
2953
3021
  */
2954
- expense: string;
3022
+ amountMax?: number;
3023
+ priority?: number;
2955
3024
  /**
2956
- * netSavings = income expense (savings positive)
3025
+ * Enable or disable the rule
2957
3026
  */
2958
- netSavings: string;
3027
+ enabled?: boolean;
3028
+ additionalTags?: Array<unknown[]>;
3029
+ additionalMetadata?: {
3030
+ [key: string]: unknown;
3031
+ };
2959
3032
  };
2960
- type CashFlowTrendSummaryDto = {
3033
+ type TestRuleDto = {
3034
+ narration: string;
3035
+ payee?: string;
3036
+ categoryAccount?: string;
3037
+ amount?: number;
3038
+ currency?: string;
3039
+ };
3040
+ type TestRuleResponseDto = {
2961
3041
  /**
2962
- * Total income across the period
3042
+ * Rule ID that was tested
2963
3043
  */
2964
- totalIncome: string;
3044
+ ruleId: string;
2965
3045
  /**
2966
- * Total expense across the period
3046
+ * Whether the rule matched the test data
2967
3047
  */
2968
- totalExpense: string;
3048
+ matches: boolean;
2969
3049
  /**
2970
- * income expense across the period
3050
+ * Match confidence score (0-1)
2971
3051
  */
2972
- totalNetSavings: string;
3052
+ confidence: number;
2973
3053
  /**
2974
- * totalNetSavings divided by the window length (N months, incl. zero-filled)
3054
+ * Details of which fields matched
2975
3055
  */
2976
- averageMonthlyNetSavings: string;
3056
+ matchDetails: {
3057
+ [key: string]: unknown;
3058
+ };
2977
3059
  };
2978
- type CashFlowTrendsResponseDto = {
3060
+ type CategoryCatalogEntryDto = {
2979
3061
  /**
2980
- * Monthly cash-flow series (fixed N-month window, zero-filled)
3062
+ * Category slug (single source-of-truth)
2981
3063
  */
2982
- series: Array<CashFlowPointDto>;
3064
+ slug: string;
2983
3065
  /**
2984
- * Period totals
3066
+ * Display scenario group (maps to frontend picker _scenario)
2985
3067
  */
2986
- summary: CashFlowTrendSummaryDto;
3068
+ scenario: 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
2987
3069
  /**
2988
- * Period requested
3070
+ * Lucide icon name
2989
3071
  */
2990
- period: string;
3072
+ icon: string;
2991
3073
  /**
2992
- * Data granularity (v1 returns month buckets)
3074
+ * Applicable regions ('*' = all, 'cn' = CN-only)
2993
3075
  */
2994
- granularity: string;
3076
+ regions: Array<string>;
3077
+ };
3078
+ /**
3079
+ * Display scenario group (maps to frontend picker _scenario)
3080
+ */
3081
+ type scenario = 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
3082
+ type CategoryCatalogListResponseDto = {
2995
3083
  /**
2996
- * Base currency for converted values
3084
+ * Category entries (region-scoped, query-filtered)
2997
3085
  */
2998
- currency: string;
3086
+ items: Array<CategoryCatalogEntryDto>;
2999
3087
  /**
3000
- * Exchange rate warnings (e.g. missing rate for a currency)
3088
+ * Total category entries for the region (before query filtering)
3001
3089
  */
3002
- warnings?: Array<ExchangeRateWarningDto>;
3090
+ total: number;
3091
+ /**
3092
+ * Region code
3093
+ */
3094
+ region: string;
3003
3095
  };
3004
- type GenerateSnapshotBody = unknown;
3005
- type GenerateSnapshotResponse = unknown;
3006
- type BackfillSnapshotsBody = unknown;
3007
- type BackfillSnapshotsResponse = unknown;
3008
3096
  type CreateBeanEventDto = {
3009
3097
  /**
3010
3098
  * Life event date (ISO 8601)
@@ -3489,13 +3577,13 @@ type ProviderSyncConfigDto = {
3489
3577
  */
3490
3578
  defaultCurrency: string;
3491
3579
  /**
3492
- * Default expense account for the second posting
3580
+ * Default expense account for the second posting. Omit when no real default exists; the pipeline routes to Review via the Uncategorized sentinel (#618).
3493
3581
  */
3494
- defaultExpenseAccount: string;
3582
+ defaultExpenseAccount?: string;
3495
3583
  /**
3496
- * Default income account for the second posting
3584
+ * Default income account for the second posting. Omit when no real default exists; the pipeline routes to Review via the Uncategorized sentinel (#618).
3497
3585
  */
3498
- defaultIncomeAccount: string;
3586
+ defaultIncomeAccount?: string;
3499
3587
  /**
3500
3588
  * Filter pending transactions
3501
3589
  */
@@ -3592,11 +3680,85 @@ type ExternalAccountLinkListResponseDto = {
3592
3680
  };
3593
3681
  type ParserTelemetryReportDto = unknown;
3594
3682
  type UncoveredFormatMissDto = unknown;
3683
+ type ClientParsedDataDto = {
3684
+ /**
3685
+ * Transaction amount
3686
+ */
3687
+ amount?: number;
3688
+ /**
3689
+ * Currency code
3690
+ */
3691
+ currency?: string;
3692
+ /**
3693
+ * Transaction date (ISO 8601)
3694
+ */
3695
+ date?: string;
3696
+ /**
3697
+ * Payee/merchant name
3698
+ */
3699
+ payee?: string;
3700
+ /**
3701
+ * Transaction narration
3702
+ */
3703
+ narration?: string;
3704
+ /**
3705
+ * Category slug
3706
+ */
3707
+ category?: string;
3708
+ /**
3709
+ * Income type
3710
+ */
3711
+ incomeType?: string;
3712
+ /**
3713
+ * Income source
3714
+ */
3715
+ incomeSource?: string;
3716
+ /**
3717
+ * Security symbol code (e.g., 600519, AAPL)
3718
+ */
3719
+ symbol?: string;
3720
+ /**
3721
+ * Quantity of shares/units
3722
+ */
3723
+ quantity?: number;
3724
+ /**
3725
+ * Unit price per share/unit
3726
+ */
3727
+ price?: number;
3728
+ /**
3729
+ * Investment action
3730
+ */
3731
+ investmentAction?: 'buy' | 'sell';
3732
+ /**
3733
+ * Payment source: asset (default) or liability (credit card)
3734
+ */
3735
+ paymentSource?: 'asset' | 'liability';
3736
+ /**
3737
+ * Liability account hint (CreditCard/Huabei/Baitiao)
3738
+ */
3739
+ liabilityHint?: string;
3740
+ /**
3741
+ * Display-only warning from the prior response; accepted but ignored.
3742
+ */
3743
+ warning?: string;
3744
+ };
3745
+ /**
3746
+ * Investment action
3747
+ */
3748
+ type investmentAction = 'buy' | 'sell';
3749
+ /**
3750
+ * Payment source: asset (default) or liability (credit card)
3751
+ */
3752
+ type paymentSource = 'asset' | 'liability';
3595
3753
  type ProcessNlpDto = {
3596
3754
  /**
3597
- * Natural language text describing a transaction (Chinese)
3755
+ * Natural language text describing a transaction. Optional when `confirm` is true (structured confirm); otherwise required.
3756
+ */
3757
+ message?: string;
3758
+ /**
3759
+ * Structured confirm signal — bypasses NL confirm-word matching when true. Send parsedData field edits alongside. The NL word-list path is the fallback.
3598
3760
  */
3599
- message: string;
3761
+ confirm?: boolean;
3600
3762
  /**
3601
3763
  * Session ID for multi-turn conversation (auto-generated if not provided)
3602
3764
  */
@@ -3604,9 +3766,15 @@ type ProcessNlpDto = {
3604
3766
  /**
3605
3767
  * Parsed data from previous NLP response for session recovery. Send back the parsedData received in confirm_payee/confirm responses.
3606
3768
  */
3607
- parsedData?: {
3608
- [key: string]: unknown;
3609
- };
3769
+ parsedData?: ClientParsedDataDto;
3770
+ /**
3771
+ * 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.
3772
+ */
3773
+ selectedRuleId?: string;
3774
+ /**
3775
+ * 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.
3776
+ */
3777
+ selectedAccount?: string;
3610
3778
  };
3611
3779
  type NlpTransactionInfoDto = {
3612
3780
  /**
@@ -3700,14 +3868,6 @@ type NlpParsedDataDto = {
3700
3868
  */
3701
3869
  warning?: string;
3702
3870
  };
3703
- /**
3704
- * Investment action
3705
- */
3706
- type investmentAction = 'buy' | 'sell';
3707
- /**
3708
- * Payment source: asset (default) or liability (credit card)
3709
- */
3710
- type paymentSource = 'asset' | 'liability';
3711
3871
  type NlpSourceTransactionDto = {
3712
3872
  /**
3713
3873
  * Transaction date (ISO format)
@@ -3840,9 +4000,9 @@ type NlpAccountConfirmationDataDto = {
3840
4000
  */
3841
4001
  invalidAccount: string;
3842
4002
  /**
3843
- * Suggested replacement account
4003
+ * Suggested replacement account (omitted when no clear candidate)
3844
4004
  */
3845
- suggestedAccount: string;
4005
+ suggestedAccount?: string;
3846
4006
  /**
3847
4007
  * Similar accounts for user selection
3848
4008
  */
@@ -3964,7 +4124,7 @@ type NlpSuggestedAccountDto = {
3964
4124
  */
3965
4125
  account: string;
3966
4126
  /**
3967
- * Confidence score for this suggestion (0-1)
4127
+ * Confidence score for this suggestion (0-1). Present = predicted (confirm/confirm_rule/confirm_account); omitted = actual persisted account (created). (#586)
3968
4128
  */
3969
4129
  confidence?: number;
3970
4130
  };
@@ -3980,21 +4140,21 @@ type NlpSuggestedAccountsDto = {
3980
4140
  };
3981
4141
  type NlpDefaultAccountsDto = {
3982
4142
  /**
3983
- * Default asset account
4143
+ * Default OPEN asset account (MRU when multiple), or null when none/ambiguous
3984
4144
  */
3985
- asset: string;
4145
+ asset: string | null;
3986
4146
  /**
3987
- * Default expense account
4147
+ * Default OPEN expense account (MRU when multiple), or null when none/ambiguous
3988
4148
  */
3989
- expense: string;
4149
+ expense: string | null;
3990
4150
  /**
3991
- * Default income account
4151
+ * Default OPEN income account (MRU when multiple), or null when none/ambiguous
3992
4152
  */
3993
- income: string;
4153
+ income: string | null;
3994
4154
  /**
3995
- * Default liability account
4155
+ * Default OPEN liability account (MRU when multiple), or null when none/ambiguous
3996
4156
  */
3997
- liability: string;
4157
+ liability: string | null;
3998
4158
  };
3999
4159
  type NlpResponseDto = {
4000
4160
  /**
@@ -4004,7 +4164,7 @@ type NlpResponseDto = {
4004
4164
  /**
4005
4165
  * Action taken or requested
4006
4166
  */
4007
- action: 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel';
4167
+ action: 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel' | 'aborted';
4008
4168
  /**
4009
4169
  * Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
4010
4170
  */
@@ -4012,7 +4172,7 @@ type NlpResponseDto = {
4012
4172
  /**
4013
4173
  * Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
4014
4174
  */
4015
- assetSubType?: 'transfer' | 'banking' | 'investment';
4175
+ assetSubType?: 'transfer' | 'banking' | 'investment' | 'lend' | 'lend_collect';
4016
4176
  /**
4017
4177
  * Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
4018
4178
  */
@@ -4093,11 +4253,11 @@ type NlpResponseDto = {
4093
4253
  */
4094
4254
  recurringSuggestion?: RecurringSuggestionDto;
4095
4255
  /**
4096
- * Suggested accounts for this transaction. Contains recommended source and destination accounts based on the detected intent and rules.
4256
+ * 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.
4097
4257
  */
4098
4258
  suggestedAccounts?: NlpSuggestedAccountsDto;
4099
4259
  /**
4100
- * Default accounts for the user/region. These are fallback accounts used when no specific suggestion is available.
4260
+ * Default fallback accounts for the user/region (#586). v1 returns universal constants; per-user personalization is planned.
4101
4261
  */
4102
4262
  defaultAccounts?: NlpDefaultAccountsDto;
4103
4263
  };
@@ -4108,7 +4268,7 @@ type status4 = 'success' | 'pending' | 'error';
4108
4268
  /**
4109
4269
  * Action taken or requested
4110
4270
  */
4111
- type action2 = 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel';
4271
+ type action2 = 'created' | 'ask' | 'confirm' | 'confirm_duplicate' | 'confirm_rule' | 'confirm_account' | 'confirm_payee' | 'cancel' | 'aborted';
4112
4272
  /**
4113
4273
  * Transaction intent detected by EntityRouter (v6.0: 5 core intents). Frontend uses this to render scenario-specific form fields.
4114
4274
  */
@@ -4116,7 +4276,7 @@ type intent = 'expense' | 'asset' | 'income' | 'liability' | 'equity';
4116
4276
  /**
4117
4277
  * Asset sub-type (only present when intent is "asset"). Determines which asset-related form to render.
4118
4278
  */
4119
- type assetSubType = 'transfer' | 'banking' | 'investment';
4279
+ type assetSubType = 'transfer' | 'banking' | 'investment' | 'lend' | 'lend_collect';
4120
4280
  /**
4121
4281
  * Liability sub-type (only present when intent is "liability"). borrow: borrowing money (Liabilities → Assets), repay: repaying debt (Assets → Liabilities).
4122
4282
  */
@@ -4147,13 +4307,21 @@ type PlatformListItemDto = {
4147
4307
  */
4148
4308
  canonical: string;
4149
4309
  /**
4150
- * Suggested path segment — canonical with first char uppercased (ACC_COMP_NAME_RE)
4310
+ * Suggested path segment — canonical PascalCased per hyphen-part, hyphens preserved (e.g. "Apple-Pay")
4151
4311
  */
4152
4312
  suggestedSegment: string;
4153
4313
  /**
4154
4314
  * Logo URL
4155
4315
  */
4156
4316
  logoUrl: string | null;
4317
+ /**
4318
+ * ISO 3166-1 alpha-2 (UPPERCASE); null = global platform
4319
+ */
4320
+ countryCode: string | null;
4321
+ /**
4322
+ * Region-aware category (institution vocab, e.g. DigitalWallet/Bank). null = no region-aware suggestion; fall back to type.
4323
+ */
4324
+ category: string | null;
4157
4325
  /**
4158
4326
  * Whether user has accounts using this platform
4159
4327
  */
@@ -4181,13 +4349,21 @@ type PlatformMatchResultDto = {
4181
4349
  */
4182
4350
  type: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
4183
4351
  /**
4184
- * Suggested path segment — canonical, already in ACCOUNT_RE format
4352
+ * Suggested path segment — canonical PascalCased per hyphen-part, hyphens preserved (e.g. "Apple-Pay")
4185
4353
  */
4186
4354
  suggestedSegment: string;
4187
4355
  /**
4188
4356
  * Logo URL
4189
4357
  */
4190
- logoUrl: string | null;
4358
+ logoUrl: string | null;
4359
+ /**
4360
+ * ISO 3166-1 alpha-2 (UPPERCASE); null = global platform
4361
+ */
4362
+ countryCode: string | null;
4363
+ /**
4364
+ * Region-aware category (institution vocab, e.g. DigitalWallet/Bank). null = no region-aware suggestion; fall back to type.
4365
+ */
4366
+ category: string | null;
4191
4367
  /**
4192
4368
  * How this row matched: 'exact' > 'prefix' > 'substring'
4193
4369
  */
@@ -4533,10 +4709,6 @@ type AssetClassGroupDto = {
4533
4709
  */
4534
4710
  convertedBalance?: string;
4535
4711
  };
4536
- /**
4537
- * Asset class name
4538
- */
4539
- type assetClass = 'LIQUIDITY' | 'EQUITY' | 'FIXED_INCOME' | 'PRECIOUS_METALS' | 'COMMODITY' | 'INSURANCE' | 'ALTERNATIVE_INVESTMENT' | 'PERSONAL_ASSETS' | 'LIABILITY' | 'REAL_ESTATE' | 'INDEX';
4540
4712
  type AssetClassSummaryDto = {
4541
4713
  /**
4542
4714
  * Total number of accounts
@@ -4932,11 +5104,137 @@ type AnonymousLoginResponseDto = {
4932
5104
  */
4933
5105
  authToken: string;
4934
5106
  };
5107
+ type SymbolSearchResultDto = {
5108
+ symbol: string;
5109
+ name?: {
5110
+ [key: string]: unknown;
5111
+ } | null;
5112
+ exchange?: {
5113
+ [key: string]: unknown;
5114
+ } | null;
5115
+ /**
5116
+ * OpenBB asset_type (e.g. stock, etf)
5117
+ */
5118
+ assetType?: {
5119
+ [key: string]: unknown;
5120
+ } | null;
5121
+ /**
5122
+ * IGN asset class (region.types.ts ASSET_CLASSES)
5123
+ */
5124
+ assetClass?: {
5125
+ [key: string]: unknown;
5126
+ } | null;
5127
+ /**
5128
+ * IGN asset sub-class (region.types.ts ASSET_SUB_CLASSES)
5129
+ */
5130
+ assetSubClass?: {
5131
+ [key: string]: unknown;
5132
+ } | null;
5133
+ /**
5134
+ * Trading currency (extra_data or inferred from exchange)
5135
+ */
5136
+ currency?: {
5137
+ [key: string]: unknown;
5138
+ } | null;
5139
+ };
5140
+ type SymbolQuoteDto = {
5141
+ symbol?: string;
5142
+ name?: {
5143
+ [key: string]: unknown;
5144
+ } | null;
5145
+ exchange?: {
5146
+ [key: string]: unknown;
5147
+ } | null;
5148
+ /**
5149
+ * OpenBB asset_type
5150
+ */
5151
+ assetType?: {
5152
+ [key: string]: unknown;
5153
+ } | null;
5154
+ /**
5155
+ * IGN asset class
5156
+ */
5157
+ assetClass?: {
5158
+ [key: string]: unknown;
5159
+ } | null;
5160
+ /**
5161
+ * IGN asset sub-class
5162
+ */
5163
+ assetSubClass?: {
5164
+ [key: string]: unknown;
5165
+ } | null;
5166
+ /**
5167
+ * Trading currency (extra_data or inferred from exchange)
5168
+ */
5169
+ currency?: {
5170
+ [key: string]: unknown;
5171
+ } | null;
5172
+ /**
5173
+ * Latest price (Decimal string)
5174
+ */
5175
+ price?: {
5176
+ [key: string]: unknown;
5177
+ } | null;
5178
+ /**
5179
+ * Date the price was observed (ISO yyyy-MM-dd)
5180
+ */
5181
+ priceDate?: {
5182
+ [key: string]: unknown;
5183
+ } | null;
5184
+ /**
5185
+ * 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.
5186
+ */
5187
+ changePercent?: {
5188
+ [key: string]: unknown;
5189
+ } | null;
5190
+ /**
5191
+ * Previous close (Decimal string)
5192
+ */
5193
+ prevClose?: {
5194
+ [key: string]: unknown;
5195
+ } | null;
5196
+ /**
5197
+ * Day open (Decimal string)
5198
+ */
5199
+ open?: {
5200
+ [key: string]: unknown;
5201
+ } | null;
5202
+ /**
5203
+ * Day high (Decimal string)
5204
+ */
5205
+ high?: {
5206
+ [key: string]: unknown;
5207
+ } | null;
5208
+ /**
5209
+ * Day low (Decimal string)
5210
+ */
5211
+ low?: {
5212
+ [key: string]: unknown;
5213
+ } | null;
5214
+ /**
5215
+ * Day volume (Decimal string)
5216
+ */
5217
+ volume?: {
5218
+ [key: string]: unknown;
5219
+ } | null;
5220
+ /**
5221
+ * 52-week high (Decimal string)
5222
+ */
5223
+ yearHigh?: {
5224
+ [key: string]: unknown;
5225
+ } | null;
5226
+ /**
5227
+ * 52-week low (Decimal string)
5228
+ */
5229
+ yearLow?: {
5230
+ [key: string]: unknown;
5231
+ } | null;
5232
+ };
4935
5233
  type AccountControllerCreateData = {
4936
5234
  /**
4937
5235
  * Region code for tenant context
4938
5236
  */
4939
- region: 'cn' | 'us' | 'de' | 'gb';
5237
+ 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';
4940
5238
  requestBody: CreateAccountDto;
4941
5239
  };
4942
5240
  type AccountControllerCreateResponse = AccountResponseDto;
@@ -4956,7 +5254,7 @@ type AccountControllerFindAllData = {
4956
5254
  /**
4957
5255
  * Region code for tenant context
4958
5256
  */
4959
- region: 'cn' | 'us' | 'de' | 'gb';
5257
+ 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';
4960
5258
  /**
4961
5259
  * Search term for account path
4962
5260
  */
@@ -4979,7 +5277,7 @@ type AccountControllerFindOneData = {
4979
5277
  /**
4980
5278
  * Region code for tenant context
4981
5279
  */
4982
- region: 'cn' | 'us' | 'de' | 'gb';
5280
+ 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';
4983
5281
  };
4984
5282
  type AccountControllerFindOneResponse = AccountResponseDto;
4985
5283
  type AccountControllerUpdateData = {
@@ -4990,7 +5288,7 @@ type AccountControllerUpdateData = {
4990
5288
  /**
4991
5289
  * Region code for tenant context
4992
5290
  */
4993
- region: 'cn' | 'us' | 'de' | 'gb';
5291
+ 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';
4994
5292
  requestBody: UpdateAccountDto;
4995
5293
  };
4996
5294
  type AccountControllerUpdateResponse = AccountResponseDto;
@@ -5002,7 +5300,7 @@ type AccountControllerDeleteData = {
5002
5300
  /**
5003
5301
  * Region code for tenant context
5004
5302
  */
5005
- region: 'cn' | 'us' | 'de' | 'gb';
5303
+ 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';
5006
5304
  };
5007
5305
  type AccountControllerDeleteResponse = void;
5008
5306
  type AccountControllerCloseData = {
@@ -5013,7 +5311,7 @@ type AccountControllerCloseData = {
5013
5311
  /**
5014
5312
  * Region code for tenant context
5015
5313
  */
5016
- region: 'cn' | 'us' | 'de' | 'gb';
5314
+ 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
5315
  requestBody: CloseAccountDto;
5018
5316
  };
5019
5317
  type AccountControllerCloseResponse = AccountResponseDto;
@@ -5025,7 +5323,7 @@ type AccountControllerReopenData = {
5025
5323
  /**
5026
5324
  * Region code for tenant context
5027
5325
  */
5028
- region: 'cn' | 'us' | 'de' | 'gb';
5326
+ 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';
5029
5327
  requestBody: ReopenAccountDto;
5030
5328
  };
5031
5329
  type AccountControllerReopenResponse = AccountResponseDto;
@@ -5037,7 +5335,7 @@ type AccountControllerAddOpeningBalanceData = {
5037
5335
  /**
5038
5336
  * Region code for tenant context
5039
5337
  */
5040
- region: 'cn' | 'us' | 'de' | 'gb';
5338
+ 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';
5041
5339
  requestBody: CreateOpeningBalanceDto;
5042
5340
  };
5043
5341
  type AccountControllerAddOpeningBalanceResponse = OpeningBalanceResultDto;
@@ -5045,7 +5343,7 @@ type AccountStandardsControllerGetTemplatesData = {
5045
5343
  /**
5046
5344
  * Region code (cn, us, de)
5047
5345
  */
5048
- region: 'cn' | 'us' | 'de' | 'gb';
5346
+ 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';
5049
5347
  /**
5050
5348
  * Search term for path or description
5051
5349
  */
@@ -5064,21 +5362,21 @@ type AccountStandardsControllerGetTemplateMetadataData = {
5064
5362
  /**
5065
5363
  * Region code for tenant context
5066
5364
  */
5067
- region: 'cn' | 'us' | 'de' | 'gb';
5365
+ 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';
5068
5366
  };
5069
5367
  type AccountStandardsControllerGetTemplateMetadataResponse = TemplateMetadataResponseDto;
5070
5368
  type AccountStandardsControllerGetRegionsData = {
5071
5369
  /**
5072
5370
  * Region code for tenant context
5073
5371
  */
5074
- region: 'cn' | 'us' | 'de' | 'gb';
5372
+ 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';
5075
5373
  };
5076
5374
  type AccountStandardsControllerGetRegionsResponse = RegionsMetadataResponseDto;
5077
5375
  type TransactionControllerCreateData = {
5078
5376
  /**
5079
5377
  * Region code for tenant context
5080
5378
  */
5081
- region: 'cn' | 'us' | 'de' | 'gb';
5379
+ 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';
5082
5380
  /**
5083
5381
  * Transaction data with postings
5084
5382
  */
@@ -5113,7 +5411,7 @@ type TransactionControllerListData = {
5113
5411
  /**
5114
5412
  * Region code for tenant context
5115
5413
  */
5116
- region: 'cn' | 'us' | 'de' | 'gb';
5414
+ 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';
5117
5415
  /**
5118
5416
  * Search in narration and payee fields (max 200 chars)
5119
5417
  */
@@ -5128,7 +5426,7 @@ type TransactionControllerCreateBatchData = {
5128
5426
  /**
5129
5427
  * Region code for tenant context
5130
5428
  */
5131
- region: 'cn' | 'us' | 'de' | 'gb';
5429
+ 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';
5132
5430
  requestBody: BatchCreateTransactionDto;
5133
5431
  };
5134
5432
  type TransactionControllerCreateBatchResponse = BatchTransactionResponseDto;
@@ -5140,7 +5438,7 @@ type TransactionControllerCorrectData = {
5140
5438
  /**
5141
5439
  * Region code for tenant context
5142
5440
  */
5143
- region: 'cn' | 'us' | 'de' | 'gb';
5441
+ 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';
5144
5442
  requestBody: CorrectTransactionDto;
5145
5443
  };
5146
5444
  type TransactionControllerCorrectResponse = TransactionDetailDto;
@@ -5156,7 +5454,7 @@ type TransactionControllerSuggestTagsData = {
5156
5454
  /**
5157
5455
  * Region code for tenant context
5158
5456
  */
5159
- region: 'cn' | 'us' | 'de' | 'gb';
5457
+ 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';
5160
5458
  /**
5161
5459
  * usage (default) or name
5162
5460
  */
@@ -5171,7 +5469,7 @@ type TransactionControllerGetDetailData = {
5171
5469
  /**
5172
5470
  * Region code for tenant context
5173
5471
  */
5174
- region: 'cn' | 'us' | 'de' | 'gb';
5472
+ 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';
5175
5473
  };
5176
5474
  type TransactionControllerGetDetailResponse = TransactionDetailDto;
5177
5475
  type TransactionControllerUpdateData = {
@@ -5182,7 +5480,7 @@ type TransactionControllerUpdateData = {
5182
5480
  /**
5183
5481
  * Region code for tenant context
5184
5482
  */
5185
- region: 'cn' | 'us' | 'de' | 'gb';
5483
+ 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';
5186
5484
  /**
5187
5485
  * Fields to update (all optional)
5188
5486
  */
@@ -5197,7 +5495,7 @@ type TransactionControllerDeleteData = {
5197
5495
  /**
5198
5496
  * Region code for tenant context
5199
5497
  */
5200
- region: 'cn' | 'us' | 'de' | 'gb';
5498
+ 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';
5201
5499
  };
5202
5500
  type TransactionControllerDeleteResponse = void;
5203
5501
  type BalanceControllerGetBalanceData = {
@@ -5216,14 +5514,14 @@ type BalanceControllerGetBalanceData = {
5216
5514
  /**
5217
5515
  * Region code for tenant context
5218
5516
  */
5219
- region: 'cn' | 'us' | 'de' | 'gb';
5517
+ 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';
5220
5518
  };
5221
5519
  type BalanceControllerGetBalanceResponse = BalanceResponseDto;
5222
5520
  type BalanceControllerGetMultiCurrencyBalanceData = {
5223
5521
  /**
5224
5522
  * Region code for tenant context
5225
5523
  */
5226
- region: 'cn' | 'us' | 'de' | 'gb';
5524
+ 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';
5227
5525
  };
5228
5526
  type BalanceControllerGetMultiCurrencyBalanceResponse = MultiCurrencyBalanceResponseDto;
5229
5527
  type ReviewControllerFindAllData = {
@@ -5242,7 +5540,7 @@ type ReviewControllerFindAllData = {
5242
5540
  /**
5243
5541
  * Region code for tenant context
5244
5542
  */
5245
- 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';
5246
5544
  /**
5247
5545
  * Sort order
5248
5546
  */
@@ -5257,7 +5555,7 @@ type ReviewControllerGetStatsData = {
5257
5555
  /**
5258
5556
  * Region code for tenant context
5259
5557
  */
5260
- region: 'cn' | 'us' | 'de' | 'gb';
5558
+ 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';
5261
5559
  };
5262
5560
  type ReviewControllerGetStatsResponse = ReviewStatsDto;
5263
5561
  type ReviewControllerFindOneData = {
@@ -5268,7 +5566,7 @@ type ReviewControllerFindOneData = {
5268
5566
  /**
5269
5567
  * Region code for tenant context
5270
5568
  */
5271
- region: 'cn' | 'us' | 'de' | 'gb';
5569
+ 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';
5272
5570
  };
5273
5571
  type ReviewControllerFindOneResponse = ReviewDetailDto;
5274
5572
  type ReviewControllerResolveData = {
@@ -5279,7 +5577,7 @@ type ReviewControllerResolveData = {
5279
5577
  /**
5280
5578
  * Region code for tenant context
5281
5579
  */
5282
- region: 'cn' | 'us' | 'de' | 'gb';
5580
+ 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';
5283
5581
  requestBody: ResolveReviewDto;
5284
5582
  };
5285
5583
  type ReviewControllerResolveResponse = ResolveResultDto;
@@ -5291,14 +5589,14 @@ type ReviewControllerUndoData = {
5291
5589
  /**
5292
5590
  * Region code for tenant context
5293
5591
  */
5294
- region: 'cn' | 'us' | 'de' | 'gb';
5592
+ 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';
5295
5593
  };
5296
5594
  type ReviewControllerUndoResponse = UndoResultDto;
5297
5595
  type ReviewControllerBatchResolveData = {
5298
5596
  /**
5299
5597
  * Region code for tenant context
5300
5598
  */
5301
- region: 'cn' | 'us' | 'de' | 'gb';
5599
+ 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';
5302
5600
  /**
5303
5601
  * Batch resolution request containing review IDs and action
5304
5602
  */
@@ -5443,7 +5741,7 @@ type CommodityControllerCreateData = {
5443
5741
  /**
5444
5742
  * Region code for tenant context
5445
5743
  */
5446
- region: 'cn' | 'us' | 'de' | 'gb';
5744
+ 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';
5447
5745
  requestBody: CreateCommodityDto;
5448
5746
  };
5449
5747
  type CommodityControllerCreateResponse = CommodityResponseDto;
@@ -5451,7 +5749,7 @@ type CommodityControllerFindAllData = {
5451
5749
  /**
5452
5750
  * Region code for tenant context
5453
5751
  */
5454
- region: 'cn' | 'us' | 'de' | 'gb';
5752
+ 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';
5455
5753
  /**
5456
5754
  * Search term for symbol or metadata fields (partial match). Searches symbol and metadata.name.
5457
5755
  */
@@ -5466,7 +5764,7 @@ type CommodityControllerFindOneData = {
5466
5764
  /**
5467
5765
  * Region code for tenant context
5468
5766
  */
5469
- region: 'cn' | 'us' | 'de' | 'gb';
5767
+ 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';
5470
5768
  /**
5471
5769
  * Commodity symbol
5472
5770
  */
@@ -5477,7 +5775,7 @@ type CommodityControllerUpdateData = {
5477
5775
  /**
5478
5776
  * Region code for tenant context
5479
5777
  */
5480
- region: 'cn' | 'us' | 'de' | 'gb';
5778
+ 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';
5481
5779
  requestBody: UpdateCommodityDto;
5482
5780
  /**
5483
5781
  * Commodity symbol
@@ -5489,7 +5787,7 @@ type CommodityControllerDeleteData = {
5489
5787
  /**
5490
5788
  * Region code for tenant context
5491
5789
  */
5492
- region: 'cn' | 'us' | 'de' | 'gb';
5790
+ 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';
5493
5791
  /**
5494
5792
  * Commodity symbol
5495
5793
  */
@@ -5500,7 +5798,7 @@ type CommodityControllerGetOrCreateData = {
5500
5798
  /**
5501
5799
  * Region code for tenant context
5502
5800
  */
5503
- region: 'cn' | 'us' | 'de' | 'gb';
5801
+ 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';
5504
5802
  /**
5505
5803
  * Commodity symbol
5506
5804
  */
@@ -5511,14 +5809,14 @@ type CommodityControllerBulkCreateData = {
5511
5809
  /**
5512
5810
  * Region code for tenant context
5513
5811
  */
5514
- region: 'cn' | 'us' | 'de' | 'gb';
5812
+ 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';
5515
5813
  };
5516
5814
  type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
5517
5815
  type PriceControllerCreateData = {
5518
5816
  /**
5519
5817
  * Region code for tenant context
5520
5818
  */
5521
- region: 'cn' | 'us' | 'de' | 'gb';
5819
+ 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';
5522
5820
  requestBody: CreateBeanPriceDto;
5523
5821
  };
5524
5822
  type PriceControllerCreateResponse = PriceResponseDto;
@@ -5550,7 +5848,7 @@ type PriceControllerFindAllData = {
5550
5848
  /**
5551
5849
  * Region code for tenant context
5552
5850
  */
5553
- region: 'cn' | 'us' | 'de' | 'gb';
5851
+ 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';
5554
5852
  /**
5555
5853
  * Search term for currency or quoteCurrency (case-insensitive partial match)
5556
5854
  */
@@ -5565,7 +5863,7 @@ type PriceControllerFindOneData = {
5565
5863
  /**
5566
5864
  * Region code for tenant context
5567
5865
  */
5568
- 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';
5569
5867
  };
5570
5868
  type PriceControllerFindOneResponse = PriceResponseDto;
5571
5869
  type PriceControllerUpdateData = {
@@ -5576,7 +5874,7 @@ type PriceControllerUpdateData = {
5576
5874
  /**
5577
5875
  * Region code for tenant context
5578
5876
  */
5579
- region: 'cn' | 'us' | 'de' | 'gb';
5877
+ 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';
5580
5878
  requestBody: UpdateBeanPriceDto;
5581
5879
  };
5582
5880
  type PriceControllerUpdateResponse = PriceResponseDto;
@@ -5588,14 +5886,14 @@ type PriceControllerDeleteData = {
5588
5886
  /**
5589
5887
  * Region code for tenant context
5590
5888
  */
5591
- region: 'cn' | 'us' | 'de' | 'gb';
5889
+ 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';
5592
5890
  };
5593
5891
  type PriceControllerDeleteResponse = void;
5594
5892
  type PriceControllerBulkCreateData = {
5595
5893
  /**
5596
5894
  * Region code for tenant context
5597
5895
  */
5598
- region: 'cn' | 'us' | 'de' | 'gb';
5896
+ 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';
5599
5897
  requestBody: Array<string>;
5600
5898
  };
5601
5899
  type PriceControllerBulkCreateResponse = Array<PriceResponseDto>;
@@ -5603,7 +5901,7 @@ type RecurringRuleControllerCreateData = {
5603
5901
  /**
5604
5902
  * Region code for tenant context
5605
5903
  */
5606
- 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';
5607
5905
  requestBody: CreateRecurringRuleDto;
5608
5906
  };
5609
5907
  type RecurringRuleControllerCreateResponse = RecurringRuleResponseDto;
@@ -5623,14 +5921,14 @@ type RecurringRuleControllerFindAllData = {
5623
5921
  /**
5624
5922
  * Region code for tenant context
5625
5923
  */
5626
- region: 'cn' | 'us' | 'de' | 'gb';
5924
+ 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';
5627
5925
  };
5628
5926
  type RecurringRuleControllerFindAllResponse = Array<RecurringRuleResponseDto>;
5629
5927
  type RecurringRuleControllerCreateFromTransactionData = {
5630
5928
  /**
5631
5929
  * Region code for tenant context
5632
5930
  */
5633
- region: 'cn' | 'us' | 'de' | 'gb';
5931
+ 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';
5634
5932
  requestBody: CreateRuleFromTransactionDto;
5635
5933
  /**
5636
5934
  * Source transaction ID
@@ -5646,7 +5944,7 @@ type RecurringRuleControllerFindOneData = {
5646
5944
  /**
5647
5945
  * Region code for tenant context
5648
5946
  */
5649
- region: 'cn' | 'us' | 'de' | 'gb';
5947
+ 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';
5650
5948
  };
5651
5949
  type RecurringRuleControllerFindOneResponse = RecurringRuleResponseDto;
5652
5950
  type RecurringRuleControllerUpdateData = {
@@ -5657,7 +5955,7 @@ type RecurringRuleControllerUpdateData = {
5657
5955
  /**
5658
5956
  * Region code for tenant context
5659
5957
  */
5660
- region: 'cn' | 'us' | 'de' | 'gb';
5958
+ 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';
5661
5959
  requestBody: UpdateRecurringRuleDto;
5662
5960
  };
5663
5961
  type RecurringRuleControllerUpdateResponse = RecurringRuleResponseDto;
@@ -5669,7 +5967,7 @@ type RecurringRuleControllerDeleteData = {
5669
5967
  /**
5670
5968
  * Region code for tenant context
5671
5969
  */
5672
- region: 'cn' | 'us' | 'de' | 'gb';
5970
+ 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';
5673
5971
  };
5674
5972
  type RecurringRuleControllerDeleteResponse = void;
5675
5973
  type RecurringRuleControllerGetWithStatsData = {
@@ -5680,7 +5978,7 @@ type RecurringRuleControllerGetWithStatsData = {
5680
5978
  /**
5681
5979
  * Region code for tenant context
5682
5980
  */
5683
- region: 'cn' | 'us' | 'de' | 'gb';
5981
+ 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';
5684
5982
  };
5685
5983
  type RecurringRuleControllerGetWithStatsResponse = RecurringRuleWithStatsResponseDto;
5686
5984
  type ExpectedTransactionControllerFindAllData = {
@@ -5691,7 +5989,7 @@ type ExpectedTransactionControllerFindAllData = {
5691
5989
  /**
5692
5990
  * Region code for tenant context
5693
5991
  */
5694
- region: 'cn' | 'us' | 'de' | 'gb';
5992
+ 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';
5695
5993
  /**
5696
5994
  * Filter by recurring rule ID
5697
5995
  */
@@ -5710,7 +6008,7 @@ type ExpectedTransactionControllerFindOverdueData = {
5710
6008
  /**
5711
6009
  * Region code for tenant context
5712
6010
  */
5713
- region: 'cn' | 'us' | 'de' | 'gb';
6011
+ 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';
5714
6012
  };
5715
6013
  type ExpectedTransactionControllerFindOverdueResponse = ExpectedTransactionListResponseDto;
5716
6014
  type ExpectedTransactionControllerFindOneData = {
@@ -5721,7 +6019,7 @@ type ExpectedTransactionControllerFindOneData = {
5721
6019
  /**
5722
6020
  * Region code for tenant context
5723
6021
  */
5724
- region: 'cn' | 'us' | 'de' | 'gb';
6022
+ 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';
5725
6023
  };
5726
6024
  type ExpectedTransactionControllerFindOneResponse = ExpectedTransactionResponseDto;
5727
6025
  type ExpectedTransactionControllerSkipData = {
@@ -5732,7 +6030,7 @@ type ExpectedTransactionControllerSkipData = {
5732
6030
  /**
5733
6031
  * Region code for tenant context
5734
6032
  */
5735
- region: 'cn' | 'us' | 'de' | 'gb';
6033
+ 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';
5736
6034
  };
5737
6035
  type ExpectedTransactionControllerSkipResponse = ExpectedTransactionResponseDto;
5738
6036
  type ExpectedTransactionControllerUndoSkipData = {
@@ -5743,7 +6041,7 @@ type ExpectedTransactionControllerUndoSkipData = {
5743
6041
  /**
5744
6042
  * Region code for tenant context
5745
6043
  */
5746
- region: 'cn' | 'us' | 'de' | 'gb';
6044
+ 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';
5747
6045
  };
5748
6046
  type ExpectedTransactionControllerUndoSkipResponse = ExpectedTransactionResponseDto;
5749
6047
  type ExpectedTransactionControllerConfirmMatchData = {
@@ -5754,7 +6052,7 @@ type ExpectedTransactionControllerConfirmMatchData = {
5754
6052
  /**
5755
6053
  * Region code for tenant context
5756
6054
  */
5757
- region: 'cn' | 'us' | 'de' | 'gb';
6055
+ 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';
5758
6056
  requestBody: ConfirmMatchDto;
5759
6057
  };
5760
6058
  type ExpectedTransactionControllerConfirmMatchResponse = unknown;
@@ -5766,7 +6064,7 @@ type ExpectedTransactionControllerUnmatchData = {
5766
6064
  /**
5767
6065
  * Region code for tenant context
5768
6066
  */
5769
- region: 'cn' | 'us' | 'de' | 'gb';
6067
+ 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';
5770
6068
  };
5771
6069
  type ExpectedTransactionControllerUnmatchResponse = unknown;
5772
6070
  type ExpectedTransactionControllerEnterNowData = {
@@ -5777,7 +6075,7 @@ type ExpectedTransactionControllerEnterNowData = {
5777
6075
  /**
5778
6076
  * Region code for tenant context
5779
6077
  */
5780
- region: 'cn' | 'us' | 'de' | 'gb';
6078
+ 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';
5781
6079
  requestBody: EnterNowDto;
5782
6080
  };
5783
6081
  type ExpectedTransactionControllerEnterNowResponse = unknown;
@@ -5789,128 +6087,58 @@ type ForecastControllerGetForecastData = {
5789
6087
  /**
5790
6088
  * Region code for tenant context
5791
6089
  */
5792
- region: 'cn' | 'us' | 'de' | 'gb';
6090
+ 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';
5793
6091
  };
5794
6092
  type ForecastControllerGetForecastResponse = ForecastResponseDto;
5795
- type TransactionRuleControllerCreateData = {
5796
- /**
5797
- * Region code for tenant context
5798
- */
5799
- region: 'cn' | 'us' | 'de' | 'gb';
5800
- requestBody: CreateTransactionRuleDto;
5801
- };
5802
- type TransactionRuleControllerCreateResponse = TransactionRuleResponseDto;
5803
- type TransactionRuleControllerListData = {
5804
- /**
5805
- * Filter by auto-apply status
5806
- */
5807
- autoApplyEnabled?: boolean;
5808
- /**
5809
- * Filter by enabled status
5810
- */
5811
- enabled?: boolean;
5812
- /**
5813
- * Filter by learning source. Omit this parameter or pass empty string to get manually created rules (learningSource is null in database).
5814
- */
5815
- learningSource?: 'NLP' | 'REVIEW_CENTER';
5816
- /**
5817
- * Max results per page (default: 20, max: 100)
5818
- */
5819
- limit?: number;
5820
- /**
5821
- * Pagination offset (default: 0)
5822
- */
5823
- offset?: number;
5824
- /**
5825
- * Region code for tenant context
5826
- */
5827
- region: 'cn' | 'us' | 'de' | 'gb';
5828
- };
5829
- type TransactionRuleControllerListResponse = TransactionRuleListResponseDto;
5830
- type TransactionRuleControllerValidateData = {
5831
- /**
5832
- * Region code for tenant context
5833
- */
5834
- region: 'cn' | 'us' | 'de' | 'gb';
5835
- requestBody: ValidateRuleDto;
5836
- };
5837
- type TransactionRuleControllerValidateResponse = ValidateRuleResponseDto;
5838
- type TransactionRuleControllerBulkCreateData = {
5839
- /**
5840
- * Region code for tenant context
5841
- */
5842
- region: 'cn' | 'us' | 'de' | 'gb';
5843
- requestBody: BulkCreateRulesDto;
5844
- };
5845
- type TransactionRuleControllerBulkCreateResponse = BulkCreateRulesResponseDto;
5846
- type TransactionRuleControllerExportData = {
5847
- /**
5848
- * Export format (currently only JSON supported)
5849
- */
5850
- format: 'json';
6093
+ type ReportingControllerGetPortfolioTrendsData = {
5851
6094
  /**
5852
- * Region code for tenant context
6095
+ * Data granularity
5853
6096
  */
5854
- region: 'cn' | 'us' | 'de' | 'gb';
5855
- };
5856
- type TransactionRuleControllerExportResponse = ExportRulesResponseDto;
5857
- type TransactionRuleControllerGetStatisticsData = {
6097
+ granularity?: 'day' | 'week' | 'month';
5858
6098
  /**
5859
- * Statistics time period
6099
+ * Time period
5860
6100
  */
5861
- period: '7d' | '30d' | '90d';
6101
+ period?: '1m' | '3m' | '6m' | '1y';
5862
6102
  /**
5863
6103
  * Region code for tenant context
5864
6104
  */
5865
- region: 'cn' | 'us' | 'de' | 'gb';
6105
+ 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';
5866
6106
  };
5867
- type TransactionRuleControllerGetStatisticsResponse = RuleStatisticsResponseDto;
5868
- type TransactionRuleControllerGetDetailData = {
6107
+ type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
6108
+ type ReportingControllerGetCashFlowTrendsData = {
5869
6109
  /**
5870
- * Region code for tenant context
6110
+ * Data granularity (accepted for API symmetry; v1 returns month buckets)
5871
6111
  */
5872
- region: 'cn' | 'us' | 'de' | 'gb';
6112
+ granularity?: 'day' | 'week' | 'month';
5873
6113
  /**
5874
- * Rule ID
6114
+ * Time period
5875
6115
  */
5876
- ruleId: string;
5877
- };
5878
- type TransactionRuleControllerGetDetailResponse = TransactionRuleResponseDto;
5879
- type TransactionRuleControllerUpdateData = {
6116
+ period?: '1m' | '3m' | '6m' | '1y';
5880
6117
  /**
5881
6118
  * Region code for tenant context
5882
6119
  */
5883
- region: 'cn' | 'us' | 'de' | 'gb';
5884
- requestBody: UpdateTransactionRuleDto;
5885
- /**
5886
- * Rule ID to update
5887
- */
5888
- ruleId: string;
6120
+ 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';
5889
6121
  };
5890
- type TransactionRuleControllerUpdateResponse = TransactionRuleResponseDto;
5891
- type TransactionRuleControllerDeleteData = {
6122
+ type ReportingControllerGetCashFlowTrendsResponse = CashFlowTrendsResponseDto;
6123
+ type ReportingControllerGenerateSnapshotData = {
5892
6124
  /**
5893
6125
  * Region code for tenant context
5894
6126
  */
5895
- region: 'cn' | 'us' | 'de' | 'gb';
6127
+ 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';
5896
6128
  /**
5897
- * Rule ID to delete
6129
+ * Optional date (defaults to today)
5898
6130
  */
5899
- ruleId: string;
6131
+ requestBody: GenerateSnapshotBody;
5900
6132
  };
5901
- type TransactionRuleControllerDeleteResponse = void;
5902
- type TransactionRuleControllerTestData = {
6133
+ type ReportingControllerGenerateSnapshotResponse = GenerateSnapshotResponse;
6134
+ type ReportingControllerBackfillSnapshotsData = {
5903
6135
  /**
5904
6136
  * Region code for tenant context
5905
6137
  */
5906
- region: 'cn' | 'us' | 'de' | 'gb';
5907
- requestBody: TestRuleDto;
5908
- /**
5909
- * Rule ID to test
5910
- */
5911
- ruleId: string;
6138
+ 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';
6139
+ requestBody: BackfillSnapshotsBody;
5912
6140
  };
5913
- type TransactionRuleControllerTestResponse = TestRuleResponseDto;
6141
+ type ReportingControllerBackfillSnapshotsResponse = BackfillSnapshotsResponse;
5914
6142
  type UserControllerDeleteOwnUserData = {
5915
6143
  requestBody: DeleteOwnUserDto;
5916
6144
  };
@@ -5918,7 +6146,7 @@ type UserControllerDeleteOwnUserResponse = void;
5918
6146
  type UserControllerGetUserData = {
5919
6147
  acceptLanguage: string;
5920
6148
  };
5921
- type UserControllerGetUserResponse = unknown;
6149
+ type UserControllerGetUserResponse = UserResponseDto;
5922
6150
  type UserControllerSignupUserData = {
5923
6151
  requestBody: SignupDto;
5924
6152
  };
@@ -5958,78 +6186,163 @@ type PropertyControllerGetByKeyData = {
5958
6186
  /**
5959
6187
  * Property key
5960
6188
  */
5961
- key: string;
6189
+ key: string;
6190
+ };
6191
+ type PropertyControllerGetByKeyResponse = unknown;
6192
+ type PropertyControllerUpdateData = {
6193
+ /**
6194
+ * Property key
6195
+ */
6196
+ key: string;
6197
+ requestBody: UpdatePropertyDto;
6198
+ };
6199
+ type PropertyControllerUpdateResponse = unknown;
6200
+ type PropertyControllerDeleteData = {
6201
+ /**
6202
+ * Property key
6203
+ */
6204
+ key: string;
6205
+ };
6206
+ type PropertyControllerDeleteResponse = void;
6207
+ type TransactionRuleControllerCreateData = {
6208
+ /**
6209
+ * Region code for tenant context
6210
+ */
6211
+ 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';
6212
+ requestBody: CreateTransactionRuleDto;
6213
+ };
6214
+ type TransactionRuleControllerCreateResponse = TransactionRuleResponseDto;
6215
+ type TransactionRuleControllerListData = {
6216
+ /**
6217
+ * Filter by auto-apply status
6218
+ */
6219
+ autoApplyEnabled?: boolean;
6220
+ /**
6221
+ * Filter by enabled status
6222
+ */
6223
+ enabled?: boolean;
6224
+ /**
6225
+ * Filter by learning source. Omit this parameter or pass empty string to get manually created rules (learningSource is null in database).
6226
+ */
6227
+ learningSource?: 'NLP' | 'REVIEW_CENTER';
6228
+ /**
6229
+ * Max results per page (default: 20, max: 100)
6230
+ */
6231
+ limit?: number;
6232
+ /**
6233
+ * Pagination offset (default: 0)
6234
+ */
6235
+ offset?: number;
6236
+ /**
6237
+ * Region code for tenant context
6238
+ */
6239
+ 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';
6240
+ };
6241
+ type TransactionRuleControllerListResponse = TransactionRuleListResponseDto;
6242
+ type TransactionRuleControllerValidateData = {
6243
+ /**
6244
+ * Region code for tenant context
6245
+ */
6246
+ 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';
6247
+ requestBody: ValidateRuleDto;
6248
+ };
6249
+ type TransactionRuleControllerValidateResponse = ValidateRuleResponseDto;
6250
+ type TransactionRuleControllerBulkCreateData = {
6251
+ /**
6252
+ * Region code for tenant context
6253
+ */
6254
+ 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';
6255
+ requestBody: BulkCreateRulesDto;
5962
6256
  };
5963
- type PropertyControllerGetByKeyResponse = unknown;
5964
- type PropertyControllerUpdateData = {
6257
+ type TransactionRuleControllerBulkCreateResponse = BulkCreateRulesResponseDto;
6258
+ type TransactionRuleControllerExportData = {
5965
6259
  /**
5966
- * Property key
6260
+ * Export format (currently only JSON supported)
5967
6261
  */
5968
- key: string;
5969
- requestBody: UpdatePropertyDto;
5970
- };
5971
- type PropertyControllerUpdateResponse = unknown;
5972
- type PropertyControllerDeleteData = {
6262
+ format: 'json';
5973
6263
  /**
5974
- * Property key
6264
+ * Region code for tenant context
5975
6265
  */
5976
- key: string;
6266
+ 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';
5977
6267
  };
5978
- type PropertyControllerDeleteResponse = void;
5979
- type ReportingControllerGetPortfolioTrendsData = {
6268
+ type TransactionRuleControllerExportResponse = ExportRulesResponseDto;
6269
+ type TransactionRuleControllerGetStatisticsData = {
5980
6270
  /**
5981
- * Data granularity
6271
+ * Statistics time period
5982
6272
  */
5983
- granularity?: 'day' | 'week' | 'month';
6273
+ period: '7d' | '30d' | '90d';
5984
6274
  /**
5985
- * Time period
6275
+ * Region code for tenant context
5986
6276
  */
5987
- period?: '1m' | '3m' | '6m' | '1y';
6277
+ 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';
6278
+ };
6279
+ type TransactionRuleControllerGetStatisticsResponse = RuleStatisticsResponseDto;
6280
+ type TransactionRuleControllerGetDetailData = {
5988
6281
  /**
5989
6282
  * Region code for tenant context
5990
6283
  */
5991
- region: 'cn' | 'us' | 'de' | 'gb';
6284
+ 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';
6285
+ /**
6286
+ * Rule ID
6287
+ */
6288
+ ruleId: string;
5992
6289
  };
5993
- type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
5994
- type ReportingControllerGetCashFlowTrendsData = {
6290
+ type TransactionRuleControllerGetDetailResponse = TransactionRuleResponseDto;
6291
+ type TransactionRuleControllerUpdateData = {
5995
6292
  /**
5996
- * Data granularity (accepted for API symmetry; v1 returns month buckets)
6293
+ * Region code for tenant context
5997
6294
  */
5998
- granularity?: 'day' | 'week' | 'month';
6295
+ 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';
6296
+ requestBody: UpdateTransactionRuleDto;
5999
6297
  /**
6000
- * Time period
6298
+ * Rule ID to update
6001
6299
  */
6002
- period?: '1m' | '3m' | '6m' | '1y';
6300
+ ruleId: string;
6301
+ };
6302
+ type TransactionRuleControllerUpdateResponse = TransactionRuleResponseDto;
6303
+ type TransactionRuleControllerDeleteData = {
6003
6304
  /**
6004
6305
  * Region code for tenant context
6005
6306
  */
6006
- region: 'cn' | 'us' | 'de' | 'gb';
6307
+ 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';
6308
+ /**
6309
+ * Rule ID to delete
6310
+ */
6311
+ ruleId: string;
6007
6312
  };
6008
- type ReportingControllerGetCashFlowTrendsResponse = CashFlowTrendsResponseDto;
6009
- type ReportingControllerGenerateSnapshotData = {
6313
+ type TransactionRuleControllerDeleteResponse = void;
6314
+ type TransactionRuleControllerTestData = {
6010
6315
  /**
6011
6316
  * Region code for tenant context
6012
6317
  */
6013
- region: 'cn' | 'us' | 'de' | 'gb';
6318
+ 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';
6319
+ requestBody: TestRuleDto;
6014
6320
  /**
6015
- * Optional date (defaults to today)
6321
+ * Rule ID to test
6016
6322
  */
6017
- requestBody: GenerateSnapshotBody;
6323
+ ruleId: string;
6018
6324
  };
6019
- type ReportingControllerGenerateSnapshotResponse = GenerateSnapshotResponse;
6020
- type ReportingControllerBackfillSnapshotsData = {
6325
+ type TransactionRuleControllerTestResponse = TestRuleResponseDto;
6326
+ type CategoryCatalogControllerListData = {
6021
6327
  /**
6022
6328
  * Region code for tenant context
6023
6329
  */
6024
- region: 'cn' | 'us' | 'de' | 'gb';
6025
- requestBody: BackfillSnapshotsBody;
6330
+ 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';
6331
+ /**
6332
+ * Filter by routeBearing (entity-router route() consumes it)
6333
+ */
6334
+ routeBearing?: boolean;
6335
+ /**
6336
+ * Filter by scenario
6337
+ */
6338
+ scenario?: 'expense' | 'income' | 'investment' | 'banking' | 'transfer' | 'payment';
6026
6339
  };
6027
- type ReportingControllerBackfillSnapshotsResponse = BackfillSnapshotsResponse;
6340
+ type CategoryCatalogControllerListResponse = CategoryCatalogListResponseDto;
6028
6341
  type EventControllerCreateData = {
6029
6342
  /**
6030
6343
  * Region code for tenant context (decorative for life events)
6031
6344
  */
6032
- region: 'cn' | 'us' | 'de' | 'gb';
6345
+ 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';
6033
6346
  requestBody: CreateBeanEventDto;
6034
6347
  };
6035
6348
  type EventControllerCreateResponse = EventResponseDto;
@@ -6053,7 +6366,7 @@ type EventControllerFindAllData = {
6053
6366
  /**
6054
6367
  * Region code for tenant context (decorative for life events)
6055
6368
  */
6056
- region: 'cn' | 'us' | 'de' | 'gb';
6369
+ 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';
6057
6370
  /**
6058
6371
  * Filter life events to this date (ISO 8601 format)
6059
6372
  */
@@ -6072,7 +6385,7 @@ type EventControllerFindOneData = {
6072
6385
  /**
6073
6386
  * Region code for tenant context (decorative for life events)
6074
6387
  */
6075
- region: 'cn' | 'us' | 'de' | 'gb';
6388
+ 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';
6076
6389
  };
6077
6390
  type EventControllerFindOneResponse = EventResponseDto;
6078
6391
  type EventControllerUpdateData = {
@@ -6083,7 +6396,7 @@ type EventControllerUpdateData = {
6083
6396
  /**
6084
6397
  * Region code for tenant context (decorative for life events)
6085
6398
  */
6086
- region: 'cn' | 'us' | 'de' | 'gb';
6399
+ 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';
6087
6400
  requestBody: UpdateBeanEventDto;
6088
6401
  };
6089
6402
  type EventControllerUpdateResponse = EventResponseDto;
@@ -6095,7 +6408,7 @@ type EventControllerDeleteData = {
6095
6408
  /**
6096
6409
  * Region code for tenant context (decorative for life events)
6097
6410
  */
6098
- region: 'cn' | 'us' | 'de' | 'gb';
6411
+ 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';
6099
6412
  };
6100
6413
  type EventControllerDeleteResponse = void;
6101
6414
  type EventControllerGetSliceData = {
@@ -6108,14 +6421,14 @@ type EventControllerGetSliceData = {
6108
6421
  /**
6109
6422
  * Region code for tenant context (decorative for life events)
6110
6423
  */
6111
- region: 'cn' | 'us' | 'de' | 'gb';
6424
+ 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';
6112
6425
  };
6113
6426
  type EventControllerGetSliceResponse = unknown;
6114
6427
  type OnboardingControllerBootstrapData = {
6115
6428
  /**
6116
6429
  * Region code for tenant context
6117
6430
  */
6118
- region: 'cn' | 'us' | 'de' | 'gb';
6431
+ 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';
6119
6432
  requestBody: OnboardingDto;
6120
6433
  };
6121
6434
  type OnboardingControllerBootstrapResponse = unknown;
@@ -6123,7 +6436,7 @@ type ReconciliationControllerComputeData = {
6123
6436
  /**
6124
6437
  * Region code for tenant context (decorative for reconciliation)
6125
6438
  */
6126
- region: 'cn' | 'us' | 'de' | 'gb';
6439
+ 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';
6127
6440
  requestBody: ComputeReconciliationDto;
6128
6441
  };
6129
6442
  type ReconciliationControllerComputeResponse = ReconciliationComputeResultDto;
@@ -6131,7 +6444,7 @@ type ReconciliationControllerAssertData = {
6131
6444
  /**
6132
6445
  * Region code for tenant context (decorative for reconciliation)
6133
6446
  */
6134
- region: 'cn' | 'us' | 'de' | 'gb';
6447
+ 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
6448
  requestBody: AssertReconciliationDto;
6136
6449
  };
6137
6450
  type ReconciliationControllerAssertResponse = ReconciliationRecordDto;
@@ -6139,7 +6452,7 @@ type ReconciliationControllerPadData = {
6139
6452
  /**
6140
6453
  * Region code for tenant context (decorative for reconciliation)
6141
6454
  */
6142
- region: 'cn' | 'us' | 'de' | 'gb';
6455
+ 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';
6143
6456
  requestBody: PadReconciliationDto;
6144
6457
  };
6145
6458
  type ReconciliationControllerPadResponse = PadResultDto;
@@ -6151,7 +6464,7 @@ type ReconciliationControllerHistoryData = {
6151
6464
  /**
6152
6465
  * Region code for tenant context (decorative for reconciliation)
6153
6466
  */
6154
- region: 'cn' | 'us' | 'de' | 'gb';
6467
+ 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';
6155
6468
  };
6156
6469
  type ReconciliationControllerHistoryResponse = Array<ReconciliationRecordDto>;
6157
6470
  type ExportControllerExportBeancountResponse = unknown;
@@ -6163,7 +6476,7 @@ type FileImportControllerImportFileData = {
6163
6476
  /**
6164
6477
  * Region code for tenant context
6165
6478
  */
6166
- region: 'cn' | 'us' | 'de' | 'gb';
6479
+ 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';
6167
6480
  };
6168
6481
  type FileImportControllerImportFileResponse = ImportResultDto;
6169
6482
  type FileImportControllerIdentifyFileData = {
@@ -6174,7 +6487,7 @@ type FileImportControllerIdentifyFileData = {
6174
6487
  /**
6175
6488
  * Region code for tenant context
6176
6489
  */
6177
- region: 'cn' | 'us' | 'de' | 'gb';
6490
+ 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';
6178
6491
  };
6179
6492
  type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
6180
6493
  type FileImportControllerImportBeancountData = {
@@ -6185,7 +6498,7 @@ type FileImportControllerImportBeancountData = {
6185
6498
  /**
6186
6499
  * Region code for tenant context
6187
6500
  */
6188
- region: 'cn' | 'us' | 'de' | 'gb';
6501
+ 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';
6189
6502
  };
6190
6503
  type FileImportControllerImportBeancountResponse = {
6191
6504
  imported?: number;
@@ -6204,7 +6517,7 @@ type ImporterConfigControllerGetConfigData = {
6204
6517
  /**
6205
6518
  * Region code for tenant context
6206
6519
  */
6207
- region: 'cn' | 'us' | 'de' | 'gb';
6520
+ 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';
6208
6521
  };
6209
6522
  type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
6210
6523
  type ImporterConfigControllerUpdateConfigData = {
@@ -6215,7 +6528,7 @@ type ImporterConfigControllerUpdateConfigData = {
6215
6528
  /**
6216
6529
  * Region code for tenant context
6217
6530
  */
6218
- region: 'cn' | 'us' | 'de' | 'gb';
6531
+ 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';
6219
6532
  /**
6220
6533
  * Partial configuration update. Only provided fields will be updated.
6221
6534
  */
@@ -6230,7 +6543,7 @@ type ImporterConfigControllerResetConfigData = {
6230
6543
  /**
6231
6544
  * Region code for tenant context
6232
6545
  */
6233
- region: 'cn' | 'us' | 'de' | 'gb';
6546
+ 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';
6234
6547
  };
6235
6548
  type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
6236
6549
  type ProviderSyncControllerSyncData = {
@@ -6241,7 +6554,7 @@ type ProviderSyncControllerSyncData = {
6241
6554
  /**
6242
6555
  * Region code for tenant context
6243
6556
  */
6244
- region: 'cn' | 'us' | 'de' | 'gb';
6557
+ 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';
6245
6558
  requestBody: ProviderSyncDto;
6246
6559
  };
6247
6560
  type ProviderSyncControllerSyncResponse = ProviderSyncResponseDto;
@@ -6249,7 +6562,7 @@ type ProviderSyncControllerGetSupportedProvidersData = {
6249
6562
  /**
6250
6563
  * Region code for tenant context
6251
6564
  */
6252
- region: 'cn' | 'us' | 'de' | 'gb';
6565
+ 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
6566
  };
6254
6567
  type ProviderSyncControllerGetSupportedProvidersResponse = SupportedProvidersResponseDto;
6255
6568
  type ProviderSyncControllerIsProviderSupportedData = {
@@ -6260,14 +6573,14 @@ type ProviderSyncControllerIsProviderSupportedData = {
6260
6573
  /**
6261
6574
  * Region code for tenant context
6262
6575
  */
6263
- region: 'cn' | 'us' | 'de' | 'gb';
6576
+ 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';
6264
6577
  };
6265
6578
  type ProviderSyncControllerIsProviderSupportedResponse = unknown;
6266
6579
  type ExternalAccountLinkControllerCreateData = {
6267
6580
  /**
6268
6581
  * Region code for tenant context
6269
6582
  */
6270
- region: 'cn' | 'us' | 'de' | 'gb';
6583
+ 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';
6271
6584
  requestBody: CreateExternalAccountLinkDto;
6272
6585
  };
6273
6586
  type ExternalAccountLinkControllerCreateResponse = ExternalAccountLinkResponseDto;
@@ -6276,7 +6589,7 @@ type ExternalAccountLinkControllerFindAllData = {
6276
6589
  /**
6277
6590
  * Region code for tenant context
6278
6591
  */
6279
- region: 'cn' | 'us' | 'de' | 'gb';
6592
+ 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';
6280
6593
  };
6281
6594
  type ExternalAccountLinkControllerFindAllResponse = ExternalAccountLinkListResponseDto;
6282
6595
  type ExternalAccountLinkControllerFindOneData = {
@@ -6284,7 +6597,7 @@ type ExternalAccountLinkControllerFindOneData = {
6284
6597
  /**
6285
6598
  * Region code for tenant context
6286
6599
  */
6287
- region: 'cn' | 'us' | 'de' | 'gb';
6600
+ 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';
6288
6601
  };
6289
6602
  type ExternalAccountLinkControllerFindOneResponse = ExternalAccountLinkResponseDto;
6290
6603
  type ExternalAccountLinkControllerRemoveData = {
@@ -6292,14 +6605,14 @@ type ExternalAccountLinkControllerRemoveData = {
6292
6605
  /**
6293
6606
  * Region code for tenant context
6294
6607
  */
6295
- region: 'cn' | 'us' | 'de' | 'gb';
6608
+ 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';
6296
6609
  };
6297
6610
  type ExternalAccountLinkControllerRemoveResponse = void;
6298
6611
  type TelemetryControllerReportTelemetryData = {
6299
6612
  /**
6300
6613
  * Region code for tenant context
6301
6614
  */
6302
- 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';
6303
6616
  requestBody: ParserTelemetryReportDto;
6304
6617
  };
6305
6618
  type TelemetryControllerReportTelemetryResponse = unknown;
@@ -6307,7 +6620,7 @@ type TelemetryControllerReportCoverageMissData = {
6307
6620
  /**
6308
6621
  * Region code for tenant context
6309
6622
  */
6310
- region: 'cn' | 'us' | 'de' | 'gb';
6623
+ 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';
6311
6624
  requestBody: UncoveredFormatMissDto;
6312
6625
  };
6313
6626
  type TelemetryControllerReportCoverageMissResponse = unknown;
@@ -6315,7 +6628,7 @@ type TelemetryControllerGetCoverageMetricsData = {
6315
6628
  /**
6316
6629
  * Region code for tenant context
6317
6630
  */
6318
- region: 'cn' | 'us' | 'de' | 'gb';
6631
+ 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';
6319
6632
  /**
6320
6633
  * Top-N uncovered formats (default 10)
6321
6634
  */
@@ -6326,7 +6639,7 @@ type NlpControllerProcessNaturalLanguageData = {
6326
6639
  /**
6327
6640
  * Region code for tenant context
6328
6641
  */
6329
- region: 'cn' | 'us' | 'de' | 'gb';
6642
+ 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';
6330
6643
  /**
6331
6644
  * Natural language transaction input with optional session ID
6332
6645
  */
@@ -6337,7 +6650,7 @@ type NlpControllerClearSessionData = {
6337
6650
  /**
6338
6651
  * Region code for tenant context
6339
6652
  */
6340
- region: 'cn' | 'us' | 'de' | 'gb';
6653
+ 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';
6341
6654
  /**
6342
6655
  * Specific session ID to clear (defaults to user session)
6343
6656
  */
@@ -6348,7 +6661,7 @@ type NlpControllerGetSessionData = {
6348
6661
  /**
6349
6662
  * Region code for tenant context
6350
6663
  */
6351
- region: 'cn' | 'us' | 'de' | 'gb';
6664
+ 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';
6352
6665
  /**
6353
6666
  * Specific session ID to get (defaults to user session)
6354
6667
  */
@@ -6360,6 +6673,12 @@ type PlatformControllerCreateData = {
6360
6673
  requestBody: CreatePlatformDto;
6361
6674
  };
6362
6675
  type PlatformControllerCreateResponse = unknown;
6676
+ type PlatformControllerGetPlatformListData = {
6677
+ /**
6678
+ * Region code (ISO 3166-1 alpha-2) that biases within-type-bucket ordering (local-region platforms first). Case-insensitive — stored/compared UPPERCASE ("cn" == "CN").
6679
+ */
6680
+ region?: string;
6681
+ };
6363
6682
  type PlatformControllerGetPlatformListResponse = Array<PlatformListItemDto>;
6364
6683
  type PlatformControllerMatchPlatformsData = {
6365
6684
  /**
@@ -6367,7 +6686,7 @@ type PlatformControllerMatchPlatformsData = {
6367
6686
  */
6368
6687
  q: string;
6369
6688
  /**
6370
- * Region code for category override lookup
6689
+ * 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").
6371
6690
  */
6372
6691
  region?: string;
6373
6692
  };
@@ -6395,7 +6714,7 @@ type DashboardControllerGetNetWorthData = {
6395
6714
  /**
6396
6715
  * Region code for tenant context
6397
6716
  */
6398
- region: 'cn' | 'us' | 'de' | 'gb';
6717
+ 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';
6399
6718
  };
6400
6719
  type DashboardControllerGetNetWorthResponse = NetWorthResponseDto;
6401
6720
  type DashboardControllerGetAccountsData = {
@@ -6414,7 +6733,7 @@ type DashboardControllerGetAccountsData = {
6414
6733
  /**
6415
6734
  * Region code for tenant context
6416
6735
  */
6417
- region: 'cn' | 'us' | 'de' | 'gb';
6736
+ 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';
6418
6737
  };
6419
6738
  type DashboardControllerGetAccountsResponse = AccountsResponseDto | AssetClassAccountsResponseDto | HoldingAssetClassCrossAccountResponseDto;
6420
6739
  type DashboardControllerGetCashFlowData = {
@@ -6425,7 +6744,7 @@ type DashboardControllerGetCashFlowData = {
6425
6744
  /**
6426
6745
  * Region code for tenant context
6427
6746
  */
6428
- region: 'cn' | 'us' | 'de' | 'gb';
6747
+ 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';
6429
6748
  };
6430
6749
  type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
6431
6750
  type DashboardControllerGetExpensesData = {
@@ -6444,7 +6763,7 @@ type DashboardControllerGetExpensesData = {
6444
6763
  /**
6445
6764
  * Region code for tenant context
6446
6765
  */
6447
- region: 'cn' | 'us' | 'de' | 'gb';
6766
+ 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';
6448
6767
  };
6449
6768
  type DashboardControllerGetExpensesResponse = ExpensesByCategoryResponseDto;
6450
6769
  type HoldingPnlControllerGetHoldingPnlData = {
@@ -6463,7 +6782,7 @@ type HoldingPnlControllerGetHoldingPnlData = {
6463
6782
  /**
6464
6783
  * Region code for tenant context
6465
6784
  */
6466
- region: 'cn' | 'us' | 'de' | 'gb';
6785
+ 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';
6467
6786
  };
6468
6787
  type HoldingPnlControllerGetHoldingPnlResponse = HoldingPnlResponseDto;
6469
6788
  type ApiKeysControllerCreateApiKeyResponse = unknown;
@@ -6497,6 +6816,29 @@ type HealthControllerResetCircuitBreakerData = {
6497
6816
  type HealthControllerResetCircuitBreakerResponse = unknown;
6498
6817
  type HealthControllerGetMetricsResponse = unknown;
6499
6818
  type InfoControllerGetInfoResponse = unknown;
6819
+ type SymbolControllerSearchData = {
6820
+ /**
6821
+ * Filter by OpenBB asset_type (e.g. stock, etf)
6822
+ */
6823
+ assetType?: string;
6824
+ /**
6825
+ * Filter by exchange code (e.g. US, HK, SS, SZ)
6826
+ */
6827
+ exchange?: string;
6828
+ /**
6829
+ * Maximum number of results (clamped 1..50)
6830
+ */
6831
+ limit?: number;
6832
+ /**
6833
+ * Search term — matched against symbol and instrument name. Empty string returns [].
6834
+ */
6835
+ q: string;
6836
+ };
6837
+ type SymbolControllerSearchResponse = Array<SymbolSearchResultDto>;
6838
+ type SymbolControllerGetQuoteData = {
6839
+ symbol: string;
6840
+ };
6841
+ type SymbolControllerGetQuoteResponse = SymbolQuoteDto;
6500
6842
  type $OpenApiTs = {
6501
6843
  '/api/v1/{region}/bean/accounts': {
6502
6844
  post: {
@@ -6561,7 +6903,7 @@ type $OpenApiTs = {
6561
6903
  */
6562
6904
  404: unknown;
6563
6905
  /**
6564
- * Account has transactions and cannot be deleted
6906
+ * Account has active transactions and cannot be deleted
6565
6907
  */
6566
6908
  409: unknown;
6567
6909
  };
@@ -7566,211 +7908,75 @@ type $OpenApiTs = {
7566
7908
  };
7567
7909
  };
7568
7910
  };
7569
- '/api/v1/{region}/bean/transaction-rules': {
7570
- post: {
7571
- req: TransactionRuleControllerCreateData;
7572
- res: {
7573
- /**
7574
- * Rule updated successfully (upsert mode)
7575
- */
7576
- 200: TransactionRuleResponseDto;
7577
- /**
7578
- * Validation failed
7579
- */
7580
- 400: ApiProblemResponseDto;
7581
- /**
7582
- * Unauthorized
7583
- */
7584
- 401: ApiProblemResponseDto;
7585
- /**
7586
- * Resource conflict - another process is updating this rule
7587
- */
7588
- 409: ApiProblemResponseDto;
7589
- };
7590
- };
7591
- get: {
7592
- req: TransactionRuleControllerListData;
7593
- res: {
7594
- /**
7595
- * List of rules
7596
- */
7597
- 200: TransactionRuleListResponseDto;
7598
- /**
7599
- * Unauthorized
7600
- */
7601
- 401: ApiProblemResponseDto;
7602
- };
7603
- };
7604
- };
7605
- '/api/v1/{region}/bean/transaction-rules/validate': {
7606
- post: {
7607
- req: TransactionRuleControllerValidateData;
7608
- res: {
7609
- /**
7610
- * Validation result
7611
- */
7612
- 200: ValidateRuleResponseDto;
7613
- /**
7614
- * Validation failed
7615
- */
7616
- 400: ApiProblemResponseDto;
7617
- /**
7618
- * Unauthorized
7619
- */
7620
- 401: ApiProblemResponseDto;
7621
- };
7622
- };
7623
- };
7624
- '/api/v1/{region}/bean/transaction-rules/bulk': {
7625
- post: {
7626
- req: TransactionRuleControllerBulkCreateData;
7627
- res: {
7628
- /**
7629
- * Bulk create completed
7630
- */
7631
- 201: BulkCreateRulesResponseDto;
7632
- /**
7633
- * Invalid bulk create data
7634
- */
7635
- 400: ApiProblemResponseDto;
7636
- /**
7637
- * Unauthorized
7638
- */
7639
- 401: ApiProblemResponseDto;
7640
- };
7641
- };
7642
- };
7643
- '/api/v1/{region}/bean/transaction-rules/export/{format}': {
7911
+ '/api/v1/{region}/reporting/portfolio/trends': {
7644
7912
  get: {
7645
- req: TransactionRuleControllerExportData;
7913
+ req: ReportingControllerGetPortfolioTrendsData;
7646
7914
  res: {
7647
7915
  /**
7648
- * Exported rules
7649
- */
7650
- 200: ExportRulesResponseDto;
7651
- /**
7652
- * Unsupported format
7916
+ * Trends retrieved successfully
7653
7917
  */
7654
- 400: ApiProblemResponseDto;
7918
+ 200: PortfolioTrendsResponseDto;
7655
7919
  /**
7656
- * Unauthorized
7920
+ * User not authenticated
7657
7921
  */
7658
- 401: ApiProblemResponseDto;
7922
+ 401: unknown;
7659
7923
  };
7660
7924
  };
7661
7925
  };
7662
- '/api/v1/{region}/bean/transaction-rules/statistics/{period}': {
7926
+ '/api/v1/{region}/reporting/cash-flow/trends': {
7663
7927
  get: {
7664
- req: TransactionRuleControllerGetStatisticsData;
7928
+ req: ReportingControllerGetCashFlowTrendsData;
7665
7929
  res: {
7666
7930
  /**
7667
- * Rule statistics
7931
+ * Cash-flow trends retrieved successfully
7668
7932
  */
7669
- 200: RuleStatisticsResponseDto;
7933
+ 200: CashFlowTrendsResponseDto;
7670
7934
  /**
7671
- * Unauthorized
7935
+ * User not authenticated
7672
7936
  */
7673
- 401: ApiProblemResponseDto;
7937
+ 401: unknown;
7674
7938
  };
7675
7939
  };
7676
7940
  };
7677
- '/api/v1/{region}/bean/transaction-rules/{ruleId}': {
7678
- get: {
7679
- req: TransactionRuleControllerGetDetailData;
7680
- res: {
7681
- /**
7682
- * Rule details
7683
- */
7684
- 200: TransactionRuleResponseDto;
7685
- /**
7686
- * Unauthorized
7687
- */
7688
- 401: ApiProblemResponseDto;
7689
- /**
7690
- * Forbidden - not owner of rule
7691
- */
7692
- 403: ApiProblemResponseDto;
7693
- /**
7694
- * Rule not found
7695
- */
7696
- 404: ApiProblemResponseDto;
7697
- };
7698
- };
7699
- put: {
7700
- req: TransactionRuleControllerUpdateData;
7701
- res: {
7702
- /**
7703
- * Rule updated successfully
7704
- */
7705
- 200: TransactionRuleResponseDto;
7706
- /**
7707
- * Validation failed
7708
- */
7709
- 400: ApiProblemResponseDto;
7710
- /**
7711
- * Unauthorized
7712
- */
7713
- 401: ApiProblemResponseDto;
7714
- /**
7715
- * Forbidden - not owner of rule
7716
- */
7717
- 403: ApiProblemResponseDto;
7718
- /**
7719
- * Rule not found
7720
- */
7721
- 404: ApiProblemResponseDto;
7722
- /**
7723
- * Resource conflict - rule is being modified by another process
7724
- */
7725
- 409: ApiProblemResponseDto;
7726
- };
7727
- };
7728
- delete: {
7729
- req: TransactionRuleControllerDeleteData;
7730
- res: {
7731
- /**
7732
- * Rule deleted successfully
7733
- */
7734
- 204: void;
7735
- /**
7736
- * Unauthorized
7737
- */
7738
- 401: ApiProblemResponseDto;
7941
+ '/api/v1/{region}/reporting/snapshots/generate': {
7942
+ post: {
7943
+ req: ReportingControllerGenerateSnapshotData;
7944
+ res: {
7739
7945
  /**
7740
- * Forbidden - not owner of rule
7946
+ * Snapshot generated successfully
7741
7947
  */
7742
- 403: ApiProblemResponseDto;
7948
+ 200: GenerateSnapshotResponse;
7743
7949
  /**
7744
- * Rule not found
7950
+ * Invalid date format
7745
7951
  */
7746
- 404: ApiProblemResponseDto;
7952
+ 400: unknown;
7747
7953
  /**
7748
- * Resource conflict - rule is being modified by another process
7954
+ * User not authenticated
7749
7955
  */
7750
- 409: ApiProblemResponseDto;
7956
+ 401: unknown;
7751
7957
  };
7752
7958
  };
7753
7959
  };
7754
- '/api/v1/{region}/bean/transaction-rules/{ruleId}/test': {
7960
+ '/api/v1/{region}/reporting/snapshots/backfill': {
7755
7961
  post: {
7756
- req: TransactionRuleControllerTestData;
7962
+ req: ReportingControllerBackfillSnapshotsData;
7757
7963
  res: {
7758
7964
  /**
7759
- * Test result
7965
+ * Backfill completed successfully
7760
7966
  */
7761
- 200: TestRuleResponseDto;
7967
+ 200: BackfillSnapshotsResponse;
7762
7968
  /**
7763
- * Unauthorized
7969
+ * Invalid date format or range
7764
7970
  */
7765
- 401: ApiProblemResponseDto;
7971
+ 400: unknown;
7766
7972
  /**
7767
- * Forbidden - not owner of rule
7973
+ * User not authenticated
7768
7974
  */
7769
- 403: ApiProblemResponseDto;
7975
+ 401: unknown;
7770
7976
  /**
7771
- * Rule not found
7977
+ * Backfill already in progress for this user
7772
7978
  */
7773
- 404: ApiProblemResponseDto;
7979
+ 409: unknown;
7774
7980
  };
7775
7981
  };
7776
7982
  };
@@ -7794,7 +8000,7 @@ type $OpenApiTs = {
7794
8000
  /**
7795
8001
  * User retrieved successfully
7796
8002
  */
7797
- 200: unknown;
8003
+ 200: UserResponseDto;
7798
8004
  };
7799
8005
  };
7800
8006
  post: {
@@ -7960,75 +8166,222 @@ type $OpenApiTs = {
7960
8166
  };
7961
8167
  };
7962
8168
  };
7963
- '/api/v1/{region}/reporting/portfolio/trends': {
8169
+ '/api/v1/{region}/bean/transaction-rules': {
8170
+ post: {
8171
+ req: TransactionRuleControllerCreateData;
8172
+ res: {
8173
+ /**
8174
+ * Rule updated successfully (upsert mode)
8175
+ */
8176
+ 200: TransactionRuleResponseDto;
8177
+ /**
8178
+ * Validation failed
8179
+ */
8180
+ 400: ApiProblemResponseDto;
8181
+ /**
8182
+ * Unauthorized
8183
+ */
8184
+ 401: ApiProblemResponseDto;
8185
+ /**
8186
+ * Resource conflict - another process is updating this rule
8187
+ */
8188
+ 409: ApiProblemResponseDto;
8189
+ };
8190
+ };
7964
8191
  get: {
7965
- req: ReportingControllerGetPortfolioTrendsData;
8192
+ req: TransactionRuleControllerListData;
7966
8193
  res: {
7967
8194
  /**
7968
- * Trends retrieved successfully
8195
+ * List of rules
7969
8196
  */
7970
- 200: PortfolioTrendsResponseDto;
8197
+ 200: TransactionRuleListResponseDto;
7971
8198
  /**
7972
- * User not authenticated
8199
+ * Unauthorized
7973
8200
  */
7974
- 401: unknown;
8201
+ 401: ApiProblemResponseDto;
7975
8202
  };
7976
8203
  };
7977
8204
  };
7978
- '/api/v1/{region}/reporting/cash-flow/trends': {
7979
- get: {
7980
- req: ReportingControllerGetCashFlowTrendsData;
8205
+ '/api/v1/{region}/bean/transaction-rules/validate': {
8206
+ post: {
8207
+ req: TransactionRuleControllerValidateData;
7981
8208
  res: {
7982
8209
  /**
7983
- * Cash-flow trends retrieved successfully
8210
+ * Validation result
7984
8211
  */
7985
- 200: CashFlowTrendsResponseDto;
8212
+ 200: ValidateRuleResponseDto;
7986
8213
  /**
7987
- * User not authenticated
8214
+ * Validation failed
7988
8215
  */
7989
- 401: unknown;
8216
+ 400: ApiProblemResponseDto;
8217
+ /**
8218
+ * Unauthorized
8219
+ */
8220
+ 401: ApiProblemResponseDto;
7990
8221
  };
7991
8222
  };
7992
8223
  };
7993
- '/api/v1/{region}/reporting/snapshots/generate': {
8224
+ '/api/v1/{region}/bean/transaction-rules/bulk': {
7994
8225
  post: {
7995
- req: ReportingControllerGenerateSnapshotData;
8226
+ req: TransactionRuleControllerBulkCreateData;
7996
8227
  res: {
7997
8228
  /**
7998
- * Snapshot generated successfully
8229
+ * Bulk create completed
7999
8230
  */
8000
- 200: GenerateSnapshotResponse;
8231
+ 201: BulkCreateRulesResponseDto;
8001
8232
  /**
8002
- * Invalid date format
8233
+ * Invalid bulk create data
8003
8234
  */
8004
- 400: unknown;
8235
+ 400: ApiProblemResponseDto;
8005
8236
  /**
8006
- * User not authenticated
8237
+ * Unauthorized
8007
8238
  */
8008
- 401: unknown;
8239
+ 401: ApiProblemResponseDto;
8009
8240
  };
8010
8241
  };
8011
8242
  };
8012
- '/api/v1/{region}/reporting/snapshots/backfill': {
8243
+ '/api/v1/{region}/bean/transaction-rules/export/{format}': {
8244
+ get: {
8245
+ req: TransactionRuleControllerExportData;
8246
+ res: {
8247
+ /**
8248
+ * Exported rules
8249
+ */
8250
+ 200: ExportRulesResponseDto;
8251
+ /**
8252
+ * Unsupported format
8253
+ */
8254
+ 400: ApiProblemResponseDto;
8255
+ /**
8256
+ * Unauthorized
8257
+ */
8258
+ 401: ApiProblemResponseDto;
8259
+ };
8260
+ };
8261
+ };
8262
+ '/api/v1/{region}/bean/transaction-rules/statistics/{period}': {
8263
+ get: {
8264
+ req: TransactionRuleControllerGetStatisticsData;
8265
+ res: {
8266
+ /**
8267
+ * Rule statistics
8268
+ */
8269
+ 200: RuleStatisticsResponseDto;
8270
+ /**
8271
+ * Unauthorized
8272
+ */
8273
+ 401: ApiProblemResponseDto;
8274
+ };
8275
+ };
8276
+ };
8277
+ '/api/v1/{region}/bean/transaction-rules/{ruleId}': {
8278
+ get: {
8279
+ req: TransactionRuleControllerGetDetailData;
8280
+ res: {
8281
+ /**
8282
+ * Rule details
8283
+ */
8284
+ 200: TransactionRuleResponseDto;
8285
+ /**
8286
+ * Unauthorized
8287
+ */
8288
+ 401: ApiProblemResponseDto;
8289
+ /**
8290
+ * Forbidden - not owner of rule
8291
+ */
8292
+ 403: ApiProblemResponseDto;
8293
+ /**
8294
+ * Rule not found
8295
+ */
8296
+ 404: ApiProblemResponseDto;
8297
+ };
8298
+ };
8299
+ put: {
8300
+ req: TransactionRuleControllerUpdateData;
8301
+ res: {
8302
+ /**
8303
+ * Rule updated successfully
8304
+ */
8305
+ 200: TransactionRuleResponseDto;
8306
+ /**
8307
+ * Validation failed
8308
+ */
8309
+ 400: ApiProblemResponseDto;
8310
+ /**
8311
+ * Unauthorized
8312
+ */
8313
+ 401: ApiProblemResponseDto;
8314
+ /**
8315
+ * Forbidden - not owner of rule
8316
+ */
8317
+ 403: ApiProblemResponseDto;
8318
+ /**
8319
+ * Rule not found
8320
+ */
8321
+ 404: ApiProblemResponseDto;
8322
+ /**
8323
+ * Resource conflict - rule is being modified by another process
8324
+ */
8325
+ 409: ApiProblemResponseDto;
8326
+ };
8327
+ };
8328
+ delete: {
8329
+ req: TransactionRuleControllerDeleteData;
8330
+ res: {
8331
+ /**
8332
+ * Rule deleted successfully
8333
+ */
8334
+ 204: void;
8335
+ /**
8336
+ * Unauthorized
8337
+ */
8338
+ 401: ApiProblemResponseDto;
8339
+ /**
8340
+ * Forbidden - not owner of rule
8341
+ */
8342
+ 403: ApiProblemResponseDto;
8343
+ /**
8344
+ * Rule not found
8345
+ */
8346
+ 404: ApiProblemResponseDto;
8347
+ /**
8348
+ * Resource conflict - rule is being modified by another process
8349
+ */
8350
+ 409: ApiProblemResponseDto;
8351
+ };
8352
+ };
8353
+ };
8354
+ '/api/v1/{region}/bean/transaction-rules/{ruleId}/test': {
8013
8355
  post: {
8014
- req: ReportingControllerBackfillSnapshotsData;
8356
+ req: TransactionRuleControllerTestData;
8015
8357
  res: {
8016
8358
  /**
8017
- * Backfill completed successfully
8359
+ * Test result
8018
8360
  */
8019
- 200: BackfillSnapshotsResponse;
8361
+ 200: TestRuleResponseDto;
8020
8362
  /**
8021
- * Invalid date format or range
8363
+ * Unauthorized
8022
8364
  */
8023
- 400: unknown;
8365
+ 401: ApiProblemResponseDto;
8024
8366
  /**
8025
- * User not authenticated
8367
+ * Forbidden - not owner of rule
8026
8368
  */
8027
- 401: unknown;
8369
+ 403: ApiProblemResponseDto;
8028
8370
  /**
8029
- * Backfill already in progress for this user
8371
+ * Rule not found
8030
8372
  */
8031
- 409: unknown;
8373
+ 404: ApiProblemResponseDto;
8374
+ };
8375
+ };
8376
+ };
8377
+ '/api/v1/{region}/bean/categories': {
8378
+ get: {
8379
+ req: CategoryCatalogControllerListData;
8380
+ res: {
8381
+ /**
8382
+ * Category catalog retrieved successfully
8383
+ */
8384
+ 200: CategoryCatalogListResponseDto;
8032
8385
  };
8033
8386
  };
8034
8387
  };
@@ -8571,6 +8924,7 @@ type $OpenApiTs = {
8571
8924
  };
8572
8925
  '/api/v1/bean/platforms/list': {
8573
8926
  get: {
8927
+ req: PlatformControllerGetPlatformListData;
8574
8928
  res: {
8575
8929
  /**
8576
8930
  * List of platforms with user binding status
@@ -8873,6 +9227,32 @@ type $OpenApiTs = {
8873
9227
  };
8874
9228
  };
8875
9229
  };
9230
+ '/api/v1/market/symbols/search': {
9231
+ get: {
9232
+ req: SymbolControllerSearchData;
9233
+ res: {
9234
+ /**
9235
+ * Ranked search results
9236
+ */
9237
+ 200: Array<SymbolSearchResultDto>;
9238
+ };
9239
+ };
9240
+ };
9241
+ '/api/v1/market/symbols/{symbol}/quote': {
9242
+ get: {
9243
+ req: SymbolControllerGetQuoteData;
9244
+ res: {
9245
+ /**
9246
+ * Symbol quote
9247
+ */
9248
+ 200: SymbolQuoteDto;
9249
+ /**
9250
+ * Symbol not found in the openbb catalog
9251
+ */
9252
+ 404: unknown;
9253
+ };
9254
+ };
9255
+ };
8876
9256
  };
8877
9257
 
8878
9258
  declare class BeanAccountsService {
@@ -8924,7 +9304,7 @@ declare class BeanAccountsService {
8924
9304
  static accountControllerUpdate(data: AccountControllerUpdateData): CancelablePromise<AccountControllerUpdateResponse>;
8925
9305
  /**
8926
9306
  * Delete account
8927
- * Deletes an account (only if no transactions)
9307
+ * Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
8928
9308
  * @param data The data for the request.
8929
9309
  * @param data.id Account UUID
8930
9310
  * @param data.region Region code for tenant context
@@ -9296,4 +9676,4 @@ type OpenAPIConfig = {
9296
9676
  };
9297
9677
  declare const OpenAPI: OpenAPIConfig;
9298
9678
 
9299
- 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 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 SignupResponseDto, 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 role, 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 };
9679
+ 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 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 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 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 value, type viewMode };