@opentabs-dev/opentabs-plugin-ynab 0.0.85 → 0.0.87

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.
Files changed (92) hide show
  1. package/dist/adapter.iife.js +1315 -545
  2. package/dist/adapter.iife.js.map +4 -4
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +23 -16
  6. package/dist/index.js.map +1 -1
  7. package/dist/tools/create-category-group.d.ts +11 -0
  8. package/dist/tools/create-category-group.d.ts.map +1 -0
  9. package/dist/tools/create-category-group.js +37 -0
  10. package/dist/tools/create-category-group.js.map +1 -0
  11. package/dist/tools/create-category.d.ts +59 -0
  12. package/dist/tools/create-category.d.ts.map +1 -0
  13. package/dist/tools/create-category.js +63 -0
  14. package/dist/tools/create-category.js.map +1 -0
  15. package/dist/tools/create-transaction.d.ts +2 -2
  16. package/dist/tools/create-transaction.d.ts.map +1 -1
  17. package/dist/tools/create-transaction.js +63 -22
  18. package/dist/tools/create-transaction.js.map +1 -1
  19. package/dist/tools/delete-category-group.d.ts +8 -0
  20. package/dist/tools/delete-category-group.d.ts.map +1 -0
  21. package/dist/tools/delete-category-group.js +33 -0
  22. package/dist/tools/delete-category-group.js.map +1 -0
  23. package/dist/tools/delete-category.d.ts +7 -0
  24. package/dist/tools/delete-category.d.ts.map +1 -0
  25. package/dist/tools/delete-category.js +28 -0
  26. package/dist/tools/delete-category.js.map +1 -0
  27. package/dist/tools/delete-transaction.d.ts.map +1 -1
  28. package/dist/tools/delete-transaction.js +22 -7
  29. package/dist/tools/delete-transaction.js.map +1 -1
  30. package/dist/tools/get-account.d.ts.map +1 -1
  31. package/dist/tools/get-account.js +3 -3
  32. package/dist/tools/get-account.js.map +1 -1
  33. package/dist/tools/get-month.d.ts +2 -1
  34. package/dist/tools/get-month.d.ts.map +1 -1
  35. package/dist/tools/get-month.js +10 -33
  36. package/dist/tools/get-month.js.map +1 -1
  37. package/dist/tools/get-plan.d.ts.map +1 -1
  38. package/dist/tools/get-plan.js +12 -5
  39. package/dist/tools/get-plan.js.map +1 -1
  40. package/dist/tools/get-transaction.d.ts +2 -2
  41. package/dist/tools/get-transaction.d.ts.map +1 -1
  42. package/dist/tools/get-transaction.js +5 -4
  43. package/dist/tools/get-transaction.js.map +1 -1
  44. package/dist/tools/list-accounts.d.ts.map +1 -1
  45. package/dist/tools/list-accounts.js +4 -4
  46. package/dist/tools/list-accounts.js.map +1 -1
  47. package/dist/tools/list-categories.d.ts.map +1 -1
  48. package/dist/tools/list-categories.js +9 -29
  49. package/dist/tools/list-categories.js.map +1 -1
  50. package/dist/tools/list-months.d.ts +1 -1
  51. package/dist/tools/list-months.d.ts.map +1 -1
  52. package/dist/tools/list-months.js +5 -14
  53. package/dist/tools/list-months.js.map +1 -1
  54. package/dist/tools/list-payees.d.ts.map +1 -1
  55. package/dist/tools/list-payees.js +3 -3
  56. package/dist/tools/list-payees.js.map +1 -1
  57. package/dist/tools/list-scheduled-transactions.d.ts.map +1 -1
  58. package/dist/tools/list-scheduled-transactions.js +7 -5
  59. package/dist/tools/list-scheduled-transactions.js.map +1 -1
  60. package/dist/tools/list-transactions.d.ts +4 -2
  61. package/dist/tools/list-transactions.d.ts.map +1 -1
  62. package/dist/tools/list-transactions.js +40 -8
  63. package/dist/tools/list-transactions.js.map +1 -1
  64. package/dist/tools/move-category-budget.d.ts +24 -0
  65. package/dist/tools/move-category-budget.d.ts.map +1 -0
  66. package/dist/tools/move-category-budget.js +100 -0
  67. package/dist/tools/move-category-budget.js.map +1 -0
  68. package/dist/tools/schemas.d.ts +185 -28
  69. package/dist/tools/schemas.d.ts.map +1 -1
  70. package/dist/tools/schemas.js +411 -28
  71. package/dist/tools/schemas.js.map +1 -1
  72. package/dist/tools/snooze-category-goal.d.ts +10 -0
  73. package/dist/tools/snooze-category-goal.d.ts.map +1 -0
  74. package/dist/tools/snooze-category-goal.js +53 -0
  75. package/dist/tools/snooze-category-goal.js.map +1 -0
  76. package/dist/tools/update-category-budget.d.ts.map +1 -1
  77. package/dist/tools/update-category-budget.js +51 -26
  78. package/dist/tools/update-category-budget.js.map +1 -1
  79. package/dist/tools/update-category.d.ts +61 -0
  80. package/dist/tools/update-category.d.ts.map +1 -0
  81. package/dist/tools/update-category.js +46 -0
  82. package/dist/tools/update-category.js.map +1 -0
  83. package/dist/tools/update-transaction.d.ts +3 -2
  84. package/dist/tools/update-transaction.d.ts.map +1 -1
  85. package/dist/tools/update-transaction.js +84 -31
  86. package/dist/tools/update-transaction.js.map +1 -1
  87. package/dist/tools.json +965 -43
  88. package/dist/ynab-api.d.ts +4 -1
  89. package/dist/ynab-api.d.ts.map +1 -1
  90. package/dist/ynab-api.js +47 -26
  91. package/dist/ynab-api.js.map +1 -1
  92. package/package.json +3 -3
@@ -0,0 +1,24 @@
1
+ import { z } from 'zod';
2
+ export declare const moveCategoryBudget: import("@opentabs-dev/plugin-sdk").ToolDefinition<z.ZodObject<{
3
+ month: z.ZodString;
4
+ amount: z.ZodNumber;
5
+ from_category_id: z.ZodOptional<z.ZodString>;
6
+ to_category_id: z.ZodOptional<z.ZodString>;
7
+ }, z.core.$strip>, z.ZodObject<{
8
+ categories: z.ZodArray<z.ZodObject<{
9
+ id: z.ZodString;
10
+ category_group_id: z.ZodString;
11
+ name: z.ZodString;
12
+ hidden: z.ZodBoolean;
13
+ budgeted: z.ZodString;
14
+ activity: z.ZodString;
15
+ balance: z.ZodString;
16
+ budgeted_milliunits: z.ZodNumber;
17
+ activity_milliunits: z.ZodNumber;
18
+ balance_milliunits: z.ZodNumber;
19
+ goal_type: z.ZodString;
20
+ goal_target: z.ZodString;
21
+ goal_percentage_complete: z.ZodNumber;
22
+ }, z.core.$strip>>;
23
+ }, z.core.$strip>>;
24
+ //# sourceMappingURL=move-category-budget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-category-budget.d.ts","sourceRoot":"","sources":["../../src/tools/move-category-budget.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;kBAuG7B,CAAC"}
@@ -0,0 +1,100 @@
1
+ import { defineTool } from '@opentabs-dev/plugin-sdk';
2
+ import { z } from 'zod';
3
+ import { getPlanId, getUserId, syncBudget, syncWrite } from '../ynab-api.js';
4
+ import { buildSubcategoryBudgetMap, buildSubcategoryCalcMap, categorySchema, findCategory, formatMonthlyBudgetId, formatSubcategoryBudgetId, MONEY_MOVEMENT_SOURCE, mapCategoryForMonth, notTombstone, toMilliunits, toMonthKey, } from './schemas.js';
5
+ export const moveCategoryBudget = defineTool({
6
+ name: 'move_category_budget',
7
+ displayName: 'Move Category Budget',
8
+ description: 'Move budgeted money between categories or to/from Ready to Assign for a specific month. Omit from_category_id to move money out of Ready to Assign; omit to_category_id to move money back to Ready to Assign. Both null is invalid.',
9
+ summary: 'Move money between budget categories',
10
+ icon: 'arrow-left-right',
11
+ group: 'Categories',
12
+ input: z
13
+ .object({
14
+ month: z
15
+ .string()
16
+ .regex(/^\d{4}-\d{2}(-\d{2})?$/, 'Month must be YYYY-MM or YYYY-MM-DD')
17
+ .describe('Month in YYYY-MM format (e.g. 2026-03)'),
18
+ amount: z.number().positive().describe('Amount to move in currency units (e.g. 50 for $50)'),
19
+ from_category_id: z.string().optional().describe('Source category ID. Omit to move from Ready to Assign.'),
20
+ to_category_id: z.string().optional().describe('Destination category ID. Omit to move to Ready to Assign.'),
21
+ })
22
+ .refine(p => p.from_category_id || p.to_category_id, {
23
+ message: 'At least one of from_category_id or to_category_id must be provided',
24
+ })
25
+ .refine(p => !p.from_category_id || !p.to_category_id || p.from_category_id !== p.to_category_id, {
26
+ message: 'from_category_id and to_category_id must differ',
27
+ }),
28
+ output: z.object({
29
+ categories: z
30
+ .array(categorySchema)
31
+ .describe('Updated categories (1 if RTA is involved, 2 for category-to-category)'),
32
+ }),
33
+ handle: async (params) => {
34
+ const planId = getPlanId();
35
+ const userId = getUserId();
36
+ const milliunits = toMilliunits(params.amount);
37
+ const monthKey = toMonthKey(params.month);
38
+ const monthlyBudgetId = formatMonthlyBudgetId(monthKey, planId);
39
+ const budget = await syncBudget(planId);
40
+ const serverKnowledge = budget.current_server_knowledge ?? 0;
41
+ const existingBudgets = budget.changed_entities?.be_monthly_subcategory_budgets ?? [];
42
+ const fromCategoryId = params.from_category_id;
43
+ const toCategoryId = params.to_category_id;
44
+ const fromCategory = fromCategoryId ? findCategory(budget.changed_entities, fromCategoryId) : null;
45
+ const toCategory = toCategoryId ? findCategory(budget.changed_entities, toCategoryId) : null;
46
+ const fromBudgetId = fromCategoryId ? formatSubcategoryBudgetId(monthKey, fromCategoryId) : null;
47
+ const toBudgetId = toCategoryId ? formatSubcategoryBudgetId(monthKey, toCategoryId) : null;
48
+ const buildEntry = (categoryId, budgetId, signedDelta) => {
49
+ const current = existingBudgets.find(b => b.id === budgetId && notTombstone(b))?.budgeted ?? 0;
50
+ return {
51
+ id: budgetId,
52
+ is_tombstone: false,
53
+ entities_monthly_budget_id: monthlyBudgetId,
54
+ entities_subcategory_id: categoryId,
55
+ budgeted: current + signedDelta,
56
+ };
57
+ };
58
+ const budgetEntries = [];
59
+ if (fromCategoryId && fromBudgetId)
60
+ budgetEntries.push(buildEntry(fromCategoryId, fromBudgetId, -milliunits));
61
+ if (toCategoryId && toBudgetId)
62
+ budgetEntries.push(buildEntry(toCategoryId, toBudgetId, milliunits));
63
+ const source = fromCategoryId && toCategoryId ? MONEY_MOVEMENT_SOURCE.MOVEMENT : MONEY_MOVEMENT_SOURCE.ASSIGN;
64
+ const result = await syncWrite(planId, {
65
+ be_monthly_subcategory_budgets: budgetEntries,
66
+ be_money_movements: [
67
+ {
68
+ id: crypto.randomUUID(),
69
+ is_tombstone: false,
70
+ from_entities_monthly_subcategory_budget_id: fromBudgetId,
71
+ to_entities_monthly_subcategory_budget_id: toBudgetId,
72
+ entities_money_movement_group_id: null,
73
+ amount: milliunits,
74
+ performed_by_user_id: userId,
75
+ note: null,
76
+ source,
77
+ move_started_at: new Date().toISOString(),
78
+ move_accepted_at: null,
79
+ },
80
+ ],
81
+ }, serverKnowledge);
82
+ const calcMap = buildSubcategoryCalcMap(result.changed_entities?.be_monthly_subcategory_budget_calculations ?? []);
83
+ // Prefer the server's echoed values — if a concurrent update from another
84
+ // client merged in, that change shows up here. Fall back to our local
85
+ // entries for any that the server didn't echo.
86
+ const budgetMap = buildSubcategoryBudgetMap(result.changed_entities?.be_monthly_subcategory_budgets ?? []);
87
+ for (const e of budgetEntries) {
88
+ const key = `${monthKey}/${e.entities_subcategory_id}`;
89
+ if (!budgetMap.has(key))
90
+ budgetMap.set(key, e);
91
+ }
92
+ const categories = [];
93
+ if (fromCategory)
94
+ categories.push(mapCategoryForMonth(fromCategory, budgetMap, calcMap, monthKey));
95
+ if (toCategory)
96
+ categories.push(mapCategoryForMonth(toCategory, budgetMap, calcMap, monthKey));
97
+ return { categories };
98
+ },
99
+ });
100
+ //# sourceMappingURL=move-category-budget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-category-budget.js","sourceRoot":"","sources":["../../src/tools/move-category-budget.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,18 @@
1
1
  import { z } from 'zod';
2
2
  export declare const formatMilliunits: (milliunits: number) => string;
3
+ export declare const toMilliunits: (amount: number) => number;
4
+ export declare const notTombstone: <T extends {
5
+ is_tombstone?: boolean;
6
+ }>(x: T) => x is T & {
7
+ is_tombstone?: false | undefined;
8
+ };
9
+ export declare const findCategory: (entities: BudgetEntities | undefined, id: string) => RawCategory;
10
+ export declare const findCategoryGroup: (entities: BudgetEntities | undefined, id: string) => RawCategoryGroup;
11
+ export declare const assertCategoryGroupDeletable: (group: RawCategoryGroup) => void;
12
+ export declare const assertCategoryDeletable: (category: RawCategory) => void;
13
+ export declare const nextTopSortableIndex: (rows: {
14
+ sortable_index?: number;
15
+ }[], step?: number) => number;
3
16
  export declare const userSchema: z.ZodObject<{
4
17
  id: z.ZodString;
5
18
  first_name: z.ZodString;
@@ -59,7 +72,6 @@ export declare const transactionSchema: z.ZodObject<{
59
72
  cleared: z.ZodString;
60
73
  approved: z.ZodBoolean;
61
74
  flag_color: z.ZodString;
62
- flag_name: z.ZodString;
63
75
  account_id: z.ZodString;
64
76
  account_name: z.ZodString;
65
77
  payee_id: z.ZodString;
@@ -67,7 +79,8 @@ export declare const transactionSchema: z.ZodObject<{
67
79
  category_id: z.ZodString;
68
80
  category_name: z.ZodString;
69
81
  transfer_account_id: z.ZodString;
70
- import_id: z.ZodString;
82
+ imported_payee: z.ZodString;
83
+ original_imported_payee: z.ZodString;
71
84
  deleted: z.ZodBoolean;
72
85
  }, z.core.$strip>;
73
86
  export declare const subtransactionSchema: z.ZodObject<{
@@ -93,7 +106,7 @@ export declare const monthSchema: z.ZodObject<{
93
106
  budgeted_milliunits: z.ZodNumber;
94
107
  activity_milliunits: z.ZodNumber;
95
108
  to_be_budgeted_milliunits: z.ZodNumber;
96
- age_of_money: z.ZodNumber;
109
+ age_of_money: z.ZodNullable<z.ZodNumber>;
97
110
  }, z.core.$strip>;
98
111
  export declare const scheduledTransactionSchema: z.ZodObject<{
99
112
  id: z.ZodString;
@@ -145,19 +158,37 @@ export interface RawCategoryGroup {
145
158
  id?: string;
146
159
  name?: string;
147
160
  is_hidden?: boolean | null;
161
+ internal_name?: string | null;
162
+ deletable?: boolean;
163
+ sortable_index?: number;
164
+ note?: string | null;
148
165
  is_tombstone?: boolean;
149
166
  }
150
167
  export interface RawCategory {
151
168
  id?: string;
152
169
  entities_master_category_id?: string;
170
+ entities_account_id?: string | null;
171
+ internal_name?: string | null;
172
+ sortable_index?: number;
153
173
  name?: string;
174
+ type?: string;
154
175
  is_hidden?: boolean | null;
155
176
  budgeted?: number;
156
177
  activity?: number;
157
178
  balance?: number;
158
179
  goal_type?: string | null;
159
180
  goal_target?: number | null;
181
+ goal_target_amount?: number | null;
182
+ goal_target_date?: string | null;
183
+ goal_created_on?: string | null;
184
+ goal_needs_whole_amount?: boolean | null;
185
+ goal_cadence?: number | null;
186
+ goal_cadence_frequency?: number | null;
187
+ goal_day?: number | null;
188
+ monthly_funding?: number | null;
160
189
  goal_percentage_complete?: number | null;
190
+ pinned_index?: number | null;
191
+ pinned_goal_index?: number | null;
161
192
  is_tombstone?: boolean;
162
193
  note?: string | null;
163
194
  }
@@ -165,6 +196,15 @@ export interface RawPayee {
165
196
  id?: string;
166
197
  name?: string;
167
198
  entities_account_id?: string | null;
199
+ internal_name?: string | null;
200
+ enabled?: boolean;
201
+ auto_fill_subcategory_id?: string | null;
202
+ auto_fill_memo?: string | null;
203
+ auto_fill_amount?: number;
204
+ auto_fill_subcategory_enabled?: boolean;
205
+ auto_fill_memo_enabled?: boolean;
206
+ auto_fill_amount_enabled?: boolean;
207
+ rename_on_import_enabled?: boolean;
168
208
  is_tombstone?: boolean;
169
209
  }
170
210
  export interface RawTransaction {
@@ -173,17 +213,17 @@ export interface RawTransaction {
173
213
  amount?: number;
174
214
  memo?: string | null;
175
215
  cleared?: string;
176
- approved?: boolean;
177
- flag_color?: string | null;
178
- flag_name?: string | null;
216
+ accepted?: boolean;
217
+ flag?: string | null;
179
218
  entities_account_id?: string;
180
- account_name?: string;
181
219
  entities_payee_id?: string | null;
182
- payee_name?: string | null;
183
220
  entities_subcategory_id?: string | null;
184
- category_name?: string | null;
221
+ entities_scheduled_transaction_id?: string | null;
185
222
  transfer_account_id?: string | null;
186
- import_id?: string | null;
223
+ imported_payee?: string | null;
224
+ original_imported_payee?: string | null;
225
+ ynab_id?: string | null;
226
+ source?: string | null;
187
227
  is_tombstone?: boolean;
188
228
  }
189
229
  export interface RawSubtransaction {
@@ -192,9 +232,7 @@ export interface RawSubtransaction {
192
232
  amount?: number;
193
233
  memo?: string | null;
194
234
  entities_payee_id?: string | null;
195
- payee_name?: string | null;
196
235
  entities_subcategory_id?: string | null;
197
- category_name?: string | null;
198
236
  transfer_account_id?: string | null;
199
237
  is_tombstone?: boolean;
200
238
  }
@@ -211,31 +249,150 @@ export interface RawMonthlyBudgetCalc {
211
249
  available_to_budget?: number;
212
250
  age_of_money?: number | null;
213
251
  }
252
+ export interface RawMonthlySubcategoryBudget {
253
+ id?: string;
254
+ entities_monthly_budget_id?: string;
255
+ entities_subcategory_id?: string;
256
+ budgeted?: number;
257
+ goal_snoozed_at?: string | null;
258
+ is_tombstone?: boolean;
259
+ }
214
260
  export interface RawMonthlySubcategoryBudgetCalc {
215
261
  entities_monthly_subcategory_budget_id?: string;
216
- budgeted?: number;
217
- activity?: number;
218
262
  balance?: number;
219
- goal_type?: string | null;
220
- goal_target?: number | null;
263
+ cash_outflows?: number;
264
+ credit_outflows?: number;
221
265
  goal_percentage_complete?: number | null;
222
266
  }
223
267
  export interface RawScheduledTransaction {
224
268
  id?: string;
225
- date_first?: string;
226
- date_next?: string;
269
+ date?: string;
227
270
  frequency?: string;
228
271
  amount?: number;
229
272
  memo?: string | null;
230
- flag_color?: string | null;
273
+ flag?: string | null;
231
274
  entities_account_id?: string;
232
- account_name?: string;
233
275
  entities_payee_id?: string | null;
234
- payee_name?: string | null;
235
276
  entities_subcategory_id?: string | null;
236
- category_name?: string | null;
277
+ transfer_account_id?: string | null;
278
+ upcoming_instances?: string[];
237
279
  is_tombstone?: boolean;
238
280
  }
281
+ export type ClearedStatus = 'cleared' | 'uncleared' | 'reconciled';
282
+ export type FlagColor = 'red' | 'orange' | 'yellow' | 'green' | 'blue' | 'purple';
283
+ export declare const MONEY_MOVEMENT_SOURCE: {
284
+ /** RTA ↔ category (in either direction). */
285
+ readonly ASSIGN: "manual_assign";
286
+ /** Category-to-category transfer. */
287
+ readonly MOVEMENT: "manual_movement";
288
+ };
289
+ export declare const GOAL_TYPE: {
290
+ /** "Set aside" or "Refill" — `goal_needs_whole_amount` differentiates. */
291
+ readonly NEED: "NEED";
292
+ /** "Have a balance of" — no date, no cadence. */
293
+ readonly TARGET_BALANCE: "TB";
294
+ /** "Have a balance of by date" — one-shot with `goal_target_date`. */
295
+ readonly TARGET_BY_DATE: "TBD";
296
+ /** Debt payment goals on debt-account categories. */
297
+ readonly DEBT: "DEBT";
298
+ /** Legacy "Monthly Funding". The modern UI no longer creates these but they
299
+ still exist on older categories and the API still honors them. */
300
+ readonly MONTHLY_FUNDING: "MF";
301
+ };
302
+ /** YNAB's default category type for non-credit-card categories. */
303
+ export declare const CATEGORY_TYPE_DEFAULT = "DFT";
304
+ export declare const toMonthKey: (month: string) => string;
305
+ export declare const currentMonthKey: () => string;
306
+ export declare const formatSubcategoryBudgetId: (monthKey: string, categoryId: string) => string;
307
+ export declare const formatMonthlyBudgetId: (monthKey: string, planId: string) => string;
308
+ export declare const CLEARED_MAP: Record<ClearedStatus, string>;
309
+ export declare const FLAG_MAP: Record<FlagColor, string>;
310
+ export type GoalCadence = 'weekly' | 'monthly' | 'yearly';
311
+ export declare const goalSpecSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
312
+ target: z.ZodNumber;
313
+ cadence: z.ZodOptional<z.ZodEnum<{
314
+ weekly: "weekly";
315
+ monthly: "monthly";
316
+ yearly: "yearly";
317
+ }>>;
318
+ every: z.ZodOptional<z.ZodNumber>;
319
+ day: z.ZodOptional<z.ZodNumber>;
320
+ start_date: z.ZodOptional<z.ZodString>;
321
+ type: z.ZodLiteral<"set_aside">;
322
+ }, z.core.$strict>, z.ZodObject<{
323
+ target: z.ZodNumber;
324
+ cadence: z.ZodOptional<z.ZodEnum<{
325
+ weekly: "weekly";
326
+ monthly: "monthly";
327
+ yearly: "yearly";
328
+ }>>;
329
+ every: z.ZodOptional<z.ZodNumber>;
330
+ day: z.ZodOptional<z.ZodNumber>;
331
+ start_date: z.ZodOptional<z.ZodString>;
332
+ type: z.ZodLiteral<"refill">;
333
+ }, z.core.$strict>, z.ZodObject<{
334
+ type: z.ZodLiteral<"target_balance">;
335
+ target: z.ZodNumber;
336
+ }, z.core.$strict>, z.ZodObject<{
337
+ type: z.ZodLiteral<"target_by_date">;
338
+ target: z.ZodNumber;
339
+ date: z.ZodString;
340
+ }, z.core.$strict>, z.ZodObject<{
341
+ type: z.ZodLiteral<"debt">;
342
+ target: z.ZodNumber;
343
+ day: z.ZodOptional<z.ZodNumber>;
344
+ }, z.core.$strict>, z.ZodObject<{
345
+ type: z.ZodLiteral<"none">;
346
+ }, z.core.$strict>], "type">;
347
+ export type GoalSpec = z.infer<typeof goalSpecSchema>;
348
+ export declare const buildGoalFields: (goal: GoalSpec | undefined) => Partial<RawCategory>;
349
+ export interface BudgetEntities {
350
+ be_transactions?: RawTransaction[];
351
+ be_subtransactions?: RawSubtransaction[];
352
+ be_payees?: RawPayee[];
353
+ be_accounts?: RawAccount[];
354
+ be_account_calculations?: RawAccountCalculation[];
355
+ be_subcategories?: RawCategory[];
356
+ be_master_categories?: RawCategoryGroup[];
357
+ be_monthly_budgets?: RawMonth[];
358
+ be_monthly_budget_calculations?: RawMonthlyBudgetCalc[];
359
+ be_monthly_subcategory_budgets?: RawMonthlySubcategoryBudget[];
360
+ be_monthly_subcategory_budget_calculations?: RawMonthlySubcategoryBudgetCalc[];
361
+ be_scheduled_transactions?: RawScheduledTransaction[];
362
+ }
363
+ export declare const resolvePayee: (existingPayees: RawPayee[], payeeName: string) => {
364
+ payeeId: string;
365
+ newPayee?: RawPayee;
366
+ };
367
+ export declare const buildAccountCalcMap: (entities: BudgetEntities) => Map<string | undefined, RawAccountCalculation>;
368
+ export declare const buildMonthlyBudgetCalcMap: (calcs: RawMonthlyBudgetCalc[]) => Map<string, RawMonthlyBudgetCalc>;
369
+ export declare const buildSubcategoryCalcMap: (calcs: RawMonthlySubcategoryBudgetCalc[]) => Map<string, RawMonthlySubcategoryBudgetCalc>;
370
+ export declare const buildSubcategoryBudgetMap: (budgets: RawMonthlySubcategoryBudget[]) => Map<string, RawMonthlySubcategoryBudget>;
371
+ export declare const mapCategoryForMonth: (c: RawCategory, budgetMap: Map<string, RawMonthlySubcategoryBudget>, calcMap: Map<string, RawMonthlySubcategoryBudgetCalc>, month: string) => {
372
+ id: string;
373
+ category_group_id: string;
374
+ name: string;
375
+ hidden: boolean;
376
+ budgeted: string;
377
+ activity: string;
378
+ balance: string;
379
+ budgeted_milliunits: number;
380
+ activity_milliunits: number;
381
+ balance_milliunits: number;
382
+ goal_type: string;
383
+ goal_target: string;
384
+ goal_percentage_complete: number;
385
+ };
386
+ export interface EntityLookups {
387
+ payees: Map<string, string>;
388
+ accounts: Map<string, string>;
389
+ categories: Map<string, string>;
390
+ }
391
+ export declare const buildLookups: (entities: {
392
+ be_payees?: RawPayee[];
393
+ be_accounts?: RawAccount[];
394
+ be_subcategories?: RawCategory[];
395
+ }) => EntityLookups;
239
396
  export declare const mapUser: (u: RawUser) => {
240
397
  id: string;
241
398
  first_name: string;
@@ -286,7 +443,7 @@ export declare const mapPayee: (p: RawPayee) => {
286
443
  name: string;
287
444
  transfer_account_id: string;
288
445
  };
289
- export declare const mapTransaction: (t: RawTransaction) => {
446
+ export declare const mapTransaction: (t: RawTransaction, lookups?: EntityLookups) => {
290
447
  id: string;
291
448
  date: string;
292
449
  amount: string;
@@ -295,7 +452,6 @@ export declare const mapTransaction: (t: RawTransaction) => {
295
452
  cleared: string;
296
453
  approved: boolean;
297
454
  flag_color: string;
298
- flag_name: string;
299
455
  account_id: string;
300
456
  account_name: string;
301
457
  payee_id: string;
@@ -303,10 +459,11 @@ export declare const mapTransaction: (t: RawTransaction) => {
303
459
  category_id: string;
304
460
  category_name: string;
305
461
  transfer_account_id: string;
306
- import_id: string;
462
+ imported_payee: string;
463
+ original_imported_payee: string;
307
464
  deleted: boolean;
308
465
  };
309
- export declare const mapSubtransaction: (s: RawSubtransaction) => {
466
+ export declare const mapSubtransaction: (s: RawSubtransaction, lookups?: EntityLookups) => {
310
467
  id: string;
311
468
  transaction_id: string;
312
469
  amount: string;
@@ -329,9 +486,9 @@ export declare const mapMonth: (m: RawMonth, calc?: RawMonthlyBudgetCalc) => {
329
486
  budgeted_milliunits: number;
330
487
  activity_milliunits: number;
331
488
  to_be_budgeted_milliunits: number;
332
- age_of_money: number;
489
+ age_of_money: number | null;
333
490
  };
334
- export declare const mapScheduledTransaction: (s: RawScheduledTransaction) => {
491
+ export declare const mapScheduledTransaction: (s: RawScheduledTransaction, lookups?: EntityLookups) => {
335
492
  id: string;
336
493
  date_first: string;
337
494
  date_next: string;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"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"}