@firela/api-types 0.0.0-canary.2b7765ff → 0.0.0-canary.2d71872c

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
@@ -27,13 +27,9 @@ type CreateAccountDto = {
27
27
  */
28
28
  path: string;
29
29
  /**
30
- * Display name to distinguish accounts at the same path (default: "")
30
+ * Account open date (server defaults to today)
31
31
  */
32
- displayName?: string;
33
- /**
34
- * Account open date
35
- */
36
- openDate: string;
32
+ openDate?: string;
37
33
  /**
38
34
  * Allowed currencies (null = no restriction)
39
35
  */
@@ -50,18 +46,14 @@ type CreateAccountDto = {
50
46
  * Whether this is a custom (user-created) account
51
47
  */
52
48
  isCustom?: boolean;
53
- /**
54
- * i18n key for display name (overrides template)
55
- */
56
- i18nKey?: string;
57
49
  /**
58
50
  * Icon identifier (overrides template)
59
51
  */
60
52
  icon?: string;
61
53
  /**
62
- * Additional metadata
54
+ * Open directive metadata (NOT an opening-balance amount — use the opening-balance endpoint)
63
55
  */
64
- openMeta?: {
56
+ openDirectiveMeta?: {
65
57
  [key: string]: unknown;
66
58
  };
67
59
  /**
@@ -82,10 +74,6 @@ type AccountResponseDto = {
82
74
  * Account path (hierarchical, colon-separated)
83
75
  */
84
76
  path: string;
85
- /**
86
- * Display name distinguishing multiple accounts at the same path
87
- */
88
- displayName: string;
89
77
  /**
90
78
  * Account type (root segment)
91
79
  */
@@ -119,17 +107,17 @@ type AccountResponseDto = {
119
107
  */
120
108
  isCustom: boolean;
121
109
  /**
122
- * i18n key for display name
110
+ * Localized display name (ADR-0114, read-time projection)
123
111
  */
124
- i18nKey?: string;
112
+ displayName?: string;
125
113
  /**
126
114
  * Icon identifier
127
115
  */
128
116
  icon?: string;
129
117
  /**
130
- * Account metadata
118
+ * Open directive metadata (ADR-0115 Decision 9)
131
119
  */
132
- openMeta?: {
120
+ openDirectiveMeta?: {
133
121
  [key: string]: unknown;
134
122
  };
135
123
  /**
@@ -172,10 +160,6 @@ type AccountListResponseDto = {
172
160
  total: number;
173
161
  };
174
162
  type UpdateAccountDto = {
175
- /**
176
- * Display name to distinguish accounts at the same path
177
- */
178
- displayName?: string;
179
163
  /**
180
164
  * Allowed currencies (null = no restriction)
181
165
  */
@@ -184,18 +168,14 @@ type UpdateAccountDto = {
184
168
  * Booking method for cost basis
185
169
  */
186
170
  bookingMethod?: 'FIFO' | 'LIFO' | 'HIFO' | 'AVERAGE' | 'STRICT' | 'STRICT_WITH_SIZE' | 'NONE';
187
- /**
188
- * i18n key for display name
189
- */
190
- i18nKey?: string;
191
171
  /**
192
172
  * Icon identifier
193
173
  */
194
174
  icon?: string;
195
175
  /**
196
- * Additional metadata (merged with existing)
176
+ * Open directive metadata (merged with existing; NOT an opening-balance amount)
197
177
  */
198
- openMeta?: {
178
+ openDirectiveMeta?: {
199
179
  [key: string]: unknown;
200
180
  };
201
181
  /**
@@ -221,6 +201,26 @@ type ReopenAccountDto = {
221
201
  */
222
202
  reopenDate?: string;
223
203
  };
204
+ type CreateOpeningBalanceDto = {
205
+ /**
206
+ * Opening balance amount (non-negative)
207
+ */
208
+ amount: number;
209
+ /**
210
+ * Currency code
211
+ */
212
+ currency: string;
213
+ /**
214
+ * Opening-balance date (defaults to now)
215
+ */
216
+ date?: string;
217
+ };
218
+ type OpeningBalanceResultDto = {
219
+ /**
220
+ * Created opening-balance transaction id.
221
+ */
222
+ transactionId: string;
223
+ };
224
224
  type AccountStandardResponseDto = {
225
225
  /**
226
226
  * Account path (hierarchical, colon-separated)
@@ -230,10 +230,6 @@ type AccountStandardResponseDto = {
230
230
  * Account type in Beancount hierarchy
231
231
  */
232
232
  type: 'Assets' | 'Liabilities' | 'Income' | 'Expenses' | 'Equity';
233
- /**
234
- * i18n key for localized display name
235
- */
236
- i18nKey: string;
237
233
  /**
238
234
  * Short localized display name
239
235
  */
@@ -266,10 +262,6 @@ type AccountStandardListResponseDto = {
266
262
  region: string;
267
263
  };
268
264
  type TemplateMetadataDto = {
269
- /**
270
- * Whether this path can be extended
271
- */
272
- extendable: boolean;
273
265
  /**
274
266
  * Root account type
275
267
  */
@@ -413,6 +405,24 @@ type CreateTransactionDto = {
413
405
  * Transaction flag: * (cleared), ! (pending)
414
406
  */
415
407
  type flag = '*' | '!';
408
+ type CostDetailDto = {
409
+ /**
410
+ * Per-unit cost basis (mirrors engine Cost.number)
411
+ */
412
+ number?: string;
413
+ /**
414
+ * Cost currency
415
+ */
416
+ currency?: string;
417
+ /**
418
+ * Lot acquisition date (ISO yyyy-mm-dd)
419
+ */
420
+ date?: string;
421
+ /**
422
+ * Lot label
423
+ */
424
+ label?: string;
425
+ };
416
426
  type PostingResponseDto = {
417
427
  /**
418
428
  * Account name
@@ -426,6 +436,10 @@ type PostingResponseDto = {
426
436
  * Currency
427
437
  */
428
438
  currency?: string;
439
+ /**
440
+ * Booking-resolved cost (mirrors engine Cost). Undefined when the posting has no cost basis.
441
+ */
442
+ cost?: CostDetailDto;
429
443
  };
430
444
  type RecurringSuggestionDto = {
431
445
  /**
@@ -646,6 +660,10 @@ type PostingDetailDto = {
646
660
  * Cost date
647
661
  */
648
662
  costDate?: string;
663
+ /**
664
+ * Booking-resolved cost (mirrors engine Cost). Undefined when the posting has no cost basis.
665
+ */
666
+ cost?: CostDetailDto;
649
667
  /**
650
668
  * Price amount
651
669
  */
@@ -753,6 +771,48 @@ type flag2 = 'CLEARED' | 'PENDING' | 'PADDING' | 'SUMMARIZE' | 'TRANSFER' | 'CON
753
771
  * Transaction status
754
772
  */
755
773
  type status2 = 'ACTIVE' | 'VOIDED' | 'SUPERSEDED';
774
+ type BalanceByCurrencyDto = {
775
+ /**
776
+ * ISO 4217 currency code
777
+ */
778
+ currency: string;
779
+ /**
780
+ * Balance amount
781
+ */
782
+ balance: string;
783
+ };
784
+ type ExchangeRateWarningDto = {
785
+ /**
786
+ * Warning type
787
+ */
788
+ type: string;
789
+ /**
790
+ * Currency without exchange rate
791
+ */
792
+ currency: string;
793
+ /**
794
+ * Total amount affected
795
+ */
796
+ totalAmount: string;
797
+ };
798
+ type TransactionListSummaryDto = {
799
+ /**
800
+ * Partial converted total in base currency (rated currencies only, raw Beancount sign). When warnings is non-empty this excludes currencies missing an FX rate; may be "0.00" if ALL non-base currencies lack a rate. Converted at the dateTo (or current) available rate.
801
+ */
802
+ totalAmount: string;
803
+ /**
804
+ * Base currency (ISO 4217)
805
+ */
806
+ currency: string;
807
+ /**
808
+ * Raw (unconverted) balance per currency
809
+ */
810
+ balanceByCurrency: Array<BalanceByCurrencyDto>;
811
+ /**
812
+ * Currencies missing an FX rate (omitted when empty)
813
+ */
814
+ warnings?: Array<ExchangeRateWarningDto>;
815
+ };
756
816
  type TransactionListResponseDto = {
757
817
  /**
758
818
  * List of transactions
@@ -770,6 +830,10 @@ type TransactionListResponseDto = {
770
830
  * Number of items skipped
771
831
  */
772
832
  offset: number;
833
+ /**
834
+ * Amount summary for the full filtered set (#514). Present only when the request has a single account OR category viewpoint; omitted for search-only / plain-list / dual-perspective requests.
835
+ */
836
+ summary?: TransactionListSummaryDto;
773
837
  };
774
838
  type TagSuggestionDto = {
775
839
  /**
@@ -1146,17 +1210,17 @@ type ResolveResultDto = {
1146
1210
  [key: string]: string;
1147
1211
  };
1148
1212
  /**
1149
- * Resolution ID for undo
1213
+ * Resolution ID for undo. Absent when the resolver rejected the decision (review stayed PENDING).
1150
1214
  */
1151
- resolutionId: string;
1215
+ resolutionId?: string;
1152
1216
  /**
1153
1217
  * Whether this decision can be undone
1154
1218
  */
1155
- canUndo: boolean;
1219
+ canUndo?: boolean;
1156
1220
  /**
1157
1221
  * Deadline for undo (24h from resolution)
1158
1222
  */
1159
- undoDeadline: string;
1223
+ undoDeadline?: string;
1160
1224
  /**
1161
1225
  * Rule ID if learning was triggered (ACCEPT_AND_LEARN actions). Use this to deep-link to the rule management page.
1162
1226
  */
@@ -1616,6 +1680,104 @@ type UpdateCommodityDto = {
1616
1680
  [key: string]: unknown;
1617
1681
  };
1618
1682
  };
1683
+ type CreateBeanPriceDto = {
1684
+ /**
1685
+ * Currency being priced (e.g., USD, AAPL, BTC)
1686
+ */
1687
+ currency: string;
1688
+ /**
1689
+ * Quote currency (pricing currency, e.g., CNY, EUR)
1690
+ */
1691
+ quoteCurrency: string;
1692
+ /**
1693
+ * Price amount (MUST be >= 0 per Beancount spec, supports up to 15 decimal places). Zero allowed for conversion entries, negative strictly prohibited.
1694
+ */
1695
+ amount: number;
1696
+ /**
1697
+ * Price date (ISO 8601 format)
1698
+ */
1699
+ date: string;
1700
+ /**
1701
+ * Metadata (validated by Zod schema, max field lengths enforced)
1702
+ */
1703
+ metadata?: {
1704
+ [key: string]: unknown;
1705
+ };
1706
+ };
1707
+ type PriceResponseDto = {
1708
+ /**
1709
+ * Unique identifier
1710
+ */
1711
+ id: string;
1712
+ /**
1713
+ * User ID (owner of the price)
1714
+ */
1715
+ userId: string;
1716
+ /**
1717
+ * Currency being priced (e.g., USD, AAPL, BTC)
1718
+ */
1719
+ currency: string;
1720
+ /**
1721
+ * Quote currency (pricing currency, e.g., USD, CNY)
1722
+ */
1723
+ quoteCurrency: string;
1724
+ /**
1725
+ * Price amount (corresponds to Beancount Amount.number). Supports up to 15 decimal places.
1726
+ */
1727
+ amount: number;
1728
+ /**
1729
+ * Price date (ISO 8601 format). Represents the date this price was valid.
1730
+ */
1731
+ date: string;
1732
+ /**
1733
+ * Metadata (corresponds to Beancount meta field). Contains source, confidence, note, etc.
1734
+ */
1735
+ meta: {
1736
+ [key: string]: unknown;
1737
+ };
1738
+ /**
1739
+ * Creation timestamp
1740
+ */
1741
+ createdAt: string;
1742
+ /**
1743
+ * Last update timestamp
1744
+ */
1745
+ updatedAt: string;
1746
+ };
1747
+ type PriceListResponseDto = {
1748
+ /**
1749
+ * List of prices
1750
+ */
1751
+ items: Array<PriceResponseDto>;
1752
+ /**
1753
+ * Total number of prices
1754
+ */
1755
+ total: number;
1756
+ };
1757
+ type UpdateBeanPriceDto = {
1758
+ /**
1759
+ * Currency being priced
1760
+ */
1761
+ currency?: string;
1762
+ /**
1763
+ * Quote currency (pricing currency)
1764
+ */
1765
+ quoteCurrency?: string;
1766
+ /**
1767
+ * Price amount (MUST be >= 0 per Beancount spec)
1768
+ */
1769
+ amount?: number;
1770
+ /**
1771
+ * Price date (ISO 8601 format)
1772
+ */
1773
+ date?: string;
1774
+ /**
1775
+ * Metadata
1776
+ */
1777
+ metadata?: {
1778
+ [key: string]: unknown;
1779
+ };
1780
+ };
1619
1781
  type CreateRecurringRuleDto = {
1620
1782
  /**
1621
1783
  * Rule name (unique per user)
@@ -2663,79 +2825,309 @@ type UpdatePropertyDto = {
2663
2825
  */
2664
2826
  value: string;
2665
2827
  };
2666
- type FileImportDto = {
2828
+ type CreateBeanEventDto = {
2667
2829
  /**
2668
- * Bill file to import (CSV, PDF, OFX, etc.)
2830
+ * Life event date (ISO 8601)
2669
2831
  */
2670
- file: Blob | File;
2671
- };
2672
- type ImportErrorDto = {
2832
+ date: string;
2673
2833
  /**
2674
- * Index of failed transaction in the file
2834
+ * Life event type (e.g., "employer", "location", "marital-status") — user-defined, no enum constraint at engine layer
2675
2835
  */
2676
- index: number;
2836
+ type: string;
2677
2837
  /**
2678
- * Error message
2838
+ * Life event description. Empty string is a VALID value (distinct from absence).
2679
2839
  */
2680
- error: string;
2840
+ description: string;
2841
+ /**
2842
+ * Product-side metadata (lives in BeanEvent.meta JSON, never in engine Event fields)
2843
+ */
2844
+ meta?: {
2845
+ [key: string]: unknown;
2846
+ };
2681
2847
  };
2682
- type ReviewItemPreviewDto = {
2848
+ type EventResponseDto = {
2683
2849
  /**
2684
- * Index in the import batch (for tracking)
2850
+ * Unique identifier
2685
2851
  */
2686
- index: number;
2852
+ id: string;
2687
2853
  /**
2688
- * Transaction date (ISO format)
2854
+ * User ID (owner of the life event)
2689
2855
  */
2690
- date: string;
2856
+ userId: string;
2691
2857
  /**
2692
- * Transaction amount (absolute value)
2858
+ * Life event date (ISO 8601 format)
2693
2859
  */
2694
- amount?: number;
2860
+ date: string;
2695
2861
  /**
2696
- * Currency code
2862
+ * Life event type (user-defined, e.g., "employer", "location")
2697
2863
  */
2698
- currency?: string;
2864
+ type: string;
2699
2865
  /**
2700
- * Transaction narration/description
2866
+ * Life event description. May be an empty string (a valid value distinct from absence).
2701
2867
  */
2702
- narration: string;
2868
+ description: string;
2703
2869
  /**
2704
- * Payee name
2870
+ * Product-side metadata (free-form JSON)
2705
2871
  */
2706
- payee?: string;
2872
+ meta: {
2873
+ [key: string]: unknown;
2874
+ };
2707
2875
  /**
2708
- * Inferred category from rule matching
2876
+ * Creation timestamp
2709
2877
  */
2710
- category?: string;
2878
+ createdAt: string;
2711
2879
  /**
2712
- * Confidence score for the match (0-1)
2880
+ * Last update timestamp. Also emitted as the ETag response header for If-Match optimistic concurrency.
2713
2881
  */
2714
- confidence?: number;
2882
+ updatedAt: string;
2883
+ };
2884
+ type EventListResponseDto = {
2715
2885
  /**
2716
- * Type of branch requiring review
2886
+ * List of life events
2717
2887
  */
2718
- branchType?: 'DUPLICATE' | 'PAYEE_MATCH' | 'RULE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
2888
+ items: Array<EventResponseDto>;
2719
2889
  /**
2720
- * Human-readable reasons for requiring review
2890
+ * Total number of life events matching the query
2721
2891
  */
2722
- reasons?: Array<string>;
2892
+ total: number;
2723
2893
  };
2724
- /**
2725
- * Type of branch requiring review
2726
- */
2727
- type branchType = 'DUPLICATE' | 'PAYEE_MATCH' | 'RULE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
2728
- type ImportResultDto = {
2894
+ type UpdateBeanEventDto = {
2729
2895
  /**
2730
- * Number of successfully imported transactions
2896
+ * Life event date (ISO 8601)
2731
2897
  */
2732
- imported: number;
2898
+ date?: string;
2733
2899
  /**
2734
- * Number of failed transactions
2900
+ * Life event type (user-defined)
2735
2901
  */
2736
- failed: number;
2902
+ type?: string;
2737
2903
  /**
2738
- * Number of skipped transactions (high confidence duplicates, auto-skipped)
2904
+ * Life event description. Empty string is a VALID value (distinct from absence).
2905
+ */
2906
+ description?: string;
2907
+ /**
2908
+ * Product-side metadata (free-form JSON)
2909
+ */
2910
+ meta?: {
2911
+ [key: string]: unknown;
2912
+ };
2913
+ };
2914
+ type OnboardingAccountDto = {
2915
+ /**
2916
+ * Account path (Assets/Liabilities only; format validated by the account service)
2917
+ */
2918
+ path: string;
2919
+ /**
2920
+ * ISO 4217 currency code (3 letters)
2921
+ */
2922
+ currency: string;
2923
+ /**
2924
+ * Opening balance as a non-negative Decimal string (e.g. "1000.00")
2925
+ */
2926
+ openingBalance?: string;
2927
+ /**
2928
+ * Platform ID to bind the account to (references Platform.id); omit for unbound
2929
+ */
2930
+ platformId?: string;
2931
+ };
2932
+ type OnboardingDto = {
2933
+ /**
2934
+ * Asset/Liability accounts to register with opening balances
2935
+ */
2936
+ accounts?: Array<OnboardingAccountDto>;
2937
+ /**
2938
+ * Skip asset registration; only bootstrap the core account set
2939
+ */
2940
+ skipAssetRegistration?: boolean;
2941
+ };
2942
+ type ActualBalanceDto = {
2943
+ /**
2944
+ * Actual balance amount as a decimal string (preserves precision for tolerance inference).
2945
+ */
2946
+ amount: string;
2947
+ /**
2948
+ * Currency code (ISO 4217 or commodity ticker).
2949
+ */
2950
+ ccy: string;
2951
+ };
2952
+ type ComputeReconciliationDto = {
2953
+ /**
2954
+ * BeanAccount id to reconcile.
2955
+ */
2956
+ accountId: string;
2957
+ /**
2958
+ * Assertion date (ISO 8601, e.g. "2026-07-24").
2959
+ */
2960
+ asOfDate: string;
2961
+ /**
2962
+ * Actual balance from the external statement.
2963
+ */
2964
+ actualBalance: ActualBalanceDto;
2965
+ };
2966
+ type ReconciliationComputeResultDto = {
2967
+ accountId: string;
2968
+ asOfDate: string;
2969
+ /**
2970
+ * System-computed book balance (decimal string).
2971
+ */
2972
+ bookBalance: string;
2973
+ /**
2974
+ * User-entered actual balance (decimal string).
2975
+ */
2976
+ actualBalance: string;
2977
+ currency: string;
2978
+ /**
2979
+ * Diff = book − actual (decimal string).
2980
+ */
2981
+ diff: string;
2982
+ /**
2983
+ * Applied tolerance (decimal string).
2984
+ */
2985
+ tolerance: string;
2986
+ /**
2987
+ * true when |diff| ≤ tolerance.
2988
+ */
2989
+ withinTolerance: boolean;
2990
+ /**
2991
+ * Suggested next action: assert when within tolerance, pad otherwise.
2992
+ */
2993
+ suggestedAction: 'assert' | 'pad';
2994
+ };
2995
+ /**
2996
+ * Suggested next action: assert when within tolerance, pad otherwise.
2997
+ */
2998
+ type suggestedAction = 'assert' | 'pad';
2999
+ type AssertReconciliationDto = {
3000
+ /**
3001
+ * BeanAccount id to reconcile.
3002
+ */
3003
+ accountId: string;
3004
+ /**
3005
+ * Assertion date (ISO 8601, e.g. "2026-07-24").
3006
+ */
3007
+ asOfDate: string;
3008
+ /**
3009
+ * Actual balance from the external statement.
3010
+ */
3011
+ actualBalance: ActualBalanceDto;
3012
+ /**
3013
+ * Optional explicit tolerance override. Omit to infer from amount precision (Beancount default).
3014
+ */
3015
+ tolerance?: string;
3016
+ };
3017
+ type ReconciliationRecordDto = {
3018
+ id: string;
3019
+ accountId: string;
3020
+ date: string;
3021
+ /**
3022
+ * Asserted (actual) amount.
3023
+ */
3024
+ amount: string;
3025
+ currency: string;
3026
+ tolerance?: string;
3027
+ /**
3028
+ * book − actual.
3029
+ */
3030
+ diffAmount?: string;
3031
+ diffCurrency?: string;
3032
+ createdAt: string;
3033
+ };
3034
+ type PadReconciliationDto = {
3035
+ /**
3036
+ * BeanAccount id to reconcile.
3037
+ */
3038
+ accountId: string;
3039
+ /**
3040
+ * Assertion date (ISO 8601, e.g. "2026-07-24").
3041
+ */
3042
+ asOfDate: string;
3043
+ /**
3044
+ * Actual balance from the external statement.
3045
+ */
3046
+ actualBalance: ActualBalanceDto;
3047
+ /**
3048
+ * Pad source account. Defaults to Equity:Opening-Balances (official Beancount convention).
3049
+ */
3050
+ sourceAccount?: string;
3051
+ };
3052
+ type PadResultDto = {
3053
+ /**
3054
+ * Created pad adjusting transaction id.
3055
+ */
3056
+ transactionId: string;
3057
+ };
3058
+ type FileImportDto = {
3059
+ /**
3060
+ * Bill file to import (CSV, PDF, OFX, etc.)
3061
+ */
3062
+ file: Blob | File;
3063
+ };
3064
+ type ImportErrorDto = {
3065
+ /**
3066
+ * Index of failed transaction in the file
3067
+ */
3068
+ index: number;
3069
+ /**
3070
+ * Error message
3071
+ */
3072
+ error: string;
3073
+ };
3074
+ type ReviewItemPreviewDto = {
3075
+ /**
3076
+ * Index in the import batch (for tracking)
3077
+ */
3078
+ index: number;
3079
+ /**
3080
+ * Transaction date (ISO format)
3081
+ */
3082
+ date: string;
3083
+ /**
3084
+ * Transaction amount (absolute value)
3085
+ */
3086
+ amount?: number;
3087
+ /**
3088
+ * Currency code
3089
+ */
3090
+ currency?: string;
3091
+ /**
3092
+ * Transaction narration/description
3093
+ */
3094
+ narration: string;
3095
+ /**
3096
+ * Payee name
3097
+ */
3098
+ payee?: string;
3099
+ /**
3100
+ * Inferred category from rule matching
3101
+ */
3102
+ category?: string;
3103
+ /**
3104
+ * Confidence score for the match (0-1)
3105
+ */
3106
+ confidence?: number;
3107
+ /**
3108
+ * Type of branch requiring review
3109
+ */
3110
+ branchType?: 'DUPLICATE' | 'PAYEE_MATCH' | 'RULE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
3111
+ /**
3112
+ * Human-readable reasons for requiring review
3113
+ */
3114
+ reasons?: Array<string>;
3115
+ };
3116
+ /**
3117
+ * Type of branch requiring review
3118
+ */
3119
+ type branchType = 'DUPLICATE' | 'PAYEE_MATCH' | 'RULE_MATCH' | 'ACCOUNT_VALIDATION' | 'PIPELINE_ERROR';
3120
+ type ImportResultDto = {
3121
+ /**
3122
+ * Number of successfully imported transactions
3123
+ */
3124
+ imported: number;
3125
+ /**
3126
+ * Number of failed transactions
3127
+ */
3128
+ failed: number;
3129
+ /**
3130
+ * Number of skipped transactions (high confidence duplicates, auto-skipped)
2739
3131
  */
2740
3132
  skipped: number;
2741
3133
  /**
@@ -2907,70 +3299,6 @@ type UpdateImporterConfigDto = {
2907
3299
  */
2908
3300
  data?: UpdateConfigDataDto;
2909
3301
  };
2910
- type CreatePlatformDto = {
2911
- /**
2912
- * Platform name
2913
- */
2914
- name: string;
2915
- /**
2916
- * Platform canonical identifier (lowercase, kebab-case)
2917
- */
2918
- canonical: string;
2919
- /**
2920
- * Platform aliases (multi-language names for lookup)
2921
- */
2922
- aliases: Array<string>;
2923
- /**
2924
- * Platform URL
2925
- */
2926
- url: string;
2927
- /**
2928
- * Platform type
2929
- */
2930
- type: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
2931
- /**
2932
- * Platform logo URL
2933
- */
2934
- logoUrl?: string;
2935
- /**
2936
- * Whether the platform is active
2937
- */
2938
- isActive?: boolean;
2939
- };
2940
- /**
2941
- * Platform type
2942
- */
2943
- type type3 = 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
2944
- type UpdatePlatformDto = {
2945
- /**
2946
- * Platform name
2947
- */
2948
- name?: string;
2949
- /**
2950
- * Platform canonical identifier (lowercase, kebab-case)
2951
- */
2952
- canonical?: string;
2953
- /**
2954
- * Platform aliases (multi-language names for lookup)
2955
- */
2956
- aliases?: Array<string>;
2957
- /**
2958
- * Platform URL
2959
- */
2960
- url?: string;
2961
- /**
2962
- * Platform type
2963
- */
2964
- type?: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
2965
- /**
2966
- * Platform logo URL
2967
- */
2968
- logoUrl?: string;
2969
- /**
2970
- * Whether the platform is active
2971
- */
2972
- isActive?: boolean;
2973
- };
2974
3302
  type ProviderSyncConfigDto = {
2975
3303
  /**
2976
3304
  * Source account for the first posting
@@ -2992,6 +3320,10 @@ type ProviderSyncConfigDto = {
2992
3320
  * Filter pending transactions
2993
3321
  */
2994
3322
  filterPending?: boolean;
3323
+ /**
3324
+ * External account ID for per-batch providers (e.g. GoCardless). Overrides sourceAccount when an ExternalAccountLink mapping exists.
3325
+ */
3326
+ externalAccountId?: string;
2995
3327
  };
2996
3328
  type ProviderSyncDto = {
2997
3329
  /**
@@ -3043,6 +3375,41 @@ type SupportedProvidersResponseDto = {
3043
3375
  */
3044
3376
  providers: Array<string>;
3045
3377
  };
3378
+ type CreateExternalAccountLinkDto = {
3379
+ /**
3380
+ * Open Banking provider (whitelist)
3381
+ */
3382
+ provider: 'plaid' | 'teller' | 'truelayer' | 'gocardless' | 'simplefin' | 'yodlee' | 'beancount-direct' | 'parsed-bill';
3383
+ /**
3384
+ * External account ID from the provider
3385
+ */
3386
+ externalAccountId: string;
3387
+ /**
3388
+ * Target BeanAccount ID (must belong to the JWT user)
3389
+ */
3390
+ beanAccountId: string;
3391
+ };
3392
+ /**
3393
+ * Open Banking provider (whitelist)
3394
+ */
3395
+ type provider = 'plaid' | 'teller' | 'truelayer' | 'gocardless' | 'simplefin' | 'yodlee' | 'beancount-direct' | 'parsed-bill';
3396
+ type ExternalAccountLinkResponseDto = {
3397
+ id: string;
3398
+ provider: string;
3399
+ externalAccountId: string;
3400
+ beanAccountId: string;
3401
+ isActive: boolean;
3402
+ createdAt: string;
3403
+ updatedAt: string;
3404
+ };
3405
+ type ExternalAccountLinkListResponseDto = {
3406
+ items: Array<ExternalAccountLinkResponseDto>;
3407
+ total: number;
3408
+ /**
3409
+ * Filter by provider (query param)
3410
+ */
3411
+ provider?: string;
3412
+ };
3046
3413
  type ParserTelemetryReportDto = unknown;
3047
3414
  type UncoveredFormatMissDto = unknown;
3048
3415
  type ProcessNlpDto = {
@@ -3578,15 +3945,103 @@ type liabilitySubType = 'borrow' | 'repay';
3578
3945
  * Equity sub-type (only present when intent is "equity"). opening: account opening balance (Equity → Assets), adjustment: balance correction.
3579
3946
  */
3580
3947
  type equitySubType = 'opening' | 'adjustment';
3581
- type BalanceByCurrencyDto = {
3948
+ type PlatformListItemDto = {
3582
3949
  /**
3583
- * ISO 4217 currency code
3950
+ * Global platform ID
3584
3951
  */
3585
- currency: string;
3952
+ id: string;
3586
3953
  /**
3587
- * Balance amount
3954
+ * Platform name
3588
3955
  */
3589
- balance: string;
3956
+ name: string;
3957
+ /**
3958
+ * Platform URL
3959
+ */
3960
+ url: string;
3961
+ /**
3962
+ * Platform type
3963
+ */
3964
+ type: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
3965
+ /**
3966
+ * Canonical identifier in ACCOUNT_RE format (e.g., "icbc")
3967
+ */
3968
+ canonical: string;
3969
+ /**
3970
+ * Suggested path segment — canonical with first char uppercased (ACC_COMP_NAME_RE)
3971
+ */
3972
+ suggestedSegment: string;
3973
+ /**
3974
+ * Logo URL
3975
+ */
3976
+ logoUrl: string | null;
3977
+ /**
3978
+ * Whether user has accounts using this platform
3979
+ */
3980
+ isBound: boolean;
3981
+ };
3982
+ /**
3983
+ * Platform type
3984
+ */
3985
+ type type3 = 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
3986
+ type CreatePlatformDto = {
3987
+ /**
3988
+ * Platform name
3989
+ */
3990
+ name: string;
3991
+ /**
3992
+ * Platform canonical identifier (lowercase, kebab-case)
3993
+ */
3994
+ canonical: string;
3995
+ /**
3996
+ * Platform aliases (multi-language names for lookup)
3997
+ */
3998
+ aliases: Array<string>;
3999
+ /**
4000
+ * Platform URL
4001
+ */
4002
+ url: string;
4003
+ /**
4004
+ * Platform type
4005
+ */
4006
+ type: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
4007
+ /**
4008
+ * Platform logo URL
4009
+ */
4010
+ logoUrl?: string;
4011
+ /**
4012
+ * Whether the platform is active
4013
+ */
4014
+ isActive?: boolean;
4015
+ };
4016
+ type UpdatePlatformDto = {
4017
+ /**
4018
+ * Platform name
4019
+ */
4020
+ name?: string;
4021
+ /**
4022
+ * Platform canonical identifier (lowercase, kebab-case)
4023
+ */
4024
+ canonical?: string;
4025
+ /**
4026
+ * Platform aliases (multi-language names for lookup)
4027
+ */
4028
+ aliases?: Array<string>;
4029
+ /**
4030
+ * Platform URL
4031
+ */
4032
+ url?: string;
4033
+ /**
4034
+ * Platform type
4035
+ */
4036
+ type?: 'BANK' | 'BROKERAGE' | 'CRYPTO_EXCHANGE' | 'PAYMENT' | 'INVESTMENT' | 'INSURANCE' | 'OTHER';
4037
+ /**
4038
+ * Platform logo URL
4039
+ */
4040
+ logoUrl?: string;
4041
+ /**
4042
+ * Whether the platform is active
4043
+ */
4044
+ isActive?: boolean;
3590
4045
  };
3591
4046
  type NetWorthByCurrencyDto = {
3592
4047
  /**
@@ -3626,20 +4081,6 @@ type ConvertedNetWorthDto = {
3626
4081
  [key: string]: unknown;
3627
4082
  };
3628
4083
  };
3629
- type ExchangeRateWarningDto = {
3630
- /**
3631
- * Warning type
3632
- */
3633
- type: string;
3634
- /**
3635
- * Currency without exchange rate
3636
- */
3637
- currency: string;
3638
- /**
3639
- * Total amount affected
3640
- */
3641
- totalAmount: string;
3642
- };
3643
4084
  type NetWorthResponseDto = {
3644
4085
  /**
3645
4086
  * Total net worth (assets - liabilities, converted to base currency)
@@ -3703,6 +4144,10 @@ type AccountItemDto = {
3703
4144
  * Currency code
3704
4145
  */
3705
4146
  currency: string;
4147
+ /**
4148
+ * FX-converted balance in base currency; omitted when not convertible
4149
+ */
4150
+ convertedBalance?: string;
3706
4151
  };
3707
4152
  type PlatformGroupDto = {
3708
4153
  /**
@@ -3718,9 +4163,39 @@ type PlatformGroupDto = {
3718
4163
  */
3719
4164
  accounts: Array<AccountItemDto>;
3720
4165
  /**
3721
- * Total balance across all accounts in platform
4166
+ * FX-converted total balance in base currency
3722
4167
  */
3723
4168
  totalBalance: string;
4169
+ /**
4170
+ * Raw (unconverted) balances grouped by currency
4171
+ */
4172
+ balanceByCurrency: Array<BalanceByCurrencyDto>;
4173
+ /**
4174
+ * Converted balance in base currency (omitted when no currency is convertible)
4175
+ */
4176
+ convertedBalance?: string;
4177
+ /**
4178
+ * Share of the grand converted total (0-100); 0 when grand total is 0
4179
+ */
4180
+ sharePct: number;
4181
+ };
4182
+ type AccountExchangeRateWarningDto = {
4183
+ /**
4184
+ * Warning type
4185
+ */
4186
+ type: string;
4187
+ /**
4188
+ * Currency without exchange rate
4189
+ */
4190
+ currency: string;
4191
+ /**
4192
+ * Affected account paths
4193
+ */
4194
+ accounts: Array<string>;
4195
+ /**
4196
+ * Total amount in this currency
4197
+ */
4198
+ totalAmount: string;
3724
4199
  };
3725
4200
  type AccountsSummaryDto = {
3726
4201
  /**
@@ -3731,6 +4206,14 @@ type AccountsSummaryDto = {
3731
4206
  * Total number of platforms
3732
4207
  */
3733
4208
  totalPlatforms: number;
4209
+ /**
4210
+ * Base currency for conversion
4211
+ */
4212
+ baseCurrency: string;
4213
+ /**
4214
+ * Per-account exchange rate warnings
4215
+ */
4216
+ warnings?: Array<AccountExchangeRateWarningDto>;
3734
4217
  };
3735
4218
  type AccountsResponseDto = {
3736
4219
  /**
@@ -3763,6 +4246,10 @@ type AccountItemWithAssetClassDto = {
3763
4246
  * Currency code
3764
4247
  */
3765
4248
  currency: string;
4249
+ /**
4250
+ * FX-converted balance in base currency; omitted when not convertible
4251
+ */
4252
+ convertedBalance?: string;
3766
4253
  /**
3767
4254
  * Asset class
3768
4255
  */
@@ -3814,24 +4301,6 @@ type AssetClassGroupDto = {
3814
4301
  * Asset class name
3815
4302
  */
3816
4303
  type assetClass = 'LIQUIDITY' | 'EQUITY' | 'FIXED_INCOME' | 'PRECIOUS_METALS' | 'COMMODITY' | 'INSURANCE' | 'ALTERNATIVE_INVESTMENT' | 'PERSONAL_ASSETS' | 'LIABILITY' | 'REAL_ESTATE' | 'INDEX';
3817
- type AccountExchangeRateWarningDto = {
3818
- /**
3819
- * Warning type
3820
- */
3821
- type: string;
3822
- /**
3823
- * Currency without exchange rate
3824
- */
3825
- currency: string;
3826
- /**
3827
- * Affected account paths
3828
- */
3829
- accounts: Array<string>;
3830
- /**
3831
- * Total amount in this currency
3832
- */
3833
- totalAmount: string;
3834
- };
3835
4304
  type AssetClassSummaryDto = {
3836
4305
  /**
3837
4306
  * Total number of accounts
@@ -3990,6 +4459,60 @@ type CashFlowResponseDto = {
3990
4459
  */
3991
4460
  warnings?: Array<ExchangeRateWarningDto>;
3992
4461
  };
4462
+ type CategoryGroupDto = {
4463
+ /**
4464
+ * Functional category (account-path Group segment); regional and universal account paths merge under it
4465
+ */
4466
+ category: string;
4467
+ /**
4468
+ * Converted total for this category in base currency (expense amount when flow=expense, income amount when flow=income)
4469
+ */
4470
+ totalExpense: string;
4471
+ /**
4472
+ * Share of grand total (0-100); 0 when grand total is 0
4473
+ */
4474
+ sharePct: number;
4475
+ /**
4476
+ * Raw (unconverted) expense per currency
4477
+ */
4478
+ balanceByCurrency: Array<BalanceByCurrencyDto>;
4479
+ /**
4480
+ * Converted total in base currency (omitted when FX missing for all currencies in this category)
4481
+ */
4482
+ convertedBalance?: string;
4483
+ };
4484
+ type ExpensesByCategorySummaryDto = {
4485
+ /**
4486
+ * Total across all categories, converted (convertible categories only); expense totals when flow=expense, income totals when flow=income
4487
+ */
4488
+ totalExpense: string;
4489
+ /**
4490
+ * Number of categories
4491
+ */
4492
+ categoryCount: number;
4493
+ };
4494
+ type ExpensesByCategoryResponseDto = {
4495
+ /**
4496
+ * Period requested
4497
+ */
4498
+ period: string;
4499
+ /**
4500
+ * Base currency for converted values
4501
+ */
4502
+ baseCurrency: string;
4503
+ /**
4504
+ * Expense groups by functional category, sorted by converted total desc
4505
+ */
4506
+ groups: Array<CategoryGroupDto>;
4507
+ /**
4508
+ * Summary statistics
4509
+ */
4510
+ summary: ExpensesByCategorySummaryDto;
4511
+ /**
4512
+ * Exchange rate warnings (e.g. missing rate for a currency)
4513
+ */
4514
+ warnings?: Array<ExchangeRateWarningDto>;
4515
+ };
3993
4516
  type MonetaryDto = {
3994
4517
  /**
3995
4518
  * Amount (Decimal string)
@@ -4161,177 +4684,153 @@ type HoldingPnlResponseDto = {
4161
4684
  * Realized-P&L lot-matching method (FIFO or average). Unrealized cost basis remains average regardless of this value (#473).
4162
4685
  */
4163
4686
  type method = 'average' | 'FIFO';
4164
- type CreateBeanPriceDto = {
4687
+ type CurrencyBalanceDto = {
4165
4688
  /**
4166
- * Currency being priced (e.g., USD, AAPL, BTC)
4689
+ * ISO 4217 currency code
4167
4690
  */
4168
4691
  currency: string;
4169
4692
  /**
4170
- * Quote currency (pricing currency, e.g., CNY, EUR)
4693
+ * Balance amount
4171
4694
  */
4172
- quoteCurrency: string;
4695
+ balance: string;
4696
+ };
4697
+ type TimeSeriesPointDto = {
4173
4698
  /**
4174
- * Price amount (MUST be >= 0 per Beancount spec, supports up to 15 decimal places). Zero allowed for conversion entries, negative strictly prohibited.
4699
+ * Date in YYYY-MM-DD format
4175
4700
  */
4176
- amount: number;
4701
+ date: string;
4177
4702
  /**
4178
- * Price date (ISO 8601 format)
4703
+ * Value at this date (in base currency)
4179
4704
  */
4180
- date: string;
4705
+ value: string;
4181
4706
  /**
4182
- * Metadata (validated by Zod schema, max field lengths enforced)
4707
+ * Change from previous point
4183
4708
  */
4184
- metadata?: {
4709
+ change?: {
4185
4710
  [key: string]: unknown;
4186
4711
  };
4187
- };
4188
- type PriceResponseDto = {
4189
4712
  /**
4190
- * Unique identifier
4713
+ * Total assets at this date (in base currency)
4191
4714
  */
4192
- id: string;
4715
+ assets?: string;
4193
4716
  /**
4194
- * User ID (owner of the price)
4717
+ * Total liabilities at this date (in base currency)
4195
4718
  */
4196
- userId: string;
4719
+ liabilities?: string;
4197
4720
  /**
4198
- * Currency being priced (e.g., USD, AAPL, BTC)
4721
+ * Multi-currency breakdown for this point
4199
4722
  */
4200
- currency: string;
4723
+ byCurrency?: Array<CurrencyBalanceDto>;
4724
+ };
4725
+ type TrendSummaryDto = {
4201
4726
  /**
4202
- * Quote currency (pricing currency, e.g., USD, CNY)
4727
+ * Value at start of period
4203
4728
  */
4204
- quoteCurrency: string;
4729
+ startValue: string;
4205
4730
  /**
4206
- * Price amount (corresponds to Beancount Amount.number). Supports up to 15 decimal places.
4731
+ * Value at end of period
4207
4732
  */
4208
- amount: number;
4733
+ endValue: string;
4209
4734
  /**
4210
- * Price date (ISO 8601 format). Represents the date this price was valid.
4735
+ * Total change over period
4211
4736
  */
4212
- date: string;
4737
+ totalChange: string;
4213
4738
  /**
4214
- * Metadata (corresponds to Beancount meta field). Contains source, confidence, note, etc.
4739
+ * Total change percentage
4215
4740
  */
4216
- meta: {
4217
- [key: string]: unknown;
4218
- };
4741
+ totalChangePercentage: string;
4742
+ };
4743
+ type MultiCurrencyPointDto = {
4219
4744
  /**
4220
- * Creation timestamp
4745
+ * Date in YYYY-MM-DD format
4221
4746
  */
4222
- createdAt: string;
4747
+ date: string;
4223
4748
  /**
4224
- * Last update timestamp
4749
+ * Balances by currency
4225
4750
  */
4226
- updatedAt: string;
4751
+ byCurrency: Array<CurrencyBalanceDto>;
4227
4752
  };
4228
- type PriceListResponseDto = {
4229
- /**
4230
- * List of prices
4231
- */
4232
- items: Array<PriceResponseDto>;
4233
- /**
4234
- * Total number of prices
4235
- */
4236
- total: number;
4237
- };
4238
- type UpdateBeanPriceDto = {
4753
+ type PortfolioTrendsResponseDto = {
4239
4754
  /**
4240
- * Currency being priced
4755
+ * Time series data points
4241
4756
  */
4242
- currency?: string;
4757
+ series: Array<TimeSeriesPointDto>;
4243
4758
  /**
4244
- * Quote currency (pricing currency)
4759
+ * Period summary
4245
4760
  */
4246
- quoteCurrency?: string;
4761
+ summary: TrendSummaryDto;
4247
4762
  /**
4248
- * Price amount (MUST be >= 0 per Beancount spec)
4763
+ * Period requested
4249
4764
  */
4250
- amount?: number;
4765
+ period: string;
4251
4766
  /**
4252
- * Price date (ISO 8601 format)
4767
+ * Data granularity
4253
4768
  */
4254
- date?: string;
4769
+ granularity: string;
4255
4770
  /**
4256
- * Metadata
4771
+ * Base currency for converted values
4257
4772
  */
4258
- metadata?: {
4259
- [key: string]: unknown;
4260
- };
4261
- };
4262
- type CurrencyBalanceDto = {
4773
+ currency: string;
4263
4774
  /**
4264
- * ISO 4217 currency code
4775
+ * Multi-currency time series (each point has currency breakdown)
4265
4776
  */
4266
- currency: string;
4777
+ byCurrency?: Array<MultiCurrencyPointDto>;
4267
4778
  /**
4268
- * Balance amount
4779
+ * Exchange rate warnings
4269
4780
  */
4270
- balance: string;
4781
+ warnings?: Array<ExchangeRateWarningDto>;
4271
4782
  };
4272
- type TimeSeriesPointDto = {
4783
+ type CashFlowPointDto = {
4273
4784
  /**
4274
- * Date in YYYY-MM-DD format
4785
+ * Month key (YYYY-MM)
4275
4786
  */
4276
- date: string;
4787
+ month: string;
4277
4788
  /**
4278
- * Value at this date (in base currency)
4789
+ * Income in base currency (absolute, converted)
4279
4790
  */
4280
- value: string;
4791
+ income: string;
4281
4792
  /**
4282
- * Change from previous point
4793
+ * Expense in base currency (absolute, converted)
4283
4794
  */
4284
- change?: {
4285
- [key: string]: unknown;
4286
- };
4795
+ expense: string;
4287
4796
  /**
4288
- * Multi-currency breakdown for this point
4797
+ * netSavings = income expense (savings positive)
4289
4798
  */
4290
- byCurrency?: Array<CurrencyBalanceDto>;
4799
+ netSavings: string;
4291
4800
  };
4292
- type TrendSummaryDto = {
4293
- /**
4294
- * Value at start of period
4295
- */
4296
- startValue: string;
4801
+ type CashFlowTrendSummaryDto = {
4297
4802
  /**
4298
- * Value at end of period
4299
- */
4300
- endValue: string;
4301
- /**
4302
- * Total change over period
4803
+ * Total income across the period
4303
4804
  */
4304
- totalChange: string;
4805
+ totalIncome: string;
4305
4806
  /**
4306
- * Total change percentage
4807
+ * Total expense across the period
4307
4808
  */
4308
- totalChangePercentage: string;
4309
- };
4310
- type MultiCurrencyPointDto = {
4809
+ totalExpense: string;
4311
4810
  /**
4312
- * Date in YYYY-MM-DD format
4811
+ * income expense across the period
4313
4812
  */
4314
- date: string;
4813
+ totalNetSavings: string;
4315
4814
  /**
4316
- * Balances by currency
4815
+ * totalNetSavings divided by the window length (N months, incl. zero-filled)
4317
4816
  */
4318
- byCurrency: Array<CurrencyBalanceDto>;
4817
+ averageMonthlyNetSavings: string;
4319
4818
  };
4320
- type PortfolioTrendsResponseDto = {
4819
+ type CashFlowTrendsResponseDto = {
4321
4820
  /**
4322
- * Time series data points
4821
+ * Monthly cash-flow series (fixed N-month window, zero-filled)
4323
4822
  */
4324
- series: Array<TimeSeriesPointDto>;
4823
+ series: Array<CashFlowPointDto>;
4325
4824
  /**
4326
- * Period summary
4825
+ * Period totals
4327
4826
  */
4328
- summary: TrendSummaryDto;
4827
+ summary: CashFlowTrendSummaryDto;
4329
4828
  /**
4330
4829
  * Period requested
4331
4830
  */
4332
4831
  period: string;
4333
4832
  /**
4334
- * Data granularity
4833
+ * Data granularity (v1 returns month buckets)
4335
4834
  */
4336
4835
  granularity: string;
4337
4836
  /**
@@ -4339,11 +4838,7 @@ type PortfolioTrendsResponseDto = {
4339
4838
  */
4340
4839
  currency: string;
4341
4840
  /**
4342
- * Multi-currency time series (each point has currency breakdown)
4343
- */
4344
- byCurrency?: Array<MultiCurrencyPointDto>;
4345
- /**
4346
- * Exchange rate warnings
4841
+ * Exchange rate warnings (e.g. missing rate for a currency)
4347
4842
  */
4348
4843
  warnings?: Array<ExchangeRateWarningDto>;
4349
4844
  };
@@ -4383,7 +4878,7 @@ type AccountControllerFindAllData = {
4383
4878
  */
4384
4879
  region: 'cn' | 'us' | 'de' | 'gb';
4385
4880
  /**
4386
- * Search term for path or i18nKey
4881
+ * Search term for account path
4387
4882
  */
4388
4883
  search?: string;
4389
4884
  /**
@@ -4454,6 +4949,18 @@ type AccountControllerReopenData = {
4454
4949
  requestBody: ReopenAccountDto;
4455
4950
  };
4456
4951
  type AccountControllerReopenResponse = AccountResponseDto;
4952
+ type AccountControllerAddOpeningBalanceData = {
4953
+ /**
4954
+ * Account UUID
4955
+ */
4956
+ id: string;
4957
+ /**
4958
+ * Region code for tenant context
4959
+ */
4960
+ region: 'cn' | 'us' | 'de' | 'gb';
4961
+ requestBody: CreateOpeningBalanceDto;
4962
+ };
4963
+ type AccountControllerAddOpeningBalanceResponse = OpeningBalanceResultDto;
4457
4964
  type AccountStandardsControllerGetTemplatesData = {
4458
4965
  /**
4459
4966
  * Region code (cn, us, de)
@@ -4503,6 +5010,10 @@ type TransactionControllerListData = {
4503
5010
  * Filter by account ID (transactions with postings to this account)
4504
5011
  */
4505
5012
  accountId?: string;
5013
+ /**
5014
+ * Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
5015
+ */
5016
+ category?: string;
4506
5017
  /**
4507
5018
  * Filter by start date (inclusive), format: YYYY-MM-DD
4508
5019
  */
@@ -4611,7 +5122,7 @@ type TransactionControllerDeleteData = {
4611
5122
  type TransactionControllerDeleteResponse = void;
4612
5123
  type BalanceControllerGetBalanceData = {
4613
5124
  /**
4614
- * Account name (e.g., "Assets:Bank:Checking")
5125
+ * Account name (e.g., "Assets:Checking")
4615
5126
  */
4616
5127
  account: string;
4617
5128
  /**
@@ -4923,6 +5434,91 @@ type CommodityControllerBulkCreateData = {
4923
5434
  region: 'cn' | 'us' | 'de' | 'gb';
4924
5435
  };
4925
5436
  type CommodityControllerBulkCreateResponse = Array<CommodityResponseDto>;
5437
+ type PriceControllerCreateData = {
5438
+ /**
5439
+ * Region code for tenant context
5440
+ */
5441
+ region: 'cn' | 'us' | 'de' | 'gb';
5442
+ requestBody: CreateBeanPriceDto;
5443
+ };
5444
+ type PriceControllerCreateResponse = PriceResponseDto;
5445
+ type PriceControllerFindAllData = {
5446
+ /**
5447
+ * Filter by currency (e.g., BTC, AAPL, USD)
5448
+ */
5449
+ currency?: string;
5450
+ /**
5451
+ * Filter prices from this date (ISO 8601 format)
5452
+ */
5453
+ dateFrom?: string;
5454
+ /**
5455
+ * Filter prices to this date (ISO 8601 format)
5456
+ */
5457
+ dateTo?: string;
5458
+ /**
5459
+ * Number of items per page (default: 20, max: 100)
5460
+ */
5461
+ limit?: number;
5462
+ /**
5463
+ * Page number for pagination (default: 1)
5464
+ */
5465
+ page?: number;
5466
+ /**
5467
+ * Filter by quote currency (pricing currency, e.g., USD, CNY)
5468
+ */
5469
+ quoteCurrency?: string;
5470
+ /**
5471
+ * Region code for tenant context
5472
+ */
5473
+ region: 'cn' | 'us' | 'de' | 'gb';
5474
+ /**
5475
+ * Search term for currency or quoteCurrency (case-insensitive partial match)
5476
+ */
5477
+ search?: string;
5478
+ };
5479
+ type PriceControllerFindAllResponse = PriceListResponseDto;
5480
+ type PriceControllerFindOneData = {
5481
+ /**
5482
+ * Price ID
5483
+ */
5484
+ id: string;
5485
+ /**
5486
+ * Region code for tenant context
5487
+ */
5488
+ region: 'cn' | 'us' | 'de' | 'gb';
5489
+ };
5490
+ type PriceControllerFindOneResponse = PriceResponseDto;
5491
+ type PriceControllerUpdateData = {
5492
+ /**
5493
+ * Price ID
5494
+ */
5495
+ id: string;
5496
+ /**
5497
+ * Region code for tenant context
5498
+ */
5499
+ region: 'cn' | 'us' | 'de' | 'gb';
5500
+ requestBody: UpdateBeanPriceDto;
5501
+ };
5502
+ type PriceControllerUpdateResponse = PriceResponseDto;
5503
+ type PriceControllerDeleteData = {
5504
+ /**
5505
+ * Price ID
5506
+ */
5507
+ id: string;
5508
+ /**
5509
+ * Region code for tenant context
5510
+ */
5511
+ region: 'cn' | 'us' | 'de' | 'gb';
5512
+ };
5513
+ type PriceControllerDeleteResponse = void;
5514
+ type PriceControllerBulkCreateData = {
5515
+ /**
5516
+ * Region code for tenant context
5517
+ */
5518
+ region: 'cn' | 'us' | 'de' | 'gb';
5519
+ requestBody: Array<string>;
5520
+ };
5521
+ type PriceControllerBulkCreateResponse = Array<PriceResponseDto>;
4926
5522
  type RecurringRuleControllerCreateData = {
4927
5523
  /**
4928
5524
  * Region code for tenant context
@@ -5300,117 +5896,214 @@ type PropertyControllerDeleteData = {
5300
5896
  key: string;
5301
5897
  };
5302
5898
  type PropertyControllerDeleteResponse = void;
5303
- type ExportControllerExportBeancountResponse = unknown;
5304
- type FileImportControllerImportFileData = {
5899
+ type EventControllerCreateData = {
5305
5900
  /**
5306
- * Bill file to import
5901
+ * Region code for tenant context (decorative for life events)
5307
5902
  */
5308
- formData: FileImportDto;
5903
+ region: 'cn' | 'us' | 'de' | 'gb';
5904
+ requestBody: CreateBeanEventDto;
5905
+ };
5906
+ type EventControllerCreateResponse = EventResponseDto;
5907
+ type EventControllerFindAllData = {
5309
5908
  /**
5310
- * Region code for tenant context
5909
+ * Filter life events from this date (ISO 8601 format)
5910
+ */
5911
+ from?: string;
5912
+ /**
5913
+ * Number of items per page (default: 20, max: 100)
5914
+ */
5915
+ limit?: number;
5916
+ /**
5917
+ * Page number for pagination (default: 1)
5918
+ */
5919
+ page?: number;
5920
+ /**
5921
+ * Search term for description (case-insensitive partial match)
5922
+ */
5923
+ q?: string;
5924
+ /**
5925
+ * Region code for tenant context (decorative for life events)
5311
5926
  */
5312
5927
  region: 'cn' | 'us' | 'de' | 'gb';
5928
+ /**
5929
+ * Filter life events to this date (ISO 8601 format)
5930
+ */
5931
+ to?: string;
5932
+ /**
5933
+ * Filter by life event type (exact match)
5934
+ */
5935
+ type?: string;
5313
5936
  };
5314
- type FileImportControllerImportFileResponse = ImportResultDto;
5315
- type FileImportControllerIdentifyFileData = {
5937
+ type EventControllerFindAllResponse = EventListResponseDto;
5938
+ type EventControllerFindOneData = {
5316
5939
  /**
5317
- * File to identify
5940
+ * Life event ID
5318
5941
  */
5319
- formData: FileImportDto;
5942
+ id: string;
5320
5943
  /**
5321
- * Region code for tenant context
5944
+ * Region code for tenant context (decorative for life events)
5322
5945
  */
5323
5946
  region: 'cn' | 'us' | 'de' | 'gb';
5324
5947
  };
5325
- type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
5326
- type FileImportControllerImportBeancountData = {
5948
+ type EventControllerFindOneResponse = EventResponseDto;
5949
+ type EventControllerUpdateData = {
5327
5950
  /**
5328
- * Beancount file to import
5951
+ * Life event ID
5329
5952
  */
5330
- formData: FileImportDto;
5953
+ id: string;
5331
5954
  /**
5332
- * Region code for tenant context
5955
+ * Region code for tenant context (decorative for life events)
5333
5956
  */
5334
5957
  region: 'cn' | 'us' | 'de' | 'gb';
5958
+ requestBody: UpdateBeanEventDto;
5335
5959
  };
5336
- type FileImportControllerImportBeancountResponse = {
5337
- imported?: number;
5338
- skipped?: number;
5339
- failed?: number;
5340
- accountsCreated?: number;
5341
- errors?: Array<{
5342
- [key: string]: unknown;
5343
- }>;
5344
- };
5345
- type ImporterConfigControllerGetConfigData = {
5960
+ type EventControllerUpdateResponse = EventResponseDto;
5961
+ type EventControllerDeleteData = {
5346
5962
  /**
5347
- * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
5963
+ * Life event ID
5348
5964
  */
5349
- importerId: string;
5965
+ id: string;
5350
5966
  /**
5351
- * Region code for tenant context
5967
+ * Region code for tenant context (decorative for life events)
5352
5968
  */
5353
5969
  region: 'cn' | 'us' | 'de' | 'gb';
5354
5970
  };
5355
- type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
5356
- type ImporterConfigControllerUpdateConfigData = {
5971
+ type EventControllerDeleteResponse = void;
5972
+ type EventControllerGetSliceData = {
5973
+ accountPattern: string;
5974
+ granularity: string;
5357
5975
  /**
5358
- * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
5976
+ * Life event ID
5359
5977
  */
5360
- importerId: string;
5978
+ id: string;
5361
5979
  /**
5362
- * Region code for tenant context
5980
+ * Region code for tenant context (decorative for life events)
5363
5981
  */
5364
5982
  region: 'cn' | 'us' | 'de' | 'gb';
5983
+ };
5984
+ type EventControllerGetSliceResponse = unknown;
5985
+ type OnboardingControllerBootstrapData = {
5365
5986
  /**
5366
- * Partial configuration update. Only provided fields will be updated.
5987
+ * Region code for tenant context
5367
5988
  */
5368
- requestBody: UpdateImporterConfigDto;
5989
+ region: 'cn' | 'us' | 'de' | 'gb';
5990
+ requestBody: OnboardingDto;
5369
5991
  };
5370
- type ImporterConfigControllerUpdateConfigResponse = ImporterConfigDto;
5371
- type ImporterConfigControllerResetConfigData = {
5992
+ type OnboardingControllerBootstrapResponse = unknown;
5993
+ type ReconciliationControllerComputeData = {
5372
5994
  /**
5373
- * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
5995
+ * Region code for tenant context (decorative for reconciliation)
5374
5996
  */
5375
- importerId: string;
5997
+ region: 'cn' | 'us' | 'de' | 'gb';
5998
+ requestBody: ComputeReconciliationDto;
5999
+ };
6000
+ type ReconciliationControllerComputeResponse = ReconciliationComputeResultDto;
6001
+ type ReconciliationControllerAssertData = {
5376
6002
  /**
5377
- * Region code for tenant context
6003
+ * Region code for tenant context (decorative for reconciliation)
5378
6004
  */
5379
6005
  region: 'cn' | 'us' | 'de' | 'gb';
6006
+ requestBody: AssertReconciliationDto;
5380
6007
  };
5381
- type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
5382
- type PlatformControllerFindAllResponse = unknown;
5383
- type PlatformControllerCreateData = {
5384
- requestBody: CreatePlatformDto;
6008
+ type ReconciliationControllerAssertResponse = ReconciliationRecordDto;
6009
+ type ReconciliationControllerPadData = {
6010
+ /**
6011
+ * Region code for tenant context (decorative for reconciliation)
6012
+ */
6013
+ region: 'cn' | 'us' | 'de' | 'gb';
6014
+ requestBody: PadReconciliationDto;
5385
6015
  };
5386
- type PlatformControllerCreateResponse = unknown;
5387
- type PlatformControllerGetPlatformListResponse = unknown;
5388
- type PlatformControllerMatchPlatformsData = {
6016
+ type ReconciliationControllerPadResponse = PadResultDto;
6017
+ type ReconciliationControllerHistoryData = {
5389
6018
  /**
5390
- * Search query — Chinese name, English name, or abbreviation
6019
+ * BeanAccount id
5391
6020
  */
5392
- q: string;
6021
+ accountId: string;
5393
6022
  /**
5394
- * Region code for category override lookup
6023
+ * Region code for tenant context (decorative for reconciliation)
5395
6024
  */
5396
- region?: string;
6025
+ region: 'cn' | 'us' | 'de' | 'gb';
5397
6026
  };
5398
- type PlatformControllerMatchPlatformsResponse = unknown;
5399
- type PlatformControllerUpdateData = {
6027
+ type ReconciliationControllerHistoryResponse = Array<ReconciliationRecordDto>;
6028
+ type ExportControllerExportBeancountResponse = unknown;
6029
+ type FileImportControllerImportFileData = {
5400
6030
  /**
5401
- * Platform ID
6031
+ * Bill file to import
5402
6032
  */
5403
- id: string;
5404
- requestBody: UpdatePlatformDto;
6033
+ formData: FileImportDto;
6034
+ /**
6035
+ * Region code for tenant context
6036
+ */
6037
+ region: 'cn' | 'us' | 'de' | 'gb';
5405
6038
  };
5406
- type PlatformControllerUpdateResponse = unknown;
5407
- type PlatformControllerDeleteData = {
6039
+ type FileImportControllerImportFileResponse = ImportResultDto;
6040
+ type FileImportControllerIdentifyFileData = {
5408
6041
  /**
5409
- * Platform ID
6042
+ * File to identify
5410
6043
  */
5411
- id: string;
6044
+ formData: FileImportDto;
6045
+ /**
6046
+ * Region code for tenant context
6047
+ */
6048
+ region: 'cn' | 'us' | 'de' | 'gb';
5412
6049
  };
5413
- type PlatformControllerDeleteResponse = void;
6050
+ type FileImportControllerIdentifyFileResponse = IdentifyResultDto;
6051
+ type FileImportControllerImportBeancountData = {
6052
+ /**
6053
+ * Beancount file to import
6054
+ */
6055
+ formData: FileImportDto;
6056
+ /**
6057
+ * Region code for tenant context
6058
+ */
6059
+ region: 'cn' | 'us' | 'de' | 'gb';
6060
+ };
6061
+ type FileImportControllerImportBeancountResponse = {
6062
+ imported?: number;
6063
+ skipped?: number;
6064
+ failed?: number;
6065
+ accountsCreated?: number;
6066
+ errors?: Array<{
6067
+ [key: string]: unknown;
6068
+ }>;
6069
+ };
6070
+ type ImporterConfigControllerGetConfigData = {
6071
+ /**
6072
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
6073
+ */
6074
+ importerId: string;
6075
+ /**
6076
+ * Region code for tenant context
6077
+ */
6078
+ region: 'cn' | 'us' | 'de' | 'gb';
6079
+ };
6080
+ type ImporterConfigControllerGetConfigResponse = ImporterConfigDto;
6081
+ type ImporterConfigControllerUpdateConfigData = {
6082
+ /**
6083
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
6084
+ */
6085
+ importerId: string;
6086
+ /**
6087
+ * Region code for tenant context
6088
+ */
6089
+ region: 'cn' | 'us' | 'de' | 'gb';
6090
+ /**
6091
+ * Partial configuration update. Only provided fields will be updated.
6092
+ */
6093
+ requestBody: UpdateImporterConfigDto;
6094
+ };
6095
+ type ImporterConfigControllerUpdateConfigResponse = ImporterConfigDto;
6096
+ type ImporterConfigControllerResetConfigData = {
6097
+ /**
6098
+ * Importer identifier. Supported importers: alipay, alipay-web, wechat, boc, boc-credit, ccb, cmb, cmbc, cmbc-credit, icbc, icbc-credit, hsbc-hk-credit, hsbc-hk-debit
6099
+ */
6100
+ importerId: string;
6101
+ /**
6102
+ * Region code for tenant context
6103
+ */
6104
+ region: 'cn' | 'us' | 'de' | 'gb';
6105
+ };
6106
+ type ImporterConfigControllerResetConfigResponse = ImporterConfigDto;
5414
6107
  type ProviderSyncControllerSyncData = {
5415
6108
  /**
5416
6109
  * Provider name
@@ -5441,6 +6134,38 @@ type ProviderSyncControllerIsProviderSupportedData = {
5441
6134
  region: 'cn' | 'us' | 'de' | 'gb';
5442
6135
  };
5443
6136
  type ProviderSyncControllerIsProviderSupportedResponse = unknown;
6137
+ type ExternalAccountLinkControllerCreateData = {
6138
+ /**
6139
+ * Region code for tenant context
6140
+ */
6141
+ region: 'cn' | 'us' | 'de' | 'gb';
6142
+ requestBody: CreateExternalAccountLinkDto;
6143
+ };
6144
+ type ExternalAccountLinkControllerCreateResponse = ExternalAccountLinkResponseDto;
6145
+ type ExternalAccountLinkControllerFindAllData = {
6146
+ provider: string;
6147
+ /**
6148
+ * Region code for tenant context
6149
+ */
6150
+ region: 'cn' | 'us' | 'de' | 'gb';
6151
+ };
6152
+ type ExternalAccountLinkControllerFindAllResponse = ExternalAccountLinkListResponseDto;
6153
+ type ExternalAccountLinkControllerFindOneData = {
6154
+ id: string;
6155
+ /**
6156
+ * Region code for tenant context
6157
+ */
6158
+ region: 'cn' | 'us' | 'de' | 'gb';
6159
+ };
6160
+ type ExternalAccountLinkControllerFindOneResponse = ExternalAccountLinkResponseDto;
6161
+ type ExternalAccountLinkControllerRemoveData = {
6162
+ id: string;
6163
+ /**
6164
+ * Region code for tenant context
6165
+ */
6166
+ region: 'cn' | 'us' | 'de' | 'gb';
6167
+ };
6168
+ type ExternalAccountLinkControllerRemoveResponse = void;
5444
6169
  type TelemetryControllerReportTelemetryData = {
5445
6170
  /**
5446
6171
  * Region code for tenant context
@@ -5501,6 +6226,38 @@ type NlpControllerGetSessionData = {
5501
6226
  sessionId?: string;
5502
6227
  };
5503
6228
  type NlpControllerGetSessionResponse = unknown;
6229
+ type PlatformControllerFindAllResponse = unknown;
6230
+ type PlatformControllerCreateData = {
6231
+ requestBody: CreatePlatformDto;
6232
+ };
6233
+ type PlatformControllerCreateResponse = unknown;
6234
+ type PlatformControllerGetPlatformListResponse = Array<PlatformListItemDto>;
6235
+ type PlatformControllerMatchPlatformsData = {
6236
+ /**
6237
+ * Search query — Chinese name, English name, or abbreviation
6238
+ */
6239
+ q: string;
6240
+ /**
6241
+ * Region code for category override lookup
6242
+ */
6243
+ region?: string;
6244
+ };
6245
+ type PlatformControllerMatchPlatformsResponse = unknown;
6246
+ type PlatformControllerUpdateData = {
6247
+ /**
6248
+ * Platform ID
6249
+ */
6250
+ id: string;
6251
+ requestBody: UpdatePlatformDto;
6252
+ };
6253
+ type PlatformControllerUpdateResponse = unknown;
6254
+ type PlatformControllerDeleteData = {
6255
+ /**
6256
+ * Platform ID
6257
+ */
6258
+ id: string;
6259
+ };
6260
+ type PlatformControllerDeleteResponse = void;
5504
6261
  type DashboardControllerGetNetWorthData = {
5505
6262
  /**
5506
6263
  * Date for balance calculation (ISO 8601 format)
@@ -5542,113 +6299,62 @@ type DashboardControllerGetCashFlowData = {
5542
6299
  region: 'cn' | 'us' | 'de' | 'gb';
5543
6300
  };
5544
6301
  type DashboardControllerGetCashFlowResponse = CashFlowResponseDto;
5545
- type HoldingPnlControllerGetHoldingPnlData = {
5546
- /**
5547
- * Scope to a single account
5548
- */
5549
- accountId?: string;
5550
- /**
5551
- * As-of date (ISO 8601), defaults to today
5552
- */
5553
- asOf?: string;
5554
- /**
5555
- * Realized-P&L lot-matching method (default average). Does not affect the average-cost unrealized basis.
5556
- */
5557
- method?: 'FIFO' | 'average';
5558
- /**
5559
- * Region code for tenant context
5560
- */
5561
- region: 'cn' | 'us' | 'de' | 'gb';
5562
- };
5563
- type HoldingPnlControllerGetHoldingPnlResponse = HoldingPnlResponseDto;
5564
- type PriceControllerCreateData = {
5565
- /**
5566
- * Region code for tenant context
5567
- */
5568
- region: 'cn' | 'us' | 'de' | 'gb';
5569
- requestBody: CreateBeanPriceDto;
5570
- };
5571
- type PriceControllerCreateResponse = PriceResponseDto;
5572
- type PriceControllerFindAllData = {
5573
- /**
5574
- * Filter by currency (e.g., BTC, AAPL, USD)
5575
- */
5576
- currency?: string;
5577
- /**
5578
- * Filter prices from this date (ISO 8601 format)
5579
- */
5580
- dateFrom?: string;
5581
- /**
5582
- * Filter prices to this date (ISO 8601 format)
5583
- */
5584
- dateTo?: string;
6302
+ type DashboardControllerGetExpensesData = {
5585
6303
  /**
5586
- * Number of items per page (default: 20, max: 100)
6304
+ * Account root to aggregate (expense ^Expenses:, income → ^Income:)
5587
6305
  */
5588
- limit?: number;
6306
+ flow?: 'expense' | 'income';
5589
6307
  /**
5590
- * Page number for pagination (default: 1)
6308
+ * Grouping strategy
5591
6309
  */
5592
- page?: number;
6310
+ groupBy?: 'category';
5593
6311
  /**
5594
- * Filter by quote currency (pricing currency, e.g., USD, CNY)
6312
+ * Time window (1m = current calendar month)
5595
6313
  */
5596
- quoteCurrency?: string;
6314
+ period?: '1m' | '3m' | '6m' | '1y';
5597
6315
  /**
5598
6316
  * Region code for tenant context
5599
6317
  */
5600
6318
  region: 'cn' | 'us' | 'de' | 'gb';
5601
- /**
5602
- * Search term for currency or quoteCurrency (case-insensitive partial match)
5603
- */
5604
- search?: string;
5605
6319
  };
5606
- type PriceControllerFindAllResponse = PriceListResponseDto;
5607
- type PriceControllerFindOneData = {
6320
+ type DashboardControllerGetExpensesResponse = ExpensesByCategoryResponseDto;
6321
+ type HoldingPnlControllerGetHoldingPnlData = {
5608
6322
  /**
5609
- * Price ID
6323
+ * Scope to a single account
5610
6324
  */
5611
- id: string;
6325
+ accountId?: string;
5612
6326
  /**
5613
- * Region code for tenant context
6327
+ * As-of date (ISO 8601), defaults to today
5614
6328
  */
5615
- region: 'cn' | 'us' | 'de' | 'gb';
5616
- };
5617
- type PriceControllerFindOneResponse = PriceResponseDto;
5618
- type PriceControllerUpdateData = {
6329
+ asOf?: string;
5619
6330
  /**
5620
- * Price ID
6331
+ * Realized-P&L lot-matching method (default average). Does not affect the average-cost unrealized basis.
5621
6332
  */
5622
- id: string;
6333
+ method?: 'FIFO' | 'average';
5623
6334
  /**
5624
6335
  * Region code for tenant context
5625
6336
  */
5626
6337
  region: 'cn' | 'us' | 'de' | 'gb';
5627
- requestBody: UpdateBeanPriceDto;
5628
6338
  };
5629
- type PriceControllerUpdateResponse = PriceResponseDto;
5630
- type PriceControllerDeleteData = {
6339
+ type HoldingPnlControllerGetHoldingPnlResponse = HoldingPnlResponseDto;
6340
+ type ReportingControllerGetPortfolioTrendsData = {
5631
6341
  /**
5632
- * Price ID
6342
+ * Data granularity
5633
6343
  */
5634
- id: string;
6344
+ granularity?: 'day' | 'week' | 'month';
5635
6345
  /**
5636
- * Region code for tenant context
6346
+ * Time period
5637
6347
  */
5638
- region: 'cn' | 'us' | 'de' | 'gb';
5639
- };
5640
- type PriceControllerDeleteResponse = void;
5641
- type PriceControllerBulkCreateData = {
6348
+ period?: '1m' | '3m' | '6m' | '1y';
5642
6349
  /**
5643
6350
  * Region code for tenant context
5644
6351
  */
5645
6352
  region: 'cn' | 'us' | 'de' | 'gb';
5646
- requestBody: Array<string>;
5647
6353
  };
5648
- type PriceControllerBulkCreateResponse = Array<PriceResponseDto>;
5649
- type ReportingControllerGetPortfolioTrendsData = {
6354
+ type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
6355
+ type ReportingControllerGetCashFlowTrendsData = {
5650
6356
  /**
5651
- * Data granularity
6357
+ * Data granularity (accepted for API symmetry; v1 returns month buckets)
5652
6358
  */
5653
6359
  granularity?: 'day' | 'week' | 'month';
5654
6360
  /**
@@ -5660,7 +6366,7 @@ type ReportingControllerGetPortfolioTrendsData = {
5660
6366
  */
5661
6367
  region: 'cn' | 'us' | 'de' | 'gb';
5662
6368
  };
5663
- type ReportingControllerGetPortfolioTrendsResponse = PortfolioTrendsResponseDto;
6369
+ type ReportingControllerGetCashFlowTrendsResponse = CashFlowTrendsResponseDto;
5664
6370
  type ReportingControllerGenerateSnapshotData = {
5665
6371
  /**
5666
6372
  * Region code for tenant context
@@ -5819,6 +6525,25 @@ type $OpenApiTs = {
5819
6525
  };
5820
6526
  };
5821
6527
  };
6528
+ '/api/v1/{region}/bean/accounts/{id}/opening-balance': {
6529
+ post: {
6530
+ req: AccountControllerAddOpeningBalanceData;
6531
+ res: {
6532
+ /**
6533
+ * Opening-balance transaction created
6534
+ */
6535
+ 201: OpeningBalanceResultDto;
6536
+ /**
6537
+ * Account not found
6538
+ */
6539
+ 404: unknown;
6540
+ /**
6541
+ * An opening balance already exists for this account
6542
+ */
6543
+ 409: unknown;
6544
+ };
6545
+ };
6546
+ };
5822
6547
  '/api/v1/{region}/bean/account-standards': {
5823
6548
  get: {
5824
6549
  req: AccountStandardsControllerGetTemplatesData;
@@ -6427,6 +7152,90 @@ type $OpenApiTs = {
6427
7152
  };
6428
7153
  };
6429
7154
  };
7155
+ '/api/v1/{region}/bean/prices': {
7156
+ post: {
7157
+ req: PriceControllerCreateData;
7158
+ res: {
7159
+ /**
7160
+ * Price created successfully
7161
+ */
7162
+ 201: PriceResponseDto;
7163
+ /**
7164
+ * Currency or quoteCurrency commodity not found
7165
+ */
7166
+ 404: unknown;
7167
+ /**
7168
+ * Price already exists for this currency pair and date
7169
+ */
7170
+ 409: unknown;
7171
+ };
7172
+ };
7173
+ get: {
7174
+ req: PriceControllerFindAllData;
7175
+ res: {
7176
+ /**
7177
+ * Prices retrieved successfully
7178
+ */
7179
+ 200: PriceListResponseDto;
7180
+ };
7181
+ };
7182
+ };
7183
+ '/api/v1/{region}/bean/prices/{id}': {
7184
+ get: {
7185
+ req: PriceControllerFindOneData;
7186
+ res: {
7187
+ /**
7188
+ * Price retrieved successfully
7189
+ */
7190
+ 200: PriceResponseDto;
7191
+ /**
7192
+ * Price not found
7193
+ */
7194
+ 404: unknown;
7195
+ };
7196
+ };
7197
+ put: {
7198
+ req: PriceControllerUpdateData;
7199
+ res: {
7200
+ /**
7201
+ * Price updated successfully
7202
+ */
7203
+ 200: PriceResponseDto;
7204
+ /**
7205
+ * Price not found
7206
+ */
7207
+ 404: unknown;
7208
+ /**
7209
+ * Updated price conflicts with existing price
7210
+ */
7211
+ 409: unknown;
7212
+ };
7213
+ };
7214
+ delete: {
7215
+ req: PriceControllerDeleteData;
7216
+ res: {
7217
+ /**
7218
+ * Price deleted successfully
7219
+ */
7220
+ 204: void;
7221
+ /**
7222
+ * Price not found
7223
+ */
7224
+ 404: unknown;
7225
+ };
7226
+ };
7227
+ };
7228
+ '/api/v1/{region}/bean/prices/bulk': {
7229
+ post: {
7230
+ req: PriceControllerBulkCreateData;
7231
+ res: {
7232
+ /**
7233
+ * Prices created successfully
7234
+ */
7235
+ 201: Array<PriceResponseDto>;
7236
+ };
7237
+ };
7238
+ };
6430
7239
  '/api/v1/{region}/bean/recurring-rules': {
6431
7240
  post: {
6432
7241
  req: RecurringRuleControllerCreateData;
@@ -7071,6 +7880,181 @@ type $OpenApiTs = {
7071
7880
  };
7072
7881
  };
7073
7882
  };
7883
+ '/api/v1/{region}/bean/events': {
7884
+ post: {
7885
+ req: EventControllerCreateData;
7886
+ res: {
7887
+ /**
7888
+ * Life event created successfully
7889
+ */
7890
+ 201: EventResponseDto;
7891
+ /**
7892
+ * Life event already exists for this (userId, type, date) combination
7893
+ */
7894
+ 409: unknown;
7895
+ };
7896
+ };
7897
+ get: {
7898
+ req: EventControllerFindAllData;
7899
+ res: {
7900
+ /**
7901
+ * Life events retrieved successfully
7902
+ */
7903
+ 200: EventListResponseDto;
7904
+ };
7905
+ };
7906
+ };
7907
+ '/api/v1/{region}/bean/events/{id}': {
7908
+ get: {
7909
+ req: EventControllerFindOneData;
7910
+ res: {
7911
+ /**
7912
+ * Life event retrieved successfully
7913
+ */
7914
+ 200: EventResponseDto;
7915
+ /**
7916
+ * Life event not found
7917
+ */
7918
+ 404: unknown;
7919
+ };
7920
+ };
7921
+ put: {
7922
+ req: EventControllerUpdateData;
7923
+ res: {
7924
+ /**
7925
+ * Life event updated successfully
7926
+ */
7927
+ 200: EventResponseDto;
7928
+ /**
7929
+ * If-Match header is not a valid ISO 8601 date
7930
+ */
7931
+ 400: unknown;
7932
+ /**
7933
+ * Life event not found
7934
+ */
7935
+ 404: unknown;
7936
+ /**
7937
+ * Updated event conflicts with an existing (userId, type, date) combination
7938
+ */
7939
+ 409: unknown;
7940
+ /**
7941
+ * If-Match precondition failed (updatedAt mismatch)
7942
+ */
7943
+ 412: unknown;
7944
+ };
7945
+ };
7946
+ delete: {
7947
+ req: EventControllerDeleteData;
7948
+ res: {
7949
+ /**
7950
+ * Life event deleted successfully
7951
+ */
7952
+ 204: void;
7953
+ /**
7954
+ * Life event not found
7955
+ */
7956
+ 404: unknown;
7957
+ };
7958
+ };
7959
+ };
7960
+ '/api/v1/{region}/bean/events/{id}/slice': {
7961
+ get: {
7962
+ req: EventControllerGetSliceData;
7963
+ res: {
7964
+ /**
7965
+ * Time-series sliced by the life event range
7966
+ */
7967
+ 200: unknown;
7968
+ /**
7969
+ * accountPattern query param is empty
7970
+ */
7971
+ 400: unknown;
7972
+ /**
7973
+ * Life event not found
7974
+ */
7975
+ 404: unknown;
7976
+ };
7977
+ };
7978
+ };
7979
+ '/api/v1/{region}/bean/onboarding': {
7980
+ post: {
7981
+ req: OnboardingControllerBootstrapData;
7982
+ res: {
7983
+ /**
7984
+ * Onboarding bootstrap result.
7985
+ */
7986
+ 201: unknown;
7987
+ /**
7988
+ * Invalid region/account path/duplicate paths.
7989
+ */
7990
+ 422: unknown;
7991
+ };
7992
+ };
7993
+ };
7994
+ '/api/v1/{region}/bean/reconciliations': {
7995
+ post: {
7996
+ req: ReconciliationControllerComputeData;
7997
+ res: {
7998
+ /**
7999
+ * Reconciliation preview
8000
+ */
8001
+ 200: ReconciliationComputeResultDto;
8002
+ /**
8003
+ * Account not found
8004
+ */
8005
+ 404: unknown;
8006
+ };
8007
+ };
8008
+ };
8009
+ '/api/v1/{region}/bean/reconciliations/assert': {
8010
+ post: {
8011
+ req: ReconciliationControllerAssertData;
8012
+ res: {
8013
+ /**
8014
+ * Balance assertion recorded
8015
+ */
8016
+ 201: ReconciliationRecordDto;
8017
+ /**
8018
+ * Account not found
8019
+ */
8020
+ 404: unknown;
8021
+ };
8022
+ };
8023
+ };
8024
+ '/api/v1/{region}/bean/reconciliations/pad': {
8025
+ post: {
8026
+ req: ReconciliationControllerPadData;
8027
+ res: {
8028
+ /**
8029
+ * Pad adjusting entry generated
8030
+ */
8031
+ 201: PadResultDto;
8032
+ /**
8033
+ * Book already within tolerance — no pad needed
8034
+ */
8035
+ 400: unknown;
8036
+ /**
8037
+ * Account not found
8038
+ */
8039
+ 404: unknown;
8040
+ };
8041
+ };
8042
+ };
8043
+ '/api/v1/{region}/bean/accounts/{accountId}/reconciliations': {
8044
+ get: {
8045
+ req: ReconciliationControllerHistoryData;
8046
+ res: {
8047
+ /**
8048
+ * Reconciliation history
8049
+ */
8050
+ 200: Array<ReconciliationRecordDto>;
8051
+ /**
8052
+ * Account not found
8053
+ */
8054
+ 404: unknown;
8055
+ };
8056
+ };
8057
+ };
7074
8058
  '/api/v1/{region}/bean/export/beancount': {
7075
8059
  get: {
7076
8060
  res: {
@@ -7221,128 +8205,104 @@ type $OpenApiTs = {
7221
8205
  };
7222
8206
  };
7223
8207
  };
7224
- '/api/v1/bean/platforms': {
7225
- get: {
8208
+ '/api/v1/{region}/bean/import/provider/{providerName}/sync': {
8209
+ post: {
8210
+ req: ProviderSyncControllerSyncData;
7226
8211
  res: {
7227
8212
  /**
7228
- * List of platforms with binding and account counts
8213
+ * Sync completed successfully
7229
8214
  */
7230
- 200: unknown;
7231
- };
7232
- };
7233
- post: {
7234
- req: PlatformControllerCreateData;
7235
- res: {
8215
+ 200: ProviderSyncResponseDto;
7236
8216
  /**
7237
- * Platform created successfully
8217
+ * Invalid request data
7238
8218
  */
7239
- 201: unknown;
8219
+ 400: unknown;
7240
8220
  /**
7241
- * Platform already exists
8221
+ * Missing or invalid authentication
7242
8222
  */
7243
- 409: unknown;
7244
- };
7245
- };
7246
- };
7247
- '/api/v1/bean/platforms/list': {
7248
- get: {
7249
- res: {
8223
+ 401: unknown;
7250
8224
  /**
7251
- * List of platforms with user binding status
8225
+ * Provider not supported
7252
8226
  */
7253
- 200: unknown;
8227
+ 404: unknown;
7254
8228
  };
7255
8229
  };
7256
8230
  };
7257
- '/api/v1/bean/platforms/match': {
8231
+ '/api/v1/{region}/bean/import/provider/supported': {
7258
8232
  get: {
7259
- req: PlatformControllerMatchPlatformsData;
8233
+ req: ProviderSyncControllerGetSupportedProvidersData;
7260
8234
  res: {
7261
8235
  /**
7262
- * List of matching platforms with suggested segment names
8236
+ * List of supported providers
7263
8237
  */
7264
- 200: unknown;
8238
+ 200: SupportedProvidersResponseDto;
8239
+ /**
8240
+ * Missing or invalid authentication
8241
+ */
8242
+ 401: unknown;
7265
8243
  };
7266
8244
  };
7267
8245
  };
7268
- '/api/v1/bean/platforms/{id}': {
7269
- put: {
7270
- req: PlatformControllerUpdateData;
8246
+ '/api/v1/{region}/bean/import/provider/{providerName}/supported': {
8247
+ get: {
8248
+ req: ProviderSyncControllerIsProviderSupportedData;
7271
8249
  res: {
7272
8250
  /**
7273
- * Platform updated successfully
8251
+ * Provider support status
7274
8252
  */
7275
8253
  200: unknown;
7276
8254
  /**
7277
- * Platform not found
8255
+ * Missing or invalid authentication
7278
8256
  */
7279
- 404: unknown;
8257
+ 401: unknown;
7280
8258
  };
7281
8259
  };
7282
- delete: {
7283
- req: PlatformControllerDeleteData;
8260
+ };
8261
+ '/api/v1/{region}/bean/external-account-links': {
8262
+ post: {
8263
+ req: ExternalAccountLinkControllerCreateData;
7284
8264
  res: {
7285
8265
  /**
7286
- * Platform deleted successfully
8266
+ * Link created.
7287
8267
  */
7288
- 204: void;
8268
+ 201: ExternalAccountLinkResponseDto;
7289
8269
  /**
7290
- * Platform not found
8270
+ * beanAccountId not owned, or an active link already exists.
7291
8271
  */
7292
- 404: unknown;
8272
+ 422: unknown;
7293
8273
  };
7294
8274
  };
7295
- };
7296
- '/api/v1/{region}/bean/import/provider/{providerName}/sync': {
7297
- post: {
7298
- req: ProviderSyncControllerSyncData;
8275
+ get: {
8276
+ req: ExternalAccountLinkControllerFindAllData;
7299
8277
  res: {
7300
8278
  /**
7301
- * Sync completed successfully
7302
- */
7303
- 200: ProviderSyncResponseDto;
7304
- /**
7305
- * Invalid request data
7306
- */
7307
- 400: unknown;
7308
- /**
7309
- * Missing or invalid authentication
7310
- */
7311
- 401: unknown;
7312
- /**
7313
- * Provider not supported
8279
+ * Links retrieved.
7314
8280
  */
7315
- 404: unknown;
8281
+ 200: ExternalAccountLinkListResponseDto;
7316
8282
  };
7317
8283
  };
7318
8284
  };
7319
- '/api/v1/{region}/bean/import/provider/supported': {
8285
+ '/api/v1/{region}/bean/external-account-links/{id}': {
7320
8286
  get: {
7321
- req: ProviderSyncControllerGetSupportedProvidersData;
8287
+ req: ExternalAccountLinkControllerFindOneData;
7322
8288
  res: {
7323
8289
  /**
7324
- * List of supported providers
8290
+ * Link retrieved.
7325
8291
  */
7326
- 200: SupportedProvidersResponseDto;
8292
+ 200: ExternalAccountLinkResponseDto;
7327
8293
  /**
7328
- * Missing or invalid authentication
8294
+ * Link not found or not owned by the user.
7329
8295
  */
7330
- 401: unknown;
8296
+ 422: unknown;
7331
8297
  };
7332
8298
  };
7333
- };
7334
- '/api/v1/{region}/bean/import/provider/{providerName}/supported': {
7335
- get: {
7336
- req: ProviderSyncControllerIsProviderSupportedData;
8299
+ delete: {
8300
+ req: ExternalAccountLinkControllerRemoveData;
7337
8301
  res: {
7338
8302
  /**
7339
- * Provider support status
8303
+ * Link soft-deleted; historical transactions are unaffected.
7340
8304
  */
7341
- 200: unknown;
7342
- /**
7343
- * Missing or invalid authentication
7344
- */
7345
- 401: unknown;
8305
+ 204: void;
7346
8306
  };
7347
8307
  };
7348
8308
  };
@@ -7434,6 +8394,78 @@ type $OpenApiTs = {
7434
8394
  };
7435
8395
  };
7436
8396
  };
8397
+ '/api/v1/bean/platforms': {
8398
+ get: {
8399
+ res: {
8400
+ /**
8401
+ * List of platforms with binding and account counts
8402
+ */
8403
+ 200: unknown;
8404
+ };
8405
+ };
8406
+ post: {
8407
+ req: PlatformControllerCreateData;
8408
+ res: {
8409
+ /**
8410
+ * Platform created successfully
8411
+ */
8412
+ 201: unknown;
8413
+ /**
8414
+ * Platform already exists
8415
+ */
8416
+ 409: unknown;
8417
+ };
8418
+ };
8419
+ };
8420
+ '/api/v1/bean/platforms/list': {
8421
+ get: {
8422
+ res: {
8423
+ /**
8424
+ * List of platforms with user binding status
8425
+ */
8426
+ 200: Array<PlatformListItemDto>;
8427
+ };
8428
+ };
8429
+ };
8430
+ '/api/v1/bean/platforms/match': {
8431
+ get: {
8432
+ req: PlatformControllerMatchPlatformsData;
8433
+ res: {
8434
+ /**
8435
+ * List of matching platforms with suggested segment names
8436
+ */
8437
+ 200: unknown;
8438
+ };
8439
+ };
8440
+ };
8441
+ '/api/v1/bean/platforms/{id}': {
8442
+ put: {
8443
+ req: PlatformControllerUpdateData;
8444
+ res: {
8445
+ /**
8446
+ * Platform updated successfully
8447
+ */
8448
+ 200: unknown;
8449
+ /**
8450
+ * Platform not found
8451
+ */
8452
+ 404: unknown;
8453
+ };
8454
+ };
8455
+ delete: {
8456
+ req: PlatformControllerDeleteData;
8457
+ res: {
8458
+ /**
8459
+ * Platform deleted successfully
8460
+ */
8461
+ 204: void;
8462
+ /**
8463
+ * Platform not found
8464
+ */
8465
+ 404: unknown;
8466
+ };
8467
+ };
8468
+ };
7437
8469
  '/api/v1/{region}/dashboard/net-worth': {
7438
8470
  get: {
7439
8471
  req: DashboardControllerGetNetWorthData;
@@ -7483,16 +8515,16 @@ type $OpenApiTs = {
7483
8515
  };
7484
8516
  };
7485
8517
  };
7486
- '/api/v1/{region}/investment/holdings/pnl': {
8518
+ '/api/v1/{region}/dashboard/expenses': {
7487
8519
  get: {
7488
- req: HoldingPnlControllerGetHoldingPnlData;
8520
+ req: DashboardControllerGetExpensesData;
7489
8521
  res: {
7490
8522
  /**
7491
- * Holding P&L retrieved successfully
8523
+ * Expenses retrieved successfully
7492
8524
  */
7493
- 200: HoldingPnlResponseDto;
8525
+ 200: ExpensesByCategoryResponseDto;
7494
8526
  /**
7495
- * Invalid asOf format/value/future date, invalid accountId format, or unsupported method
8527
+ * Invalid groupBy or period
7496
8528
  */
7497
8529
  400: unknown;
7498
8530
  /**
@@ -7502,98 +8534,48 @@ type $OpenApiTs = {
7502
8534
  };
7503
8535
  };
7504
8536
  };
7505
- '/api/v1/{region}/bean/prices': {
7506
- post: {
7507
- req: PriceControllerCreateData;
8537
+ '/api/v1/{region}/investment/holdings/pnl': {
8538
+ get: {
8539
+ req: HoldingPnlControllerGetHoldingPnlData;
7508
8540
  res: {
7509
8541
  /**
7510
- * Price created successfully
7511
- */
7512
- 201: PriceResponseDto;
7513
- /**
7514
- * Currency or quoteCurrency commodity not found
8542
+ * Holding P&L retrieved successfully
7515
8543
  */
7516
- 404: unknown;
8544
+ 200: HoldingPnlResponseDto;
7517
8545
  /**
7518
- * Price already exists for this currency pair and date
8546
+ * Invalid asOf format/value/future date, invalid accountId format, or unsupported method
7519
8547
  */
7520
- 409: unknown;
7521
- };
7522
- };
7523
- get: {
7524
- req: PriceControllerFindAllData;
7525
- res: {
8548
+ 400: unknown;
7526
8549
  /**
7527
- * Prices retrieved successfully
8550
+ * User not authenticated
7528
8551
  */
7529
- 200: PriceListResponseDto;
8552
+ 401: unknown;
7530
8553
  };
7531
8554
  };
7532
8555
  };
7533
- '/api/v1/{region}/bean/prices/{id}': {
8556
+ '/api/v1/{region}/reporting/portfolio/trends': {
7534
8557
  get: {
7535
- req: PriceControllerFindOneData;
7536
- res: {
7537
- /**
7538
- * Price retrieved successfully
7539
- */
7540
- 200: PriceResponseDto;
7541
- /**
7542
- * Price not found
7543
- */
7544
- 404: unknown;
7545
- };
7546
- };
7547
- put: {
7548
- req: PriceControllerUpdateData;
7549
- res: {
7550
- /**
7551
- * Price updated successfully
7552
- */
7553
- 200: PriceResponseDto;
7554
- /**
7555
- * Price not found
7556
- */
7557
- 404: unknown;
7558
- /**
7559
- * Updated price conflicts with existing price
7560
- */
7561
- 409: unknown;
7562
- };
7563
- };
7564
- delete: {
7565
- req: PriceControllerDeleteData;
8558
+ req: ReportingControllerGetPortfolioTrendsData;
7566
8559
  res: {
7567
8560
  /**
7568
- * Price deleted successfully
7569
- */
7570
- 204: void;
7571
- /**
7572
- * Price not found
8561
+ * Trends retrieved successfully
7573
8562
  */
7574
- 404: unknown;
7575
- };
7576
- };
7577
- };
7578
- '/api/v1/{region}/bean/prices/bulk': {
7579
- post: {
7580
- req: PriceControllerBulkCreateData;
7581
- res: {
8563
+ 200: PortfolioTrendsResponseDto;
7582
8564
  /**
7583
- * Prices created successfully
8565
+ * User not authenticated
7584
8566
  */
7585
- 201: Array<PriceResponseDto>;
8567
+ 401: unknown;
7586
8568
  };
7587
8569
  };
7588
8570
  };
7589
- '/api/v1/{region}/reporting/portfolio/trends': {
8571
+ '/api/v1/{region}/reporting/cash-flow/trends': {
7590
8572
  get: {
7591
- req: ReportingControllerGetPortfolioTrendsData;
8573
+ req: ReportingControllerGetCashFlowTrendsData;
7592
8574
  res: {
7593
8575
  /**
7594
- * Trends retrieved successfully
8576
+ * Cash-flow trends retrieved successfully
7595
8577
  */
7596
- 200: PortfolioTrendsResponseDto;
8578
+ 200: CashFlowTrendsResponseDto;
7597
8579
  /**
7598
8580
  * User not authenticated
7599
8581
  */
@@ -7832,7 +8814,7 @@ declare class BeanAccountsService {
7832
8814
  * @param data.type Filter by account type
7833
8815
  * @param data.status Filter by status
7834
8816
  * @param data.isCustom Filter by custom (user-created) accounts only
7835
- * @param data.search Search term for path or i18nKey
8817
+ * @param data.search Search term for account path
7836
8818
  * @param data.limit Maximum number of results
7837
8819
  * @param data.offset Number of results to skip
7838
8820
  * @returns AccountListResponseDto Accounts retrieved successfully
@@ -7892,6 +8874,17 @@ declare class BeanAccountsService {
7892
8874
  * @throws ApiError
7893
8875
  */
7894
8876
  static accountControllerReopen(data: AccountControllerReopenData): CancelablePromise<AccountControllerReopenResponse>;
8877
+ /**
8878
+ * Post an opening-balance transaction
8879
+ * Posts a double-entry opening-balance transaction against Equity:Opening-Balances for an existing Assets/Liabilities account. At most one active opening balance per account.
8880
+ * @param data The data for the request.
8881
+ * @param data.id Account UUID
8882
+ * @param data.region Region code for tenant context
8883
+ * @param data.requestBody
8884
+ * @returns OpeningBalanceResultDto Opening-balance transaction created
8885
+ * @throws ApiError
8886
+ */
8887
+ static accountControllerAddOpeningBalance(data: AccountControllerAddOpeningBalanceData): CancelablePromise<AccountControllerAddOpeningBalanceResponse>;
7895
8888
  }
7896
8889
  declare class BeanTransactionsService {
7897
8890
  /**
@@ -7917,6 +8910,7 @@ declare class BeanTransactionsService {
7917
8910
  * @param data.status Filter by transaction status
7918
8911
  * @param data.search Search in narration and payee fields (max 200 chars)
7919
8912
  * @param data.accountId Filter by account ID (transactions with postings to this account)
8913
+ * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
7920
8914
  * @returns TransactionListResponseDto Transaction list
7921
8915
  * @throws ApiError
7922
8916
  */
@@ -7992,7 +8986,7 @@ declare class BeanBalancesService {
7992
8986
  * Query account balance
7993
8987
  * Calculate account balance at a specific date for a single currency
7994
8988
  * @param data The data for the request.
7995
- * @param data.account Account name (e.g., "Assets:Bank:Checking")
8989
+ * @param data.account Account name (e.g., "Assets:Checking")
7996
8990
  * @param data.region Region code for tenant context
7997
8991
  * @param data.date Date to calculate balance at (ISO 8601 format)
7998
8992
  * @param data.currency Currency to query (e.g., "USD", "CNY")
@@ -8222,4 +9216,4 @@ type OpenAPIConfig = {
8222
9216
  };
8223
9217
  declare const OpenAPI: OpenAPIConfig;
8224
9218
 
8225
- export { type $OpenApiTs, 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 AmountDto, type AmountRangeDto, type AnonymousLoginDto, type ApiKeysControllerCreateApiKeyResponse, type ApiProblemResponseDto, 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 CashFlowResponseDto, 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 ConfirmMatchDto, type ConvertedCashFlowDto, type ConvertedNetWorthDto, type CorrectTransactionDto, type CostSpecDto, type CreateAccountDto, type CreateBeanPriceDto, type CreateCommodityDto, 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 DashboardControllerGetNetWorthData, type DashboardControllerGetNetWorthResponse, type DecisionOptionDto, type DeleteOwnUserDto, type EnterNowDto, 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 ExportControllerExportBeancountResponse, type ExportRulesResponseDto, 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, OpenAPI, type OpenAPIConfig, 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 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 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 ReportingControllerGetPortfolioTrendsData, type ReportingControllerGetPortfolioTrendsResponse, type ResolveResultDto, type ResolveReviewDto, type ReviewControllerBatchResolveData, type ReviewControllerBatchResolveResponse, type ReviewControllerFindAllData, type ReviewControllerFindAllResponse, type ReviewControllerFindOneData, type ReviewControllerFindOneResponse, type ReviewControllerGetStatsData, type ReviewControllerGetStatsResponse, type ReviewControllerResolveData, type ReviewControllerResolveResponse, type ReviewControllerUndoData, type ReviewControllerUndoResponse, type ReviewDetailDto, type ReviewItemPreviewDto, type ReviewListResponseDto, type ReviewStatsDto, type ReviewSummaryDto, type RuleStatisticsResponseDto, type SignupDto, type SupportedProvidersResponseDto, type TagSuggestionDto, type TagSuggestionsResponseDto, type TelemetryControllerGetCoverageMetricsData, type TelemetryControllerGetCoverageMetricsResponse, type TelemetryControllerReportCoverageMissData, type TelemetryControllerReportCoverageMissResponse, type TelemetryControllerReportTelemetryData, type TelemetryControllerReportTelemetryResponse, type TemplateMetadataDto, type TemplateMetadataResponseDto, type TestRuleDto, type TestRuleResponseDto, type TimeSeriesPointDto, type TransactionControllerCorrectData, type TransactionControllerCorrectResponse, type TransactionControllerCreateBatchData, type TransactionControllerCreateBatchResponse, type TransactionControllerCreateData, type TransactionControllerCreateResponse, type TransactionControllerDeleteData, type TransactionControllerDeleteResponse, type TransactionControllerGetDetailData, type TransactionControllerGetDetailResponse, type TransactionControllerListData, type TransactionControllerListResponse, type TransactionControllerSuggestTagsData, type TransactionControllerSuggestTagsResponse, type TransactionControllerUpdateData, type TransactionControllerUpdateResponse, type TransactionDetailDto, type TransactionListResponseDto, type 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 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 method, type mode, type paymentSource, type period, type source, type source2, type source3, type status, type status2, type status3, type status4, type suggestedFrequency, type type, type type2, type type3, type type4, type value, type viewMode };
9219
+ export { type $OpenApiTs, type AccountControllerAddOpeningBalanceData, type AccountControllerAddOpeningBalanceResponse, type AccountControllerCloseData, type AccountControllerCloseResponse, type AccountControllerCreateData, type AccountControllerCreateResponse, type AccountControllerDeleteData, type AccountControllerDeleteResponse, type AccountControllerFindAllData, type AccountControllerFindAllResponse, type AccountControllerFindOneData, type AccountControllerFindOneResponse, type AccountControllerReopenData, type AccountControllerReopenResponse, type AccountControllerUpdateData, type AccountControllerUpdateResponse, type AccountExchangeRateWarningDto, type AccountItemDto, type AccountItemWithAssetClassDto, type AccountListResponseDto, type AccountResponseDto, type AccountStandardListResponseDto, type AccountStandardResponseDto, type AccountStandardsControllerGetRegionsData, type AccountStandardsControllerGetRegionsResponse, type AccountStandardsControllerGetTemplateMetadataData, type AccountStandardsControllerGetTemplateMetadataResponse, type AccountStandardsControllerGetTemplatesData, type AccountStandardsControllerGetTemplatesResponse, type AccountsResponseDto, type AccountsSummaryDto, type ActualBalanceDto, type AmountDto, type AmountRangeDto, type AnonymousLoginDto, type ApiKeysControllerCreateApiKeyResponse, type ApiProblemResponseDto, type AssertReconciliationDto, type AssetClassAccountsResponseDto, type AssetClassGroupDto, type AssetClassSummaryDto, type AuthControllerAccessTokenLoginData, type AuthControllerAccessTokenLoginResponse, type BackfillSnapshotsBody, type BackfillSnapshotsResponse, type BalanceByCurrencyDto, type BalanceControllerGetBalanceData, type BalanceControllerGetBalanceResponse, type BalanceControllerGetMultiCurrencyBalanceData, type BalanceControllerGetMultiCurrencyBalanceResponse, type BalanceResponseDto, type BatchCreateTransactionDto, type BatchResolveDto, type BatchResolveResultDto, type BatchTransactionErrorDto, type BatchTransactionResponseDto, BeanAccountsService, BeanBalancesService, BeanCommoditiesService, BeanTransactionsService, type BulkCreateRulesDto, type BulkCreateRulesResponseDto, type CacheControllerFlushCacheResponse, type CashFlowByCurrencyDto, type CashFlowPointDto, type CashFlowResponseDto, type CashFlowTrendSummaryDto, type CashFlowTrendsResponseDto, type CategoryGroupDto, type CloseAccountDto, type CommodityControllerBulkCreateData, type CommodityControllerBulkCreateResponse, type CommodityControllerCreateData, type CommodityControllerCreateResponse, type CommodityControllerDeleteData, type CommodityControllerDeleteResponse, type CommodityControllerFindAllData, type CommodityControllerFindAllResponse, type CommodityControllerFindOneData, type CommodityControllerFindOneResponse, type CommodityControllerGetOrCreateData, type CommodityControllerGetOrCreateResponse, type CommodityControllerUpdateData, type CommodityControllerUpdateResponse, type CommodityListResponseDto, type CommodityResponseDto, type ComputeReconciliationDto, type ConfirmMatchDto, type ConvertedCashFlowDto, type ConvertedNetWorthDto, type CorrectTransactionDto, type CostDetailDto, type CostSpecDto, type CreateAccountDto, type CreateBeanEventDto, type CreateBeanPriceDto, type CreateCommodityDto, type CreateExternalAccountLinkDto, type CreateOpeningBalanceDto, type CreatePayeeDto, type CreatePayeeProfileDto, type CreatePlatformDto, type CreatePostingDto, type CreateRecurringRuleDto, type CreateRuleFromTransactionDto, type CreateTransactionDto, type CreateTransactionRuleDto, type CurrencyBalanceDto, type CurrentPriceDto, type DashboardControllerGetAccountsData, type DashboardControllerGetAccountsResponse, type DashboardControllerGetCashFlowData, type DashboardControllerGetCashFlowResponse, type DashboardControllerGetExpensesData, type DashboardControllerGetExpensesResponse, type DashboardControllerGetNetWorthData, type DashboardControllerGetNetWorthResponse, type DecisionOptionDto, type DeleteOwnUserDto, type EnterNowDto, type EventControllerCreateData, type EventControllerCreateResponse, type EventControllerDeleteData, type EventControllerDeleteResponse, type EventControllerFindAllData, type EventControllerFindAllResponse, type EventControllerFindOneData, type EventControllerFindOneResponse, type EventControllerGetSliceData, type EventControllerGetSliceResponse, type EventControllerUpdateData, type EventControllerUpdateResponse, type EventListResponseDto, type EventResponseDto, type ExchangeRateControllerGetExchangeRateData, type ExchangeRateControllerGetExchangeRateResponse, type ExchangeRateWarningDto, type ExpectedTransactionControllerConfirmMatchData, type ExpectedTransactionControllerConfirmMatchResponse, type ExpectedTransactionControllerEnterNowData, type ExpectedTransactionControllerEnterNowResponse, type ExpectedTransactionControllerFindAllData, type ExpectedTransactionControllerFindAllResponse, type ExpectedTransactionControllerFindOneData, type ExpectedTransactionControllerFindOneResponse, type ExpectedTransactionControllerFindOverdueData, type ExpectedTransactionControllerFindOverdueResponse, type ExpectedTransactionControllerSkipData, type ExpectedTransactionControllerSkipResponse, type ExpectedTransactionControllerUndoSkipData, type ExpectedTransactionControllerUndoSkipResponse, type ExpectedTransactionControllerUnmatchData, type ExpectedTransactionControllerUnmatchResponse, type ExpectedTransactionListResponseDto, type ExpectedTransactionResponseDto, type ExpectedTransactionRuleDto, type ExpensesByCategoryResponseDto, type ExpensesByCategorySummaryDto, type ExportControllerExportBeancountResponse, type ExportRulesResponseDto, type ExternalAccountLinkControllerCreateData, type ExternalAccountLinkControllerCreateResponse, type ExternalAccountLinkControllerFindAllData, type ExternalAccountLinkControllerFindAllResponse, type ExternalAccountLinkControllerFindOneData, type ExternalAccountLinkControllerFindOneResponse, type ExternalAccountLinkControllerRemoveData, type ExternalAccountLinkControllerRemoveResponse, type ExternalAccountLinkListResponseDto, type ExternalAccountLinkResponseDto, type FileImportControllerIdentifyFileData, type FileImportControllerIdentifyFileResponse, type FileImportControllerImportBeancountData, type FileImportControllerImportBeancountResponse, type FileImportControllerImportFileData, type FileImportControllerImportFileResponse, type FileImportDto, type ForecastControllerGetForecastData, type ForecastControllerGetForecastResponse, type ForecastItemDto, type ForecastResponseDto, type FxRateDto, type GenerateSnapshotBody, type GenerateSnapshotResponse, type HealthControllerCheckDatabaseResponse, type HealthControllerCheckOpenBbResponse, type HealthControllerCheckRedisResponse, type HealthControllerGetCircuitBreakersHealthResponse, type HealthControllerGetHealthResponse, type HealthControllerGetMetricsResponse, type HealthControllerResetCircuitBreakerData, type HealthControllerResetCircuitBreakerResponse, HealthService, type HoldingAssetClassAccountSliceDto, type HoldingAssetClassCrossAccountResponseDto, type HoldingPnlControllerGetHoldingPnlData, type HoldingPnlControllerGetHoldingPnlResponse, type HoldingPnlResponseDto, type HoldingPnlRowDto, type HoldingPnlWarningDto, type IdentifyResultDto, type ImportErrorDto, type ImportResultDto, type ImporterConfigControllerGetConfigData, type ImporterConfigControllerGetConfigResponse, type ImporterConfigControllerResetConfigData, type ImporterConfigControllerResetConfigResponse, type ImporterConfigControllerUpdateConfigData, type ImporterConfigControllerUpdateConfigResponse, type ImporterConfigDataDto, type ImporterConfigDto, type InfoControllerGetInfoResponse, type MapperDefaultsDto, type MonetaryDto, type MonthlyForecastDto, type MultiCurrencyBalanceResponseDto, type MultiCurrencyPointDto, type NetWorthByCurrencyDto, type NetWorthResponseDto, type NlpAccountConfirmationDataDto, type NlpAlternativePayeeDto, type NlpControllerClearSessionData, type NlpControllerClearSessionResponse, type NlpControllerGetSessionData, type NlpControllerGetSessionResponse, type NlpControllerProcessNaturalLanguageData, type NlpControllerProcessNaturalLanguageResponse, type NlpDefaultAccountsDto, type NlpDuplicateConfirmationDataDto, type NlpParsedDataDto, type NlpPayeeConfirmationDataDto, type NlpResponseDto, type NlpRuleConfirmationDataDto, type NlpSimilarityDto, type NlpSourceTransactionDto, type NlpSuggestedAccountDto, type NlpSuggestedAccountsDto, type NlpSuggestedPayeeDto, type NlpTargetTransactionDto, type NlpTransactionInfoDto, type OnboardingAccountDto, type OnboardingControllerBootstrapData, type OnboardingControllerBootstrapResponse, type OnboardingDto, OpenAPI, type OpenAPIConfig, type OpeningBalanceResultDto, type PadReconciliationDto, type PadResultDto, type ParserTelemetryReportDto, type PayeeAutocompleteResponseDto, type PayeeControllerAutocompleteData, type PayeeControllerAutocompleteResponse, type PayeeControllerCreateData, type PayeeControllerCreateResponse, type PayeeControllerDeleteData, type PayeeControllerDeleteResponse, type PayeeControllerFindAllData, type PayeeControllerFindAllResponse, type PayeeControllerFindOneData, type PayeeControllerFindOneResponse, type PayeeControllerGetTopPayeesData, type PayeeControllerGetTopPayeesResponse, type PayeeControllerUpdateData, type PayeeControllerUpdateResponse, type PayeeListResponseDto, type PayeeProfileAdminControllerCreateData, type PayeeProfileAdminControllerCreateResponse, type PayeeProfileAdminControllerDeleteData, type PayeeProfileAdminControllerDeleteResponse, type PayeeProfileAdminControllerFindAllData, type PayeeProfileAdminControllerFindAllResponse, type PayeeProfileAdminControllerFindOneData, type PayeeProfileAdminControllerFindOneResponse, type PayeeProfileAdminControllerUnverifyData, type PayeeProfileAdminControllerUnverifyResponse, type PayeeProfileAdminControllerUpdateData, type PayeeProfileAdminControllerUpdateResponse, type PayeeProfileAdminControllerVerifyData, type PayeeProfileAdminControllerVerifyResponse, type PayeeProfileListResponseDto, type PayeeProfileResponseDto, type PayeeResponseDto, type PayeeStatsResponseDto, type PlatformControllerCreateData, type PlatformControllerCreateResponse, type PlatformControllerDeleteData, type PlatformControllerDeleteResponse, type PlatformControllerFindAllResponse, type PlatformControllerGetPlatformListResponse, type PlatformControllerMatchPlatformsData, type PlatformControllerMatchPlatformsResponse, type PlatformControllerUpdateData, type PlatformControllerUpdateResponse, type PlatformGroupDto, type PlatformListItemDto, type PortfolioTrendsResponseDto, type PostingDetailDto, type PostingResponseDto, type PriceControllerBulkCreateData, type PriceControllerBulkCreateResponse, type PriceControllerCreateData, type PriceControllerCreateResponse, type PriceControllerDeleteData, type PriceControllerDeleteResponse, type PriceControllerFindAllData, type PriceControllerFindAllResponse, type PriceControllerFindOneData, type PriceControllerFindOneResponse, type PriceControllerUpdateData, type PriceControllerUpdateResponse, type PriceListResponseDto, type PriceResponseDto, type ProcessNlpDto, type PropertyControllerDeleteData, type PropertyControllerDeleteResponse, type PropertyControllerGetAllResponse, type PropertyControllerGetByKeyData, type PropertyControllerGetByKeyResponse, type PropertyControllerUpdateData, type PropertyControllerUpdateResponse, type ProviderSyncConfigDto, type ProviderSyncControllerGetSupportedProvidersData, type ProviderSyncControllerGetSupportedProvidersResponse, type ProviderSyncControllerIsProviderSupportedData, type ProviderSyncControllerIsProviderSupportedResponse, type ProviderSyncControllerSyncData, type ProviderSyncControllerSyncResponse, type ProviderSyncDto, type ProviderSyncResponseDto, ProviderSyncService, type ReconciliationComputeResultDto, type ReconciliationControllerAssertData, type ReconciliationControllerAssertResponse, type ReconciliationControllerComputeData, type ReconciliationControllerComputeResponse, type ReconciliationControllerHistoryData, type ReconciliationControllerHistoryResponse, type ReconciliationControllerPadData, type ReconciliationControllerPadResponse, type ReconciliationRecordDto, type RecurringMatchInfoDto, type RecurringRuleControllerCreateData, type RecurringRuleControllerCreateFromTransactionData, type RecurringRuleControllerCreateFromTransactionResponse, type RecurringRuleControllerCreateResponse, type RecurringRuleControllerDeleteData, type RecurringRuleControllerDeleteResponse, type RecurringRuleControllerFindAllData, type RecurringRuleControllerFindAllResponse, type RecurringRuleControllerFindOneData, type RecurringRuleControllerFindOneResponse, type RecurringRuleControllerGetWithStatsData, type RecurringRuleControllerGetWithStatsResponse, type RecurringRuleControllerUpdateData, type RecurringRuleControllerUpdateResponse, type RecurringRuleResponseDto, type RecurringRuleWithStatsResponseDto, type RecurringSuggestionDto, type RegionConfigDto, type RegionInfoDto, type RegionsMetadataResponseDto, type ReopenAccountDto, type ReportingControllerBackfillSnapshotsData, type ReportingControllerBackfillSnapshotsResponse, type ReportingControllerGenerateSnapshotData, type ReportingControllerGenerateSnapshotResponse, type ReportingControllerGetCashFlowTrendsData, type ReportingControllerGetCashFlowTrendsResponse, type ReportingControllerGetPortfolioTrendsData, type ReportingControllerGetPortfolioTrendsResponse, type ResolveResultDto, type ResolveReviewDto, type ReviewControllerBatchResolveData, type ReviewControllerBatchResolveResponse, type ReviewControllerFindAllData, type ReviewControllerFindAllResponse, type ReviewControllerFindOneData, type ReviewControllerFindOneResponse, type ReviewControllerGetStatsData, type ReviewControllerGetStatsResponse, type ReviewControllerResolveData, type ReviewControllerResolveResponse, type ReviewControllerUndoData, type ReviewControllerUndoResponse, type ReviewDetailDto, type ReviewItemPreviewDto, type ReviewListResponseDto, type ReviewStatsDto, type ReviewSummaryDto, type RuleStatisticsResponseDto, type SignupDto, type SupportedProvidersResponseDto, type TagSuggestionDto, type TagSuggestionsResponseDto, type TelemetryControllerGetCoverageMetricsData, type TelemetryControllerGetCoverageMetricsResponse, type TelemetryControllerReportCoverageMissData, type TelemetryControllerReportCoverageMissResponse, type TelemetryControllerReportTelemetryData, type TelemetryControllerReportTelemetryResponse, type TemplateMetadataDto, type TemplateMetadataResponseDto, type TestRuleDto, type TestRuleResponseDto, type TimeSeriesPointDto, type TransactionControllerCorrectData, type TransactionControllerCorrectResponse, type TransactionControllerCreateBatchData, type TransactionControllerCreateBatchResponse, type TransactionControllerCreateData, type TransactionControllerCreateResponse, type TransactionControllerDeleteData, type TransactionControllerDeleteResponse, type TransactionControllerGetDetailData, type TransactionControllerGetDetailResponse, type TransactionControllerListData, type TransactionControllerListResponse, type TransactionControllerSuggestTagsData, type TransactionControllerSuggestTagsResponse, type TransactionControllerUpdateData, type TransactionControllerUpdateResponse, type TransactionDetailDto, type TransactionListResponseDto, type TransactionListSummaryDto, type TransactionResponseDto, type TransactionRuleControllerBulkCreateData, type TransactionRuleControllerBulkCreateResponse, type TransactionRuleControllerCreateData, type TransactionRuleControllerCreateResponse, type TransactionRuleControllerDeleteData, type TransactionRuleControllerDeleteResponse, type TransactionRuleControllerExportData, type TransactionRuleControllerExportResponse, type TransactionRuleControllerGetDetailData, type TransactionRuleControllerGetDetailResponse, type TransactionRuleControllerGetStatisticsData, type TransactionRuleControllerGetStatisticsResponse, type TransactionRuleControllerListData, type TransactionRuleControllerListResponse, type TransactionRuleControllerTestData, type TransactionRuleControllerTestResponse, type TransactionRuleControllerUpdateData, type TransactionRuleControllerUpdateResponse, type TransactionRuleControllerValidateData, type TransactionRuleControllerValidateResponse, type TransactionRuleListResponseDto, type TransactionRuleResponseDto, type TransactionSummaryDto, type TrendSummaryDto, type UncoveredFormatMissDto, type UndoResultDto, type UpdateAccountDto, type UpdateBeanEventDto, type UpdateBeanPriceDto, type UpdateCommodityDto, type UpdateConfigDataDto, type UpdateImporterConfigDto, type UpdateMapperDefaultsDto, type UpdatePayeeDto, type UpdatePayeeProfileDto, type UpdatePlatformDto, type UpdatePropertyDto, type UpdateRecurringRuleDto, type UpdateTransactionDto, type UpdateTransactionRuleDto, type UpdateUserSettingDto, type UserControllerDeleteOwnUserData, type UserControllerDeleteOwnUserResponse, type UserControllerDeleteUserData, type UserControllerDeleteUserResponse, type UserControllerGetAllUserSettingsByPageData, type UserControllerGetAllUserSettingsByPageResponse, type UserControllerGetAssetLiabilitySummaryResponse, type UserControllerGetUserData, type UserControllerGetUserInfoData, type UserControllerGetUserInfoResponse, type UserControllerGetUserResponse, type UserControllerSignupUserData, type UserControllerSignupUserResponse, type UserControllerUpdateUserSettingData, type UserControllerUpdateUserSettingResponse, type ValidateRuleDto, type ValidateRuleResponseDto, type VersionedConfigDto, type action, type action2, type assetClass, type assetSubType, type bookingMethod, type branchType, type category, type chartToken, type colorScheme, type confidenceLevel, type conflictStrategy, type dataSource, type equitySubType, type flag, type flag2, type frequency, type importerId, type intent, type investmentAction, type learningSource, type liabilitySubType, type matchLogic, type method, type mode, type paymentSource, type period, type provider, type source, type source2, type source3, type status, type status2, type status3, type status4, type suggestedAction, type suggestedFrequency, type type, type type2, type type3, type type4, type value, type viewMode };