@keystrokehq/splitwise 0.1.0

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 (250) hide show
  1. package/README.md +17 -0
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/add-friend.cjs +46 -0
  7. package/dist/actions/add-friend.cjs.map +1 -0
  8. package/dist/actions/add-friend.d.cts +9 -0
  9. package/dist/actions/add-friend.d.cts.map +1 -0
  10. package/dist/actions/add-friend.d.mts +9 -0
  11. package/dist/actions/add-friend.d.mts.map +1 -0
  12. package/dist/actions/add-friend.mjs +45 -0
  13. package/dist/actions/add-friend.mjs.map +1 -0
  14. package/dist/actions/add-user-to-group.cjs +38 -0
  15. package/dist/actions/add-user-to-group.cjs.map +1 -0
  16. package/dist/actions/add-user-to-group.d.cts +9 -0
  17. package/dist/actions/add-user-to-group.d.cts.map +1 -0
  18. package/dist/actions/add-user-to-group.d.mts +9 -0
  19. package/dist/actions/add-user-to-group.d.mts.map +1 -0
  20. package/dist/actions/add-user-to-group.mjs +37 -0
  21. package/dist/actions/add-user-to-group.mjs.map +1 -0
  22. package/dist/actions/create-comment.cjs +42 -0
  23. package/dist/actions/create-comment.cjs.map +1 -0
  24. package/dist/actions/create-comment.d.cts +9 -0
  25. package/dist/actions/create-comment.d.cts.map +1 -0
  26. package/dist/actions/create-comment.d.mts +9 -0
  27. package/dist/actions/create-comment.d.mts.map +1 -0
  28. package/dist/actions/create-comment.mjs +41 -0
  29. package/dist/actions/create-comment.mjs.map +1 -0
  30. package/dist/actions/create-expense.cjs +103 -0
  31. package/dist/actions/create-expense.cjs.map +1 -0
  32. package/dist/actions/create-expense.d.cts +9 -0
  33. package/dist/actions/create-expense.d.cts.map +1 -0
  34. package/dist/actions/create-expense.d.mts +9 -0
  35. package/dist/actions/create-expense.d.mts.map +1 -0
  36. package/dist/actions/create-expense.mjs +102 -0
  37. package/dist/actions/create-expense.mjs.map +1 -0
  38. package/dist/actions/create-friends.cjs +48 -0
  39. package/dist/actions/create-friends.cjs.map +1 -0
  40. package/dist/actions/create-friends.d.cts +9 -0
  41. package/dist/actions/create-friends.d.cts.map +1 -0
  42. package/dist/actions/create-friends.d.mts +9 -0
  43. package/dist/actions/create-friends.d.mts.map +1 -0
  44. package/dist/actions/create-friends.mjs +47 -0
  45. package/dist/actions/create-friends.mjs.map +1 -0
  46. package/dist/actions/create-group.cjs +84 -0
  47. package/dist/actions/create-group.cjs.map +1 -0
  48. package/dist/actions/create-group.d.cts +9 -0
  49. package/dist/actions/create-group.d.cts.map +1 -0
  50. package/dist/actions/create-group.d.mts +9 -0
  51. package/dist/actions/create-group.d.mts.map +1 -0
  52. package/dist/actions/create-group.mjs +83 -0
  53. package/dist/actions/create-group.mjs.map +1 -0
  54. package/dist/actions/delete-comment.cjs +40 -0
  55. package/dist/actions/delete-comment.cjs.map +1 -0
  56. package/dist/actions/delete-comment.d.cts +9 -0
  57. package/dist/actions/delete-comment.d.cts.map +1 -0
  58. package/dist/actions/delete-comment.d.mts +9 -0
  59. package/dist/actions/delete-comment.d.mts.map +1 -0
  60. package/dist/actions/delete-comment.mjs +39 -0
  61. package/dist/actions/delete-comment.mjs.map +1 -0
  62. package/dist/actions/delete-expense.cjs +19 -0
  63. package/dist/actions/delete-expense.cjs.map +1 -0
  64. package/dist/actions/delete-expense.d.cts +9 -0
  65. package/dist/actions/delete-expense.d.cts.map +1 -0
  66. package/dist/actions/delete-expense.d.mts +9 -0
  67. package/dist/actions/delete-expense.d.mts.map +1 -0
  68. package/dist/actions/delete-expense.mjs +16 -0
  69. package/dist/actions/delete-expense.mjs.map +1 -0
  70. package/dist/actions/delete-friend.cjs +19 -0
  71. package/dist/actions/delete-friend.cjs.map +1 -0
  72. package/dist/actions/delete-friend.d.cts +9 -0
  73. package/dist/actions/delete-friend.d.cts.map +1 -0
  74. package/dist/actions/delete-friend.d.mts +9 -0
  75. package/dist/actions/delete-friend.d.mts.map +1 -0
  76. package/dist/actions/delete-friend.mjs +16 -0
  77. package/dist/actions/delete-friend.mjs.map +1 -0
  78. package/dist/actions/delete-group.cjs +19 -0
  79. package/dist/actions/delete-group.cjs.map +1 -0
  80. package/dist/actions/delete-group.d.cts +9 -0
  81. package/dist/actions/delete-group.d.cts.map +1 -0
  82. package/dist/actions/delete-group.d.mts +9 -0
  83. package/dist/actions/delete-group.d.mts.map +1 -0
  84. package/dist/actions/delete-group.mjs +16 -0
  85. package/dist/actions/delete-group.mjs.map +1 -0
  86. package/dist/actions/get-categories.cjs +25 -0
  87. package/dist/actions/get-categories.cjs.map +1 -0
  88. package/dist/actions/get-categories.d.cts +9 -0
  89. package/dist/actions/get-categories.d.cts.map +1 -0
  90. package/dist/actions/get-categories.d.mts +9 -0
  91. package/dist/actions/get-categories.d.mts.map +1 -0
  92. package/dist/actions/get-categories.mjs +24 -0
  93. package/dist/actions/get-categories.mjs.map +1 -0
  94. package/dist/actions/get-comments.cjs +40 -0
  95. package/dist/actions/get-comments.cjs.map +1 -0
  96. package/dist/actions/get-comments.d.cts +9 -0
  97. package/dist/actions/get-comments.d.cts.map +1 -0
  98. package/dist/actions/get-comments.d.mts +9 -0
  99. package/dist/actions/get-comments.d.mts.map +1 -0
  100. package/dist/actions/get-comments.mjs +39 -0
  101. package/dist/actions/get-comments.mjs.map +1 -0
  102. package/dist/actions/get-currencies.cjs +20 -0
  103. package/dist/actions/get-currencies.cjs.map +1 -0
  104. package/dist/actions/get-currencies.d.cts +9 -0
  105. package/dist/actions/get-currencies.d.cts.map +1 -0
  106. package/dist/actions/get-currencies.d.mts +9 -0
  107. package/dist/actions/get-currencies.d.mts.map +1 -0
  108. package/dist/actions/get-currencies.mjs +19 -0
  109. package/dist/actions/get-currencies.mjs.map +1 -0
  110. package/dist/actions/get-current-user.cjs +49 -0
  111. package/dist/actions/get-current-user.cjs.map +1 -0
  112. package/dist/actions/get-current-user.d.cts +9 -0
  113. package/dist/actions/get-current-user.d.cts.map +1 -0
  114. package/dist/actions/get-current-user.d.mts +9 -0
  115. package/dist/actions/get-current-user.d.mts.map +1 -0
  116. package/dist/actions/get-current-user.mjs +48 -0
  117. package/dist/actions/get-current-user.mjs.map +1 -0
  118. package/dist/actions/get-expense.cjs +91 -0
  119. package/dist/actions/get-expense.cjs.map +1 -0
  120. package/dist/actions/get-expense.d.cts +9 -0
  121. package/dist/actions/get-expense.d.cts.map +1 -0
  122. package/dist/actions/get-expense.d.mts +9 -0
  123. package/dist/actions/get-expense.d.mts.map +1 -0
  124. package/dist/actions/get-expense.mjs +90 -0
  125. package/dist/actions/get-expense.mjs.map +1 -0
  126. package/dist/actions/get-expenses.cjs +101 -0
  127. package/dist/actions/get-expenses.cjs.map +1 -0
  128. package/dist/actions/get-expenses.d.cts +9 -0
  129. package/dist/actions/get-expenses.d.cts.map +1 -0
  130. package/dist/actions/get-expenses.d.mts +9 -0
  131. package/dist/actions/get-expenses.d.mts.map +1 -0
  132. package/dist/actions/get-expenses.mjs +100 -0
  133. package/dist/actions/get-expenses.mjs.map +1 -0
  134. package/dist/actions/get-friend.cjs +41 -0
  135. package/dist/actions/get-friend.cjs.map +1 -0
  136. package/dist/actions/get-friend.d.cts +9 -0
  137. package/dist/actions/get-friend.d.cts.map +1 -0
  138. package/dist/actions/get-friend.d.mts +9 -0
  139. package/dist/actions/get-friend.d.mts.map +1 -0
  140. package/dist/actions/get-friend.mjs +40 -0
  141. package/dist/actions/get-friend.mjs.map +1 -0
  142. package/dist/actions/get-friends.cjs +41 -0
  143. package/dist/actions/get-friends.cjs.map +1 -0
  144. package/dist/actions/get-friends.d.cts +9 -0
  145. package/dist/actions/get-friends.d.cts.map +1 -0
  146. package/dist/actions/get-friends.d.mts +9 -0
  147. package/dist/actions/get-friends.d.mts.map +1 -0
  148. package/dist/actions/get-friends.mjs +40 -0
  149. package/dist/actions/get-friends.mjs.map +1 -0
  150. package/dist/actions/get-group.cjs +78 -0
  151. package/dist/actions/get-group.cjs.map +1 -0
  152. package/dist/actions/get-group.d.cts +9 -0
  153. package/dist/actions/get-group.d.cts.map +1 -0
  154. package/dist/actions/get-group.d.mts +9 -0
  155. package/dist/actions/get-group.d.mts.map +1 -0
  156. package/dist/actions/get-group.mjs +77 -0
  157. package/dist/actions/get-group.mjs.map +1 -0
  158. package/dist/actions/get-groups.cjs +77 -0
  159. package/dist/actions/get-groups.cjs.map +1 -0
  160. package/dist/actions/get-groups.d.cts +9 -0
  161. package/dist/actions/get-groups.d.cts.map +1 -0
  162. package/dist/actions/get-groups.d.mts +9 -0
  163. package/dist/actions/get-groups.d.mts.map +1 -0
  164. package/dist/actions/get-groups.mjs +76 -0
  165. package/dist/actions/get-groups.mjs.map +1 -0
  166. package/dist/actions/get-notifications.cjs +34 -0
  167. package/dist/actions/get-notifications.cjs.map +1 -0
  168. package/dist/actions/get-notifications.d.cts +9 -0
  169. package/dist/actions/get-notifications.d.cts.map +1 -0
  170. package/dist/actions/get-notifications.d.mts +9 -0
  171. package/dist/actions/get-notifications.d.mts.map +1 -0
  172. package/dist/actions/get-notifications.mjs +33 -0
  173. package/dist/actions/get-notifications.mjs.map +1 -0
  174. package/dist/actions/get-user.cjs +30 -0
  175. package/dist/actions/get-user.cjs.map +1 -0
  176. package/dist/actions/get-user.d.cts +9 -0
  177. package/dist/actions/get-user.d.cts.map +1 -0
  178. package/dist/actions/get-user.d.mts +9 -0
  179. package/dist/actions/get-user.d.mts.map +1 -0
  180. package/dist/actions/get-user.mjs +29 -0
  181. package/dist/actions/get-user.mjs.map +1 -0
  182. package/dist/actions/index.cjs +55 -0
  183. package/dist/actions/index.d.cts +28 -0
  184. package/dist/actions/index.d.mts +28 -0
  185. package/dist/actions/index.mjs +28 -0
  186. package/dist/actions/remove-user-from-group.cjs +22 -0
  187. package/dist/actions/remove-user-from-group.cjs.map +1 -0
  188. package/dist/actions/remove-user-from-group.d.cts +9 -0
  189. package/dist/actions/remove-user-from-group.d.cts.map +1 -0
  190. package/dist/actions/remove-user-from-group.d.mts +9 -0
  191. package/dist/actions/remove-user-from-group.d.mts.map +1 -0
  192. package/dist/actions/remove-user-from-group.mjs +19 -0
  193. package/dist/actions/remove-user-from-group.mjs.map +1 -0
  194. package/dist/actions/undelete-expense.cjs +19 -0
  195. package/dist/actions/undelete-expense.cjs.map +1 -0
  196. package/dist/actions/undelete-expense.d.cts +9 -0
  197. package/dist/actions/undelete-expense.d.cts.map +1 -0
  198. package/dist/actions/undelete-expense.d.mts +9 -0
  199. package/dist/actions/undelete-expense.d.mts.map +1 -0
  200. package/dist/actions/undelete-expense.mjs +16 -0
  201. package/dist/actions/undelete-expense.mjs.map +1 -0
  202. package/dist/actions/undelete-group.cjs +19 -0
  203. package/dist/actions/undelete-group.cjs.map +1 -0
  204. package/dist/actions/undelete-group.d.cts +9 -0
  205. package/dist/actions/undelete-group.d.cts.map +1 -0
  206. package/dist/actions/undelete-group.d.mts +9 -0
  207. package/dist/actions/undelete-group.d.mts.map +1 -0
  208. package/dist/actions/undelete-group.mjs +16 -0
  209. package/dist/actions/undelete-group.mjs.map +1 -0
  210. package/dist/actions/update-expense.cjs +43 -0
  211. package/dist/actions/update-expense.cjs.map +1 -0
  212. package/dist/actions/update-expense.d.cts +9 -0
  213. package/dist/actions/update-expense.d.cts.map +1 -0
  214. package/dist/actions/update-expense.d.mts +9 -0
  215. package/dist/actions/update-expense.d.mts.map +1 -0
  216. package/dist/actions/update-expense.mjs +40 -0
  217. package/dist/actions/update-expense.mjs.map +1 -0
  218. package/dist/actions/update-user.cjs +57 -0
  219. package/dist/actions/update-user.cjs.map +1 -0
  220. package/dist/actions/update-user.d.cts +9 -0
  221. package/dist/actions/update-user.d.cts.map +1 -0
  222. package/dist/actions/update-user.d.mts +9 -0
  223. package/dist/actions/update-user.d.mts.map +1 -0
  224. package/dist/actions/update-user.mjs +56 -0
  225. package/dist/actions/update-user.mjs.map +1 -0
  226. package/dist/app.cjs +9 -0
  227. package/dist/app.cjs.map +1 -0
  228. package/dist/app.d.cts +5 -0
  229. package/dist/app.d.cts.map +1 -0
  230. package/dist/app.d.mts +5 -0
  231. package/dist/app.d.mts.map +1 -0
  232. package/dist/app.mjs +10 -0
  233. package/dist/app.mjs.map +1 -0
  234. package/dist/catalog.cjs +15 -0
  235. package/dist/catalog.cjs.map +1 -0
  236. package/dist/catalog.d.cts +14 -0
  237. package/dist/catalog.d.cts.map +1 -0
  238. package/dist/catalog.d.mts +14 -0
  239. package/dist/catalog.d.mts.map +1 -0
  240. package/dist/catalog.mjs +15 -0
  241. package/dist/catalog.mjs.map +1 -0
  242. package/dist/execute.cjs +18 -0
  243. package/dist/execute.cjs.map +1 -0
  244. package/dist/execute.mjs +18 -0
  245. package/dist/execute.mjs.map +1 -0
  246. package/dist/index.cjs +60 -0
  247. package/dist/index.d.cts +30 -0
  248. package/dist/index.d.mts +30 -0
  249. package/dist/index.mjs +31 -0
  250. package/package.json +49 -0
@@ -0,0 +1,101 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/get-expenses.ts
4
+ const SplitwiseGetExpensesInput = zod.z.object({
5
+ limit: zod.z.number().int().describe("Maximum number of expenses to return per request. Useful for controlling page size.").optional(),
6
+ offset: zod.z.number().int().describe("Number of expenses to skip for pagination. Use for loading subsequent pages of results.").optional(),
7
+ visible: zod.z.boolean().describe("Show only non-deleted expenses when true. Set to false to include deleted expenses.").optional(),
8
+ group_id: zod.z.number().int().describe("Filter expenses by specific group ID. Returns only expenses belonging to this group.").optional(),
9
+ friend_id: zod.z.number().int().describe("Filter expenses by specific friend ID. Returns only expenses involving this friend.").optional(),
10
+ dated_after: zod.z.string().describe("Return expenses dated after this date. Must be ISO 8601 datetime format.").optional(),
11
+ dated_before: zod.z.string().describe("Return expenses dated before this date. Must be ISO 8601 datetime format.").optional(),
12
+ updated_after: zod.z.string().describe("Return expenses updated after this date. Must be ISO 8601 datetime format.").optional(),
13
+ updated_before: zod.z.string().describe("Return expenses updated before this date. Must be ISO 8601 datetime format.").optional()
14
+ }).describe("Request model for listing expenses with optional filters.");
15
+ const SplitwiseGetExpenses_PictureSchema = zod.z.object({
16
+ large: zod.z.string().describe("URL for large-sized profile picture.").nullable().optional(),
17
+ small: zod.z.string().describe("URL for small-sized profile picture.").nullable().optional(),
18
+ medium: zod.z.string().describe("URL for medium-sized profile picture.").nullable().optional()
19
+ }).describe("URLs for user profile pictures in different sizes.");
20
+ const SplitwiseGetExpenses_UserObjectSchema = zod.z.object({
21
+ id: zod.z.number().int().describe("User ID."),
22
+ email: zod.z.string().describe("User's email address.").nullable().optional(),
23
+ picture: SplitwiseGetExpenses_PictureSchema.nullable().optional(),
24
+ last_name: zod.z.string().describe("User's last name.").nullable().optional(),
25
+ first_name: zod.z.string().describe("User's first name.").nullable().optional(),
26
+ custom_picture: zod.z.boolean().describe("Whether user has custom picture.").nullable().optional(),
27
+ registration_status: zod.z.string().describe("Registration status.").nullable().optional()
28
+ }).describe("Represents a user object in the expense.");
29
+ const SplitwiseGetExpenses_ExpenseUserSchema = zod.z.object({
30
+ user: SplitwiseGetExpenses_UserObjectSchema.nullable(),
31
+ user_id: zod.z.number().int().describe("User identifier."),
32
+ owed_share: zod.z.string().describe("Amount user owes."),
33
+ paid_share: zod.z.string().describe("Amount user paid."),
34
+ net_balance: zod.z.string().describe("Net balance for user.")
35
+ }).describe("Represents a participant in the expense with their share details.");
36
+ const SplitwiseGetExpenses_ReceiptSchema = zod.z.object({
37
+ large: zod.z.string().describe("URL to large receipt image.").nullable().optional(),
38
+ original: zod.z.string().describe("URL to original receipt image.").nullable().optional()
39
+ }).describe("Receipt image URLs.");
40
+ const SplitwiseGetExpenses_CategorySchema = zod.z.object({
41
+ id: zod.z.number().int().describe("Category ID.").nullable().optional(),
42
+ name: zod.z.string().describe("Category name.").nullable().optional()
43
+ }).describe("Expense category information.");
44
+ const SplitwiseGetExpenses_CommentSchema = zod.z.object({
45
+ id: zod.z.number().int().describe("Comment ID.").nullable().optional(),
46
+ user: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
47
+ content: zod.z.string().describe("Comment text.").nullable().optional(),
48
+ created_at: zod.z.string().describe("Creation timestamp.").nullable().optional(),
49
+ deleted_at: zod.z.string().describe("Deletion timestamp.").nullable().optional(),
50
+ relation_id: zod.z.number().int().describe("Related entity ID.").nullable().optional(),
51
+ comment_type: zod.z.string().describe("Type of comment.").nullable().optional(),
52
+ relation_type: zod.z.string().describe("Relation type.").nullable().optional()
53
+ }).describe("Comment on the expense.");
54
+ const SplitwiseGetExpenses_RepaymentSchema = zod.z.object({
55
+ to: zod.z.number().int().describe("Payee user ID."),
56
+ from: zod.z.number().int().describe("Payer user ID."),
57
+ amount: zod.z.string().describe("Payment amount.")
58
+ }).describe("Represents a repayment between users.");
59
+ const SplitwiseGetExpenses_ExpenseSchema = zod.z.object({
60
+ id: zod.z.number().int().describe("Unique expense identifier."),
61
+ cost: zod.z.string().describe("Amount of the expense."),
62
+ date: zod.z.string().describe("Transaction date."),
63
+ users: zod.z.array(SplitwiseGetExpenses_ExpenseUserSchema).describe("Expense participants with their shares."),
64
+ details: zod.z.string().describe("Additional details about the expense.").nullable().optional(),
65
+ payment: zod.z.boolean().describe("Whether this is a payment."),
66
+ receipt: SplitwiseGetExpenses_ReceiptSchema.nullable().optional(),
67
+ repeats: zod.z.boolean().describe("Whether expense repeats."),
68
+ category: SplitwiseGetExpenses_CategorySchema.nullable().optional(),
69
+ comments: zod.z.array(SplitwiseGetExpenses_CommentSchema).describe("Array of comment objects.").nullable().optional(),
70
+ group_id: zod.z.number().int().describe("Associated group ID.").nullable().optional(),
71
+ created_at: zod.z.string().describe("Creation timestamp."),
72
+ created_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
73
+ deleted_at: zod.z.string().describe("Deletion timestamp.").nullable().optional(),
74
+ deleted_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
75
+ repayments: zod.z.array(SplitwiseGetExpenses_RepaymentSchema).describe("Repayments between users."),
76
+ updated_at: zod.z.string().describe("Last update timestamp."),
77
+ updated_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
78
+ category_id: zod.z.number().int().describe("Expense category identifier.").nullable().optional(),
79
+ description: zod.z.string().describe("Brief description of the expense."),
80
+ next_repeat: zod.z.string().describe("Next occurrence date.").nullable().optional(),
81
+ currency_code: zod.z.string().describe("Currency type (e.g., 'USD')."),
82
+ friendship_id: zod.z.number().int().describe("Associated friendship ID.").nullable().optional(),
83
+ comments_count: zod.z.number().int().describe("Number of comments on expense."),
84
+ email_reminder: zod.z.boolean().describe("Reminder setting.").nullable().optional(),
85
+ repeat_interval: zod.z.string().describe("Recurrence pattern.").nullable().optional(),
86
+ expense_bundle_id: zod.z.number().int().describe("Bundle identifier for related expenses.").nullable().optional(),
87
+ transaction_confirmed: zod.z.boolean().describe("Confirmation flag."),
88
+ email_reminder_in_advance: zod.z.number().int().describe("Advance reminder setting.").nullable().optional()
89
+ }).describe("Complete expense information.");
90
+ const SplitwiseGetExpensesOutput = zod.z.object({ expenses: zod.z.array(SplitwiseGetExpenses_ExpenseSchema).describe("Array of expense objects.") }).describe("Response model for listing expenses.");
91
+ const splitwiseGetExpenses = require_action.action("SPLITWISE_GET_EXPENSES", {
92
+ slug: "splitwise-get-expenses",
93
+ name: "Get Expenses",
94
+ description: "Tool to list the current user's expenses from Splitwise account. Use when you need to view expenses with optional filters like date ranges, groups, or friends.",
95
+ input: SplitwiseGetExpensesInput,
96
+ output: SplitwiseGetExpensesOutput
97
+ });
98
+ //#endregion
99
+ exports.splitwiseGetExpenses = splitwiseGetExpenses;
100
+
101
+ //# sourceMappingURL=get-expenses.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-expenses.cjs","names":["z","action"],"sources":["../../src/actions/get-expenses.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetExpensesInput: z.ZodTypeAny = z.object({\n limit: z.number().int().describe(\"Maximum number of expenses to return per request. Useful for controlling page size.\").optional(),\n offset: z.number().int().describe(\"Number of expenses to skip for pagination. Use for loading subsequent pages of results.\").optional(),\n visible: z.boolean().describe(\"Show only non-deleted expenses when true. Set to false to include deleted expenses.\").optional(),\n group_id: z.number().int().describe(\"Filter expenses by specific group ID. Returns only expenses belonging to this group.\").optional(),\n friend_id: z.number().int().describe(\"Filter expenses by specific friend ID. Returns only expenses involving this friend.\").optional(),\n dated_after: z.string().describe(\"Return expenses dated after this date. Must be ISO 8601 datetime format.\").optional(),\n dated_before: z.string().describe(\"Return expenses dated before this date. Must be ISO 8601 datetime format.\").optional(),\n updated_after: z.string().describe(\"Return expenses updated after this date. Must be ISO 8601 datetime format.\").optional(),\n updated_before: z.string().describe(\"Return expenses updated before this date. Must be ISO 8601 datetime format.\").optional(),\n}).describe(\"Request model for listing expenses with optional filters.\");\nconst SplitwiseGetExpenses_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large-sized profile picture.\").nullable().optional(),\n small: z.string().describe(\"URL for small-sized profile picture.\").nullable().optional(),\n medium: z.string().describe(\"URL for medium-sized profile picture.\").nullable().optional(),\n}).describe(\"URLs for user profile pictures in different sizes.\");\nconst SplitwiseGetExpenses_UserObjectSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"User ID.\"),\n email: z.string().describe(\"User's email address.\").nullable().optional(),\n picture: SplitwiseGetExpenses_PictureSchema.nullable().optional(),\n last_name: z.string().describe(\"User's last name.\").nullable().optional(),\n first_name: z.string().describe(\"User's first name.\").nullable().optional(),\n custom_picture: z.boolean().describe(\"Whether user has custom picture.\").nullable().optional(),\n registration_status: z.string().describe(\"Registration status.\").nullable().optional(),\n}).describe(\"Represents a user object in the expense.\");\nconst SplitwiseGetExpenses_ExpenseUserSchema: z.ZodTypeAny = z.object({\n user: SplitwiseGetExpenses_UserObjectSchema.nullable(),\n user_id: z.number().int().describe(\"User identifier.\"),\n owed_share: z.string().describe(\"Amount user owes.\"),\n paid_share: z.string().describe(\"Amount user paid.\"),\n net_balance: z.string().describe(\"Net balance for user.\"),\n}).describe(\"Represents a participant in the expense with their share details.\");\nconst SplitwiseGetExpenses_ReceiptSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL to large receipt image.\").nullable().optional(),\n original: z.string().describe(\"URL to original receipt image.\").nullable().optional(),\n}).describe(\"Receipt image URLs.\");\nconst SplitwiseGetExpenses_CategorySchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Category ID.\").nullable().optional(),\n name: z.string().describe(\"Category name.\").nullable().optional(),\n}).describe(\"Expense category information.\");\nconst SplitwiseGetExpenses_CommentSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Comment ID.\").nullable().optional(),\n user: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n content: z.string().describe(\"Comment text.\").nullable().optional(),\n created_at: z.string().describe(\"Creation timestamp.\").nullable().optional(),\n deleted_at: z.string().describe(\"Deletion timestamp.\").nullable().optional(),\n relation_id: z.number().int().describe(\"Related entity ID.\").nullable().optional(),\n comment_type: z.string().describe(\"Type of comment.\").nullable().optional(),\n relation_type: z.string().describe(\"Relation type.\").nullable().optional(),\n}).describe(\"Comment on the expense.\");\nconst SplitwiseGetExpenses_RepaymentSchema: z.ZodTypeAny = z.object({\n to: z.number().int().describe(\"Payee user ID.\"),\n from: z.number().int().describe(\"Payer user ID.\"),\n amount: z.string().describe(\"Payment amount.\"),\n}).describe(\"Represents a repayment between users.\");\nconst SplitwiseGetExpenses_ExpenseSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique expense identifier.\"),\n cost: z.string().describe(\"Amount of the expense.\"),\n date: z.string().describe(\"Transaction date.\"),\n users: z.array(SplitwiseGetExpenses_ExpenseUserSchema).describe(\"Expense participants with their shares.\"),\n details: z.string().describe(\"Additional details about the expense.\").nullable().optional(),\n payment: z.boolean().describe(\"Whether this is a payment.\"),\n receipt: SplitwiseGetExpenses_ReceiptSchema.nullable().optional(),\n repeats: z.boolean().describe(\"Whether expense repeats.\"),\n category: SplitwiseGetExpenses_CategorySchema.nullable().optional(),\n comments: z.array(SplitwiseGetExpenses_CommentSchema).describe(\"Array of comment objects.\").nullable().optional(),\n group_id: z.number().int().describe(\"Associated group ID.\").nullable().optional(),\n created_at: z.string().describe(\"Creation timestamp.\"),\n created_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n deleted_at: z.string().describe(\"Deletion timestamp.\").nullable().optional(),\n deleted_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n repayments: z.array(SplitwiseGetExpenses_RepaymentSchema).describe(\"Repayments between users.\"),\n updated_at: z.string().describe(\"Last update timestamp.\"),\n updated_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n category_id: z.number().int().describe(\"Expense category identifier.\").nullable().optional(),\n description: z.string().describe(\"Brief description of the expense.\"),\n next_repeat: z.string().describe(\"Next occurrence date.\").nullable().optional(),\n currency_code: z.string().describe(\"Currency type (e.g., 'USD').\"),\n friendship_id: z.number().int().describe(\"Associated friendship ID.\").nullable().optional(),\n comments_count: z.number().int().describe(\"Number of comments on expense.\"),\n email_reminder: z.boolean().describe(\"Reminder setting.\").nullable().optional(),\n repeat_interval: z.string().describe(\"Recurrence pattern.\").nullable().optional(),\n expense_bundle_id: z.number().int().describe(\"Bundle identifier for related expenses.\").nullable().optional(),\n transaction_confirmed: z.boolean().describe(\"Confirmation flag.\"),\n email_reminder_in_advance: z.number().int().describe(\"Advance reminder setting.\").nullable().optional(),\n}).describe(\"Complete expense information.\");\nexport const SplitwiseGetExpensesOutput: z.ZodTypeAny = z.object({\n expenses: z.array(SplitwiseGetExpenses_ExpenseSchema).describe(\"Array of expense objects.\"),\n}).describe(\"Response model for listing expenses.\");\n\nexport const splitwiseGetExpenses = action(\"SPLITWISE_GET_EXPENSES\", {\n slug: \"splitwise-get-expenses\",\n name: \"Get Expenses\",\n description: \"Tool to list the current user's expenses from Splitwise account. Use when you need to view expenses with optional filters like date ranges, groups, or friends.\",\n input: SplitwiseGetExpensesInput,\n output: SplitwiseGetExpensesOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-expenses.d.ts
4
+ declare const SplitwiseGetExpensesInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetExpensesOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetExpenses: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetExpenses };
9
+ //# sourceMappingURL=get-expenses.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-expenses.d.cts","names":[],"sources":["../../src/actions/get-expenses.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAU8B;AAAA,cA4E3D,0BAAA,EAA4B,CAAA,CAAE,UAEQ;AAAA,cAEtC,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-expenses.d.ts
4
+ declare const SplitwiseGetExpensesInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetExpensesOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetExpenses: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetExpenses };
9
+ //# sourceMappingURL=get-expenses.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-expenses.d.mts","names":[],"sources":["../../src/actions/get-expenses.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAU8B;AAAA,cA4E3D,0BAAA,EAA4B,CAAA,CAAE,UAEQ;AAAA,cAEtC,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,100 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/get-expenses.ts
4
+ const SplitwiseGetExpensesInput = z.object({
5
+ limit: z.number().int().describe("Maximum number of expenses to return per request. Useful for controlling page size.").optional(),
6
+ offset: z.number().int().describe("Number of expenses to skip for pagination. Use for loading subsequent pages of results.").optional(),
7
+ visible: z.boolean().describe("Show only non-deleted expenses when true. Set to false to include deleted expenses.").optional(),
8
+ group_id: z.number().int().describe("Filter expenses by specific group ID. Returns only expenses belonging to this group.").optional(),
9
+ friend_id: z.number().int().describe("Filter expenses by specific friend ID. Returns only expenses involving this friend.").optional(),
10
+ dated_after: z.string().describe("Return expenses dated after this date. Must be ISO 8601 datetime format.").optional(),
11
+ dated_before: z.string().describe("Return expenses dated before this date. Must be ISO 8601 datetime format.").optional(),
12
+ updated_after: z.string().describe("Return expenses updated after this date. Must be ISO 8601 datetime format.").optional(),
13
+ updated_before: z.string().describe("Return expenses updated before this date. Must be ISO 8601 datetime format.").optional()
14
+ }).describe("Request model for listing expenses with optional filters.");
15
+ const SplitwiseGetExpenses_PictureSchema = z.object({
16
+ large: z.string().describe("URL for large-sized profile picture.").nullable().optional(),
17
+ small: z.string().describe("URL for small-sized profile picture.").nullable().optional(),
18
+ medium: z.string().describe("URL for medium-sized profile picture.").nullable().optional()
19
+ }).describe("URLs for user profile pictures in different sizes.");
20
+ const SplitwiseGetExpenses_UserObjectSchema = z.object({
21
+ id: z.number().int().describe("User ID."),
22
+ email: z.string().describe("User's email address.").nullable().optional(),
23
+ picture: SplitwiseGetExpenses_PictureSchema.nullable().optional(),
24
+ last_name: z.string().describe("User's last name.").nullable().optional(),
25
+ first_name: z.string().describe("User's first name.").nullable().optional(),
26
+ custom_picture: z.boolean().describe("Whether user has custom picture.").nullable().optional(),
27
+ registration_status: z.string().describe("Registration status.").nullable().optional()
28
+ }).describe("Represents a user object in the expense.");
29
+ const SplitwiseGetExpenses_ExpenseUserSchema = z.object({
30
+ user: SplitwiseGetExpenses_UserObjectSchema.nullable(),
31
+ user_id: z.number().int().describe("User identifier."),
32
+ owed_share: z.string().describe("Amount user owes."),
33
+ paid_share: z.string().describe("Amount user paid."),
34
+ net_balance: z.string().describe("Net balance for user.")
35
+ }).describe("Represents a participant in the expense with their share details.");
36
+ const SplitwiseGetExpenses_ReceiptSchema = z.object({
37
+ large: z.string().describe("URL to large receipt image.").nullable().optional(),
38
+ original: z.string().describe("URL to original receipt image.").nullable().optional()
39
+ }).describe("Receipt image URLs.");
40
+ const SplitwiseGetExpenses_CategorySchema = z.object({
41
+ id: z.number().int().describe("Category ID.").nullable().optional(),
42
+ name: z.string().describe("Category name.").nullable().optional()
43
+ }).describe("Expense category information.");
44
+ const SplitwiseGetExpenses_CommentSchema = z.object({
45
+ id: z.number().int().describe("Comment ID.").nullable().optional(),
46
+ user: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
47
+ content: z.string().describe("Comment text.").nullable().optional(),
48
+ created_at: z.string().describe("Creation timestamp.").nullable().optional(),
49
+ deleted_at: z.string().describe("Deletion timestamp.").nullable().optional(),
50
+ relation_id: z.number().int().describe("Related entity ID.").nullable().optional(),
51
+ comment_type: z.string().describe("Type of comment.").nullable().optional(),
52
+ relation_type: z.string().describe("Relation type.").nullable().optional()
53
+ }).describe("Comment on the expense.");
54
+ const SplitwiseGetExpenses_RepaymentSchema = z.object({
55
+ to: z.number().int().describe("Payee user ID."),
56
+ from: z.number().int().describe("Payer user ID."),
57
+ amount: z.string().describe("Payment amount.")
58
+ }).describe("Represents a repayment between users.");
59
+ const SplitwiseGetExpenses_ExpenseSchema = z.object({
60
+ id: z.number().int().describe("Unique expense identifier."),
61
+ cost: z.string().describe("Amount of the expense."),
62
+ date: z.string().describe("Transaction date."),
63
+ users: z.array(SplitwiseGetExpenses_ExpenseUserSchema).describe("Expense participants with their shares."),
64
+ details: z.string().describe("Additional details about the expense.").nullable().optional(),
65
+ payment: z.boolean().describe("Whether this is a payment."),
66
+ receipt: SplitwiseGetExpenses_ReceiptSchema.nullable().optional(),
67
+ repeats: z.boolean().describe("Whether expense repeats."),
68
+ category: SplitwiseGetExpenses_CategorySchema.nullable().optional(),
69
+ comments: z.array(SplitwiseGetExpenses_CommentSchema).describe("Array of comment objects.").nullable().optional(),
70
+ group_id: z.number().int().describe("Associated group ID.").nullable().optional(),
71
+ created_at: z.string().describe("Creation timestamp."),
72
+ created_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
73
+ deleted_at: z.string().describe("Deletion timestamp.").nullable().optional(),
74
+ deleted_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
75
+ repayments: z.array(SplitwiseGetExpenses_RepaymentSchema).describe("Repayments between users."),
76
+ updated_at: z.string().describe("Last update timestamp."),
77
+ updated_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),
78
+ category_id: z.number().int().describe("Expense category identifier.").nullable().optional(),
79
+ description: z.string().describe("Brief description of the expense."),
80
+ next_repeat: z.string().describe("Next occurrence date.").nullable().optional(),
81
+ currency_code: z.string().describe("Currency type (e.g., 'USD')."),
82
+ friendship_id: z.number().int().describe("Associated friendship ID.").nullable().optional(),
83
+ comments_count: z.number().int().describe("Number of comments on expense."),
84
+ email_reminder: z.boolean().describe("Reminder setting.").nullable().optional(),
85
+ repeat_interval: z.string().describe("Recurrence pattern.").nullable().optional(),
86
+ expense_bundle_id: z.number().int().describe("Bundle identifier for related expenses.").nullable().optional(),
87
+ transaction_confirmed: z.boolean().describe("Confirmation flag."),
88
+ email_reminder_in_advance: z.number().int().describe("Advance reminder setting.").nullable().optional()
89
+ }).describe("Complete expense information.");
90
+ const splitwiseGetExpenses = action("SPLITWISE_GET_EXPENSES", {
91
+ slug: "splitwise-get-expenses",
92
+ name: "Get Expenses",
93
+ description: "Tool to list the current user's expenses from Splitwise account. Use when you need to view expenses with optional filters like date ranges, groups, or friends.",
94
+ input: SplitwiseGetExpensesInput,
95
+ output: z.object({ expenses: z.array(SplitwiseGetExpenses_ExpenseSchema).describe("Array of expense objects.") }).describe("Response model for listing expenses.")
96
+ });
97
+ //#endregion
98
+ export { splitwiseGetExpenses };
99
+
100
+ //# sourceMappingURL=get-expenses.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-expenses.mjs","names":[],"sources":["../../src/actions/get-expenses.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetExpensesInput: z.ZodTypeAny = z.object({\n limit: z.number().int().describe(\"Maximum number of expenses to return per request. Useful for controlling page size.\").optional(),\n offset: z.number().int().describe(\"Number of expenses to skip for pagination. Use for loading subsequent pages of results.\").optional(),\n visible: z.boolean().describe(\"Show only non-deleted expenses when true. Set to false to include deleted expenses.\").optional(),\n group_id: z.number().int().describe(\"Filter expenses by specific group ID. Returns only expenses belonging to this group.\").optional(),\n friend_id: z.number().int().describe(\"Filter expenses by specific friend ID. Returns only expenses involving this friend.\").optional(),\n dated_after: z.string().describe(\"Return expenses dated after this date. Must be ISO 8601 datetime format.\").optional(),\n dated_before: z.string().describe(\"Return expenses dated before this date. Must be ISO 8601 datetime format.\").optional(),\n updated_after: z.string().describe(\"Return expenses updated after this date. Must be ISO 8601 datetime format.\").optional(),\n updated_before: z.string().describe(\"Return expenses updated before this date. Must be ISO 8601 datetime format.\").optional(),\n}).describe(\"Request model for listing expenses with optional filters.\");\nconst SplitwiseGetExpenses_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large-sized profile picture.\").nullable().optional(),\n small: z.string().describe(\"URL for small-sized profile picture.\").nullable().optional(),\n medium: z.string().describe(\"URL for medium-sized profile picture.\").nullable().optional(),\n}).describe(\"URLs for user profile pictures in different sizes.\");\nconst SplitwiseGetExpenses_UserObjectSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"User ID.\"),\n email: z.string().describe(\"User's email address.\").nullable().optional(),\n picture: SplitwiseGetExpenses_PictureSchema.nullable().optional(),\n last_name: z.string().describe(\"User's last name.\").nullable().optional(),\n first_name: z.string().describe(\"User's first name.\").nullable().optional(),\n custom_picture: z.boolean().describe(\"Whether user has custom picture.\").nullable().optional(),\n registration_status: z.string().describe(\"Registration status.\").nullable().optional(),\n}).describe(\"Represents a user object in the expense.\");\nconst SplitwiseGetExpenses_ExpenseUserSchema: z.ZodTypeAny = z.object({\n user: SplitwiseGetExpenses_UserObjectSchema.nullable(),\n user_id: z.number().int().describe(\"User identifier.\"),\n owed_share: z.string().describe(\"Amount user owes.\"),\n paid_share: z.string().describe(\"Amount user paid.\"),\n net_balance: z.string().describe(\"Net balance for user.\"),\n}).describe(\"Represents a participant in the expense with their share details.\");\nconst SplitwiseGetExpenses_ReceiptSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL to large receipt image.\").nullable().optional(),\n original: z.string().describe(\"URL to original receipt image.\").nullable().optional(),\n}).describe(\"Receipt image URLs.\");\nconst SplitwiseGetExpenses_CategorySchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Category ID.\").nullable().optional(),\n name: z.string().describe(\"Category name.\").nullable().optional(),\n}).describe(\"Expense category information.\");\nconst SplitwiseGetExpenses_CommentSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Comment ID.\").nullable().optional(),\n user: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n content: z.string().describe(\"Comment text.\").nullable().optional(),\n created_at: z.string().describe(\"Creation timestamp.\").nullable().optional(),\n deleted_at: z.string().describe(\"Deletion timestamp.\").nullable().optional(),\n relation_id: z.number().int().describe(\"Related entity ID.\").nullable().optional(),\n comment_type: z.string().describe(\"Type of comment.\").nullable().optional(),\n relation_type: z.string().describe(\"Relation type.\").nullable().optional(),\n}).describe(\"Comment on the expense.\");\nconst SplitwiseGetExpenses_RepaymentSchema: z.ZodTypeAny = z.object({\n to: z.number().int().describe(\"Payee user ID.\"),\n from: z.number().int().describe(\"Payer user ID.\"),\n amount: z.string().describe(\"Payment amount.\"),\n}).describe(\"Represents a repayment between users.\");\nconst SplitwiseGetExpenses_ExpenseSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique expense identifier.\"),\n cost: z.string().describe(\"Amount of the expense.\"),\n date: z.string().describe(\"Transaction date.\"),\n users: z.array(SplitwiseGetExpenses_ExpenseUserSchema).describe(\"Expense participants with their shares.\"),\n details: z.string().describe(\"Additional details about the expense.\").nullable().optional(),\n payment: z.boolean().describe(\"Whether this is a payment.\"),\n receipt: SplitwiseGetExpenses_ReceiptSchema.nullable().optional(),\n repeats: z.boolean().describe(\"Whether expense repeats.\"),\n category: SplitwiseGetExpenses_CategorySchema.nullable().optional(),\n comments: z.array(SplitwiseGetExpenses_CommentSchema).describe(\"Array of comment objects.\").nullable().optional(),\n group_id: z.number().int().describe(\"Associated group ID.\").nullable().optional(),\n created_at: z.string().describe(\"Creation timestamp.\"),\n created_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n deleted_at: z.string().describe(\"Deletion timestamp.\").nullable().optional(),\n deleted_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n repayments: z.array(SplitwiseGetExpenses_RepaymentSchema).describe(\"Repayments between users.\"),\n updated_at: z.string().describe(\"Last update timestamp.\"),\n updated_by: SplitwiseGetExpenses_UserObjectSchema.nullable().optional(),\n category_id: z.number().int().describe(\"Expense category identifier.\").nullable().optional(),\n description: z.string().describe(\"Brief description of the expense.\"),\n next_repeat: z.string().describe(\"Next occurrence date.\").nullable().optional(),\n currency_code: z.string().describe(\"Currency type (e.g., 'USD').\"),\n friendship_id: z.number().int().describe(\"Associated friendship ID.\").nullable().optional(),\n comments_count: z.number().int().describe(\"Number of comments on expense.\"),\n email_reminder: z.boolean().describe(\"Reminder setting.\").nullable().optional(),\n repeat_interval: z.string().describe(\"Recurrence pattern.\").nullable().optional(),\n expense_bundle_id: z.number().int().describe(\"Bundle identifier for related expenses.\").nullable().optional(),\n transaction_confirmed: z.boolean().describe(\"Confirmation flag.\"),\n email_reminder_in_advance: z.number().int().describe(\"Advance reminder setting.\").nullable().optional(),\n}).describe(\"Complete expense information.\");\nexport const SplitwiseGetExpensesOutput: z.ZodTypeAny = z.object({\n expenses: z.array(SplitwiseGetExpenses_ExpenseSchema).describe(\"Array of expense objects.\"),\n}).describe(\"Response model for listing expenses.\");\n\nexport const splitwiseGetExpenses = action(\"SPLITWISE_GET_EXPENSES\", {\n slug: \"splitwise-get-expenses\",\n name: \"Get Expenses\",\n description: \"Tool to list the current user's expenses from Splitwise account. Use when you need to view expenses with optional filters like date ranges, groups, or friends.\",\n input: SplitwiseGetExpensesInput,\n output: SplitwiseGetExpensesOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/get-friend.ts
4
+ const SplitwiseGetFriendInput = zod.z.object({ id: zod.z.number().int().describe("User ID of the friend to retrieve") }).describe("Request parameters for getting friend details.");
5
+ const SplitwiseGetFriend_BalanceItemSchema = zod.z.object({
6
+ amount: zod.z.string().describe("Balance amount as string"),
7
+ currency_code: zod.z.string().describe("Currency code, e.g., 'USD'")
8
+ }).describe("A balance amount in a given currency.");
9
+ const SplitwiseGetFriend_GroupItemSchema = zod.z.object({
10
+ balance: zod.z.array(SplitwiseGetFriend_BalanceItemSchema).describe("List of balances within this group"),
11
+ group_id: zod.z.number().int().describe("Unique ID of the group")
12
+ }).describe("Group membership and balances for the friend.");
13
+ const SplitwiseGetFriend_PictureSchema = zod.z.object({
14
+ large: zod.z.string().describe("URL for large profile picture").nullable().optional(),
15
+ small: zod.z.string().describe("URL for small profile picture").nullable().optional(),
16
+ medium: zod.z.string().describe("URL for medium profile picture").nullable().optional()
17
+ }).describe("URLs for different sizes of the user's profile picture.");
18
+ const SplitwiseGetFriend_FriendSchema = zod.z.object({
19
+ id: zod.z.number().int().describe("Unique friend ID"),
20
+ email: zod.z.string().describe("Email address of the friend").nullable().optional(),
21
+ groups: zod.z.array(SplitwiseGetFriend_GroupItemSchema).describe("Groups the friend belongs to").nullable().optional(),
22
+ balance: zod.z.array(SplitwiseGetFriend_BalanceItemSchema).describe("Overall balances with this friend").nullable().optional(),
23
+ picture: SplitwiseGetFriend_PictureSchema.nullable(),
24
+ last_name: zod.z.string().describe("Last name of the friend").nullable().optional(),
25
+ first_name: zod.z.string().describe("First name of the friend"),
26
+ updated_at: zod.z.string().describe("Timestamp of last update to this friend"),
27
+ custom_picture: zod.z.boolean().describe("Whether they have a custom profile picture"),
28
+ registration_status: zod.z.string().describe("Registration status, e.g., 'confirmed'").nullable().optional()
29
+ }).describe("Full friend object returned by Splitwise.");
30
+ const SplitwiseGetFriendOutput = zod.z.object({ friend: SplitwiseGetFriend_FriendSchema.nullable() }).describe("Response containing friend details.");
31
+ const splitwiseGetFriend = require_action.action("SPLITWISE_GET_FRIEND", {
32
+ slug: "splitwise-get-friend",
33
+ name: "Get Friend Details",
34
+ description: "Tool to retrieve detailed information about a specific friend. Use when you need to get profile details and balance information for a friend by their user ID.",
35
+ input: SplitwiseGetFriendInput,
36
+ output: SplitwiseGetFriendOutput
37
+ });
38
+ //#endregion
39
+ exports.splitwiseGetFriend = splitwiseGetFriend;
40
+
41
+ //# sourceMappingURL=get-friend.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friend.cjs","names":["z","action"],"sources":["../../src/actions/get-friend.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetFriendInput: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"User ID of the friend to retrieve\"),\n}).describe(\"Request parameters for getting friend details.\");\nconst SplitwiseGetFriend_BalanceItemSchema: z.ZodTypeAny = z.object({\n amount: z.string().describe(\"Balance amount as string\"),\n currency_code: z.string().describe(\"Currency code, e.g., 'USD'\"),\n}).describe(\"A balance amount in a given currency.\");\nconst SplitwiseGetFriend_GroupItemSchema: z.ZodTypeAny = z.object({\n balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe(\"List of balances within this group\"),\n group_id: z.number().int().describe(\"Unique ID of the group\"),\n}).describe(\"Group membership and balances for the friend.\");\nconst SplitwiseGetFriend_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large profile picture\").nullable().optional(),\n small: z.string().describe(\"URL for small profile picture\").nullable().optional(),\n medium: z.string().describe(\"URL for medium profile picture\").nullable().optional(),\n}).describe(\"URLs for different sizes of the user's profile picture.\");\nconst SplitwiseGetFriend_FriendSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique friend ID\"),\n email: z.string().describe(\"Email address of the friend\").nullable().optional(),\n groups: z.array(SplitwiseGetFriend_GroupItemSchema).describe(\"Groups the friend belongs to\").nullable().optional(),\n balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe(\"Overall balances with this friend\").nullable().optional(),\n picture: SplitwiseGetFriend_PictureSchema.nullable(),\n last_name: z.string().describe(\"Last name of the friend\").nullable().optional(),\n first_name: z.string().describe(\"First name of the friend\"),\n updated_at: z.string().describe(\"Timestamp of last update to this friend\"),\n custom_picture: z.boolean().describe(\"Whether they have a custom profile picture\"),\n registration_status: z.string().describe(\"Registration status, e.g., 'confirmed'\").nullable().optional(),\n}).describe(\"Full friend object returned by Splitwise.\");\nexport const SplitwiseGetFriendOutput: z.ZodTypeAny = z.object({\n friend: SplitwiseGetFriend_FriendSchema.nullable(),\n}).describe(\"Response containing friend details.\");\n\nexport const splitwiseGetFriend = action(\"SPLITWISE_GET_FRIEND\", {\n slug: \"splitwise-get-friend\",\n name: \"Get Friend Details\",\n description: \"Tool to retrieve detailed information about a specific friend. Use when you need to get profile details and balance information for a friend by their user ID.\",\n input: SplitwiseGetFriendInput,\n output: SplitwiseGetFriendOutput,\n});\n"],"mappings":";;;AAIA,MAAa,0BAAwCA,IAAAA,EAAE,OAAO,EAC5D,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC,EACnE,CAAC,CAAC,CAAC,SAAS,gDAAgD;AAC5D,MAAM,uCAAqDA,IAAAA,EAAE,OAAO;CAClE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACtD,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;AACjE,CAAC,CAAC,CAAC,SAAS,uCAAuC;AACnD,MAAM,qCAAmDA,IAAAA,EAAE,OAAO;CAChE,SAASA,IAAAA,EAAE,MAAM,oCAAoC,CAAC,CAAC,SAAS,oCAAoC;CACpG,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;AAC9D,CAAC,CAAC,CAAC,SAAS,+CAA+C;AAC3D,MAAM,mCAAiDA,IAAAA,EAAE,OAAO;CAC9D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACpF,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,kCAAgDA,IAAAA,EAAE,OAAO;CAC7D,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kBAAkB;CAChD,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,QAAQA,IAAAA,EAAE,MAAM,kCAAkC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjH,SAASA,IAAAA,EAAE,MAAM,oCAAoC,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzH,SAAS,iCAAiC,SAAS;CACnD,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CAC1D,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC;CACzE,gBAAgBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4CAA4C;CACjF,qBAAqBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,SAAS,2CAA2C;AACvD,MAAa,2BAAyCA,IAAAA,EAAE,OAAO,EAC7D,QAAQ,gCAAgC,SAAS,EACnD,CAAC,CAAC,CAAC,SAAS,qCAAqC;AAEjD,MAAa,qBAAqBC,eAAAA,OAAO,wBAAwB;CAC/D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-friend.d.ts
4
+ declare const SplitwiseGetFriendInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetFriendOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetFriend: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetFriend };
9
+ //# sourceMappingURL=get-friend.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friend.d.cts","names":[],"sources":["../../src/actions/get-friend.ts"],"mappings":";;;cAIa,uBAAA,EAAyB,CAAA,CAAE,UAEqB;AAAA,cA0BhD,wBAAA,EAA0B,CAAA,CAAE,UAES;AAAA,cAErC,kBAAA,gCAAkB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-friend.d.ts
4
+ declare const SplitwiseGetFriendInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetFriendOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetFriend: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetFriend };
9
+ //# sourceMappingURL=get-friend.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friend.d.mts","names":[],"sources":["../../src/actions/get-friend.ts"],"mappings":";;;cAIa,uBAAA,EAAyB,CAAA,CAAE,UAEqB;AAAA,cA0BhD,wBAAA,EAA0B,CAAA,CAAE,UAES;AAAA,cAErC,kBAAA,gCAAkB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,40 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/get-friend.ts
4
+ const SplitwiseGetFriendInput = z.object({ id: z.number().int().describe("User ID of the friend to retrieve") }).describe("Request parameters for getting friend details.");
5
+ const SplitwiseGetFriend_BalanceItemSchema = z.object({
6
+ amount: z.string().describe("Balance amount as string"),
7
+ currency_code: z.string().describe("Currency code, e.g., 'USD'")
8
+ }).describe("A balance amount in a given currency.");
9
+ const SplitwiseGetFriend_GroupItemSchema = z.object({
10
+ balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe("List of balances within this group"),
11
+ group_id: z.number().int().describe("Unique ID of the group")
12
+ }).describe("Group membership and balances for the friend.");
13
+ const SplitwiseGetFriend_PictureSchema = z.object({
14
+ large: z.string().describe("URL for large profile picture").nullable().optional(),
15
+ small: z.string().describe("URL for small profile picture").nullable().optional(),
16
+ medium: z.string().describe("URL for medium profile picture").nullable().optional()
17
+ }).describe("URLs for different sizes of the user's profile picture.");
18
+ const SplitwiseGetFriend_FriendSchema = z.object({
19
+ id: z.number().int().describe("Unique friend ID"),
20
+ email: z.string().describe("Email address of the friend").nullable().optional(),
21
+ groups: z.array(SplitwiseGetFriend_GroupItemSchema).describe("Groups the friend belongs to").nullable().optional(),
22
+ balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe("Overall balances with this friend").nullable().optional(),
23
+ picture: SplitwiseGetFriend_PictureSchema.nullable(),
24
+ last_name: z.string().describe("Last name of the friend").nullable().optional(),
25
+ first_name: z.string().describe("First name of the friend"),
26
+ updated_at: z.string().describe("Timestamp of last update to this friend"),
27
+ custom_picture: z.boolean().describe("Whether they have a custom profile picture"),
28
+ registration_status: z.string().describe("Registration status, e.g., 'confirmed'").nullable().optional()
29
+ }).describe("Full friend object returned by Splitwise.");
30
+ const splitwiseGetFriend = action("SPLITWISE_GET_FRIEND", {
31
+ slug: "splitwise-get-friend",
32
+ name: "Get Friend Details",
33
+ description: "Tool to retrieve detailed information about a specific friend. Use when you need to get profile details and balance information for a friend by their user ID.",
34
+ input: SplitwiseGetFriendInput,
35
+ output: z.object({ friend: SplitwiseGetFriend_FriendSchema.nullable() }).describe("Response containing friend details.")
36
+ });
37
+ //#endregion
38
+ export { splitwiseGetFriend };
39
+
40
+ //# sourceMappingURL=get-friend.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friend.mjs","names":[],"sources":["../../src/actions/get-friend.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetFriendInput: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"User ID of the friend to retrieve\"),\n}).describe(\"Request parameters for getting friend details.\");\nconst SplitwiseGetFriend_BalanceItemSchema: z.ZodTypeAny = z.object({\n amount: z.string().describe(\"Balance amount as string\"),\n currency_code: z.string().describe(\"Currency code, e.g., 'USD'\"),\n}).describe(\"A balance amount in a given currency.\");\nconst SplitwiseGetFriend_GroupItemSchema: z.ZodTypeAny = z.object({\n balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe(\"List of balances within this group\"),\n group_id: z.number().int().describe(\"Unique ID of the group\"),\n}).describe(\"Group membership and balances for the friend.\");\nconst SplitwiseGetFriend_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large profile picture\").nullable().optional(),\n small: z.string().describe(\"URL for small profile picture\").nullable().optional(),\n medium: z.string().describe(\"URL for medium profile picture\").nullable().optional(),\n}).describe(\"URLs for different sizes of the user's profile picture.\");\nconst SplitwiseGetFriend_FriendSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique friend ID\"),\n email: z.string().describe(\"Email address of the friend\").nullable().optional(),\n groups: z.array(SplitwiseGetFriend_GroupItemSchema).describe(\"Groups the friend belongs to\").nullable().optional(),\n balance: z.array(SplitwiseGetFriend_BalanceItemSchema).describe(\"Overall balances with this friend\").nullable().optional(),\n picture: SplitwiseGetFriend_PictureSchema.nullable(),\n last_name: z.string().describe(\"Last name of the friend\").nullable().optional(),\n first_name: z.string().describe(\"First name of the friend\"),\n updated_at: z.string().describe(\"Timestamp of last update to this friend\"),\n custom_picture: z.boolean().describe(\"Whether they have a custom profile picture\"),\n registration_status: z.string().describe(\"Registration status, e.g., 'confirmed'\").nullable().optional(),\n}).describe(\"Full friend object returned by Splitwise.\");\nexport const SplitwiseGetFriendOutput: z.ZodTypeAny = z.object({\n friend: SplitwiseGetFriend_FriendSchema.nullable(),\n}).describe(\"Response containing friend details.\");\n\nexport const splitwiseGetFriend = action(\"SPLITWISE_GET_FRIEND\", {\n slug: \"splitwise-get-friend\",\n name: \"Get Friend Details\",\n description: \"Tool to retrieve detailed information about a specific friend. Use when you need to get profile details and balance information for a friend by their user ID.\",\n input: SplitwiseGetFriendInput,\n output: SplitwiseGetFriendOutput,\n});\n"],"mappings":";;;AAIA,MAAa,0BAAwC,EAAE,OAAO,EAC5D,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC,EACnE,CAAC,CAAC,CAAC,SAAS,gDAAgD;AAC5D,MAAM,uCAAqD,EAAE,OAAO;CAClE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACtD,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;AACjE,CAAC,CAAC,CAAC,SAAS,uCAAuC;AACnD,MAAM,qCAAmD,EAAE,OAAO;CAChE,SAAS,EAAE,MAAM,oCAAoC,CAAC,CAAC,SAAS,oCAAoC;CACpG,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;AAC9D,CAAC,CAAC,CAAC,SAAS,+CAA+C;AAC3D,MAAM,mCAAiD,EAAE,OAAO;CAC9D,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACpF,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,kCAAgD,EAAE,OAAO;CAC7D,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kBAAkB;CAChD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,QAAQ,EAAE,MAAM,kCAAkC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjH,SAAS,EAAE,MAAM,oCAAoC,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzH,SAAS,iCAAiC,SAAS;CACnD,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CAC1D,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC;CACzE,gBAAgB,EAAE,QAAQ,CAAC,CAAC,SAAS,4CAA4C;CACjF,qBAAqB,EAAE,OAAO,CAAC,CAAC,SAAS,wCAAwC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACzG,CAAC,CAAC,CAAC,SAAS,2CAA2C;AAKvD,MAAa,qBAAqB,OAAO,wBAAwB;CAC/D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAToD,EAAE,OAAO,EAC7D,QAAQ,gCAAgC,SAAS,EACnD,CAAC,CAAC,CAAC,SAAS,qCAOF;AACV,CAAC"}
@@ -0,0 +1,41 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/get-friends.ts
4
+ const SplitwiseGetFriendsInput = zod.z.object({}).describe("Request schema for retrieving current user's friends. No parameters required.");
5
+ const SplitwiseGetFriends_BalanceItemSchema = zod.z.object({
6
+ amount: zod.z.string().describe("Balance amount as string"),
7
+ currency_code: zod.z.string().describe("Currency code, e.g., 'USD'")
8
+ }).describe("A balance amount in a given currency.");
9
+ const SplitwiseGetFriends_GroupItemSchema = zod.z.object({
10
+ balance: zod.z.array(SplitwiseGetFriends_BalanceItemSchema).describe("List of balances within this group"),
11
+ group_id: zod.z.number().int().describe("Unique ID of the group")
12
+ }).describe("Group membership and balances for the friend.");
13
+ const SplitwiseGetFriends_PictureSchema = zod.z.object({
14
+ large: zod.z.string().describe("URL for large profile picture").nullable().optional(),
15
+ small: zod.z.string().describe("URL for small profile picture").nullable().optional(),
16
+ medium: zod.z.string().describe("URL for medium profile picture").nullable().optional()
17
+ }).describe("URLs for different sizes of the user's profile picture.");
18
+ const SplitwiseGetFriends_FriendSchema = zod.z.object({
19
+ id: zod.z.number().int().describe("Unique friend ID"),
20
+ email: zod.z.string().describe("Email address of the friend").nullable().optional(),
21
+ groups: zod.z.array(SplitwiseGetFriends_GroupItemSchema).describe("Groups the friend belongs to").nullable().optional(),
22
+ balance: zod.z.array(SplitwiseGetFriends_BalanceItemSchema).describe("Overall balances with this friend").nullable().optional(),
23
+ picture: SplitwiseGetFriends_PictureSchema.nullable(),
24
+ last_name: zod.z.string().describe("Last name of the friend").nullable().optional(),
25
+ first_name: zod.z.string().describe("First name of the friend"),
26
+ updated_at: zod.z.string().describe("ISO 8601 timestamp of last update"),
27
+ custom_picture: zod.z.boolean().describe("Whether they have a custom profile picture"),
28
+ registration_status: zod.z.string().describe("Registration status, e.g., 'registered'").nullable().optional()
29
+ }).describe("Friend object with profile details and balances.");
30
+ const SplitwiseGetFriendsOutput = zod.z.object({ friends: zod.z.array(SplitwiseGetFriends_FriendSchema).describe("List of friends") }).describe("Response schema for list of current user's friends.");
31
+ const splitwiseGetFriends = require_action.action("SPLITWISE_GET_FRIENDS", {
32
+ slug: "splitwise-get-friends",
33
+ name: "Get Friends",
34
+ description: "Tool to list current user's friends on Splitwise. Use when you need to view all friends, their balances, and shared groups.",
35
+ input: SplitwiseGetFriendsInput,
36
+ output: SplitwiseGetFriendsOutput
37
+ });
38
+ //#endregion
39
+ exports.splitwiseGetFriends = splitwiseGetFriends;
40
+
41
+ //# sourceMappingURL=get-friends.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friends.cjs","names":["z","action"],"sources":["../../src/actions/get-friends.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetFriendsInput: z.ZodTypeAny = z.object({}).describe(\"Request schema for retrieving current user's friends. No parameters required.\");\nconst SplitwiseGetFriends_BalanceItemSchema: z.ZodTypeAny = z.object({\n amount: z.string().describe(\"Balance amount as string\"),\n currency_code: z.string().describe(\"Currency code, e.g., 'USD'\"),\n}).describe(\"A balance amount in a given currency.\");\nconst SplitwiseGetFriends_GroupItemSchema: z.ZodTypeAny = z.object({\n balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe(\"List of balances within this group\"),\n group_id: z.number().int().describe(\"Unique ID of the group\"),\n}).describe(\"Group membership and balances for the friend.\");\nconst SplitwiseGetFriends_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large profile picture\").nullable().optional(),\n small: z.string().describe(\"URL for small profile picture\").nullable().optional(),\n medium: z.string().describe(\"URL for medium profile picture\").nullable().optional(),\n}).describe(\"URLs for different sizes of the user's profile picture.\");\nconst SplitwiseGetFriends_FriendSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique friend ID\"),\n email: z.string().describe(\"Email address of the friend\").nullable().optional(),\n groups: z.array(SplitwiseGetFriends_GroupItemSchema).describe(\"Groups the friend belongs to\").nullable().optional(),\n balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe(\"Overall balances with this friend\").nullable().optional(),\n picture: SplitwiseGetFriends_PictureSchema.nullable(),\n last_name: z.string().describe(\"Last name of the friend\").nullable().optional(),\n first_name: z.string().describe(\"First name of the friend\"),\n updated_at: z.string().describe(\"ISO 8601 timestamp of last update\"),\n custom_picture: z.boolean().describe(\"Whether they have a custom profile picture\"),\n registration_status: z.string().describe(\"Registration status, e.g., 'registered'\").nullable().optional(),\n}).describe(\"Friend object with profile details and balances.\");\nexport const SplitwiseGetFriendsOutput: z.ZodTypeAny = z.object({\n friends: z.array(SplitwiseGetFriends_FriendSchema).describe(\"List of friends\"),\n}).describe(\"Response schema for list of current user's friends.\");\n\nexport const splitwiseGetFriends = action(\"SPLITWISE_GET_FRIENDS\", {\n slug: \"splitwise-get-friends\",\n name: \"Get Friends\",\n description: \"Tool to list current user's friends on Splitwise. Use when you need to view all friends, their balances, and shared groups.\",\n input: SplitwiseGetFriendsInput,\n output: SplitwiseGetFriendsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,2BAAyCA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,+EAA+E;AAC3J,MAAM,wCAAsDA,IAAAA,EAAE,OAAO;CACnE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACtD,eAAeA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;AACjE,CAAC,CAAC,CAAC,SAAS,uCAAuC;AACnD,MAAM,sCAAoDA,IAAAA,EAAE,OAAO;CACjE,SAASA,IAAAA,EAAE,MAAM,qCAAqC,CAAC,CAAC,SAAS,oCAAoC;CACrG,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;AAC9D,CAAC,CAAC,CAAC,SAAS,+CAA+C;AAC3D,MAAM,oCAAkDA,IAAAA,EAAE,OAAO;CAC/D,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACpF,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,mCAAiDA,IAAAA,EAAE,OAAO;CAC9D,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kBAAkB;CAChD,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,QAAQA,IAAAA,EAAE,MAAM,mCAAmC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAClH,SAASA,IAAAA,EAAE,MAAM,qCAAqC,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,SAAS,kCAAkC,SAAS;CACpD,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CAC1D,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mCAAmC;CACnE,gBAAgBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,4CAA4C;CACjF,qBAAqBA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1G,CAAC,CAAC,CAAC,SAAS,kDAAkD;AAC9D,MAAa,4BAA0CA,IAAAA,EAAE,OAAO,EAC9D,SAASA,IAAAA,EAAE,MAAM,gCAAgC,CAAC,CAAC,SAAS,iBAAiB,EAC/E,CAAC,CAAC,CAAC,SAAS,qDAAqD;AAEjE,MAAa,sBAAsBC,eAAAA,OAAO,yBAAyB;CACjE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-friends.d.ts
4
+ declare const SplitwiseGetFriendsInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetFriendsOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetFriends: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetFriends };
9
+ //# sourceMappingURL=get-friends.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friends.d.cts","names":[],"sources":["../../src/actions/get-friends.ts"],"mappings":";;;cAIa,wBAAA,EAA0B,CAAA,CAAE,UAAmH;AAAA,cA0B/I,yBAAA,EAA2B,CAAA,CAAE,UAEwB;AAAA,cAErD,mBAAA,gCAAmB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-friends.d.ts
4
+ declare const SplitwiseGetFriendsInput: z.ZodTypeAny;
5
+ declare const SplitwiseGetFriendsOutput: z.ZodTypeAny;
6
+ declare const splitwiseGetFriends: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { splitwiseGetFriends };
9
+ //# sourceMappingURL=get-friends.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friends.d.mts","names":[],"sources":["../../src/actions/get-friends.ts"],"mappings":";;;cAIa,wBAAA,EAA0B,CAAA,CAAE,UAAmH;AAAA,cA0B/I,yBAAA,EAA2B,CAAA,CAAE,UAEwB;AAAA,cAErD,mBAAA,gCAAmB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,40 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/get-friends.ts
4
+ const SplitwiseGetFriendsInput = z.object({}).describe("Request schema for retrieving current user's friends. No parameters required.");
5
+ const SplitwiseGetFriends_BalanceItemSchema = z.object({
6
+ amount: z.string().describe("Balance amount as string"),
7
+ currency_code: z.string().describe("Currency code, e.g., 'USD'")
8
+ }).describe("A balance amount in a given currency.");
9
+ const SplitwiseGetFriends_GroupItemSchema = z.object({
10
+ balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe("List of balances within this group"),
11
+ group_id: z.number().int().describe("Unique ID of the group")
12
+ }).describe("Group membership and balances for the friend.");
13
+ const SplitwiseGetFriends_PictureSchema = z.object({
14
+ large: z.string().describe("URL for large profile picture").nullable().optional(),
15
+ small: z.string().describe("URL for small profile picture").nullable().optional(),
16
+ medium: z.string().describe("URL for medium profile picture").nullable().optional()
17
+ }).describe("URLs for different sizes of the user's profile picture.");
18
+ const SplitwiseGetFriends_FriendSchema = z.object({
19
+ id: z.number().int().describe("Unique friend ID"),
20
+ email: z.string().describe("Email address of the friend").nullable().optional(),
21
+ groups: z.array(SplitwiseGetFriends_GroupItemSchema).describe("Groups the friend belongs to").nullable().optional(),
22
+ balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe("Overall balances with this friend").nullable().optional(),
23
+ picture: SplitwiseGetFriends_PictureSchema.nullable(),
24
+ last_name: z.string().describe("Last name of the friend").nullable().optional(),
25
+ first_name: z.string().describe("First name of the friend"),
26
+ updated_at: z.string().describe("ISO 8601 timestamp of last update"),
27
+ custom_picture: z.boolean().describe("Whether they have a custom profile picture"),
28
+ registration_status: z.string().describe("Registration status, e.g., 'registered'").nullable().optional()
29
+ }).describe("Friend object with profile details and balances.");
30
+ const splitwiseGetFriends = action("SPLITWISE_GET_FRIENDS", {
31
+ slug: "splitwise-get-friends",
32
+ name: "Get Friends",
33
+ description: "Tool to list current user's friends on Splitwise. Use when you need to view all friends, their balances, and shared groups.",
34
+ input: SplitwiseGetFriendsInput,
35
+ output: z.object({ friends: z.array(SplitwiseGetFriends_FriendSchema).describe("List of friends") }).describe("Response schema for list of current user's friends.")
36
+ });
37
+ //#endregion
38
+ export { splitwiseGetFriends };
39
+
40
+ //# sourceMappingURL=get-friends.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-friends.mjs","names":[],"sources":["../../src/actions/get-friends.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SplitwiseGetFriendsInput: z.ZodTypeAny = z.object({}).describe(\"Request schema for retrieving current user's friends. No parameters required.\");\nconst SplitwiseGetFriends_BalanceItemSchema: z.ZodTypeAny = z.object({\n amount: z.string().describe(\"Balance amount as string\"),\n currency_code: z.string().describe(\"Currency code, e.g., 'USD'\"),\n}).describe(\"A balance amount in a given currency.\");\nconst SplitwiseGetFriends_GroupItemSchema: z.ZodTypeAny = z.object({\n balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe(\"List of balances within this group\"),\n group_id: z.number().int().describe(\"Unique ID of the group\"),\n}).describe(\"Group membership and balances for the friend.\");\nconst SplitwiseGetFriends_PictureSchema: z.ZodTypeAny = z.object({\n large: z.string().describe(\"URL for large profile picture\").nullable().optional(),\n small: z.string().describe(\"URL for small profile picture\").nullable().optional(),\n medium: z.string().describe(\"URL for medium profile picture\").nullable().optional(),\n}).describe(\"URLs for different sizes of the user's profile picture.\");\nconst SplitwiseGetFriends_FriendSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique friend ID\"),\n email: z.string().describe(\"Email address of the friend\").nullable().optional(),\n groups: z.array(SplitwiseGetFriends_GroupItemSchema).describe(\"Groups the friend belongs to\").nullable().optional(),\n balance: z.array(SplitwiseGetFriends_BalanceItemSchema).describe(\"Overall balances with this friend\").nullable().optional(),\n picture: SplitwiseGetFriends_PictureSchema.nullable(),\n last_name: z.string().describe(\"Last name of the friend\").nullable().optional(),\n first_name: z.string().describe(\"First name of the friend\"),\n updated_at: z.string().describe(\"ISO 8601 timestamp of last update\"),\n custom_picture: z.boolean().describe(\"Whether they have a custom profile picture\"),\n registration_status: z.string().describe(\"Registration status, e.g., 'registered'\").nullable().optional(),\n}).describe(\"Friend object with profile details and balances.\");\nexport const SplitwiseGetFriendsOutput: z.ZodTypeAny = z.object({\n friends: z.array(SplitwiseGetFriends_FriendSchema).describe(\"List of friends\"),\n}).describe(\"Response schema for list of current user's friends.\");\n\nexport const splitwiseGetFriends = action(\"SPLITWISE_GET_FRIENDS\", {\n slug: \"splitwise-get-friends\",\n name: \"Get Friends\",\n description: \"Tool to list current user's friends on Splitwise. Use when you need to view all friends, their balances, and shared groups.\",\n input: SplitwiseGetFriendsInput,\n output: SplitwiseGetFriendsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,2BAAyC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,+EAA+E;AAC3J,MAAM,wCAAsD,EAAE,OAAO;CACnE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACtD,eAAe,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;AACjE,CAAC,CAAC,CAAC,SAAS,uCAAuC;AACnD,MAAM,sCAAoD,EAAE,OAAO;CACjE,SAAS,EAAE,MAAM,qCAAqC,CAAC,CAAC,SAAS,oCAAoC;CACrG,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;AAC9D,CAAC,CAAC,CAAC,SAAS,+CAA+C;AAC3D,MAAM,oCAAkD,EAAE,OAAO;CAC/D,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChF,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACpF,CAAC,CAAC,CAAC,SAAS,yDAAyD;AACrE,MAAM,mCAAiD,EAAE,OAAO;CAC9D,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kBAAkB;CAChD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,6BAA6B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,QAAQ,EAAE,MAAM,mCAAmC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAClH,SAAS,EAAE,MAAM,qCAAqC,CAAC,CAAC,SAAS,mCAAmC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC1H,SAAS,kCAAkC,SAAS;CACpD,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9E,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CAC1D,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,mCAAmC;CACnE,gBAAgB,EAAE,QAAQ,CAAC,CAAC,SAAS,4CAA4C;CACjF,qBAAqB,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1G,CAAC,CAAC,CAAC,SAAS,kDAAkD;AAK9D,MAAa,sBAAsB,OAAO,yBAAyB;CACjE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QATqD,EAAE,OAAO,EAC9D,SAAS,EAAE,MAAM,gCAAgC,CAAC,CAAC,SAAS,iBAAiB,EAC/E,CAAC,CAAC,CAAC,SAAS,qDAOF;AACV,CAAC"}