@relayflows/surface 2.0.8 → 2.0.10

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 (343) hide show
  1. package/README.md +3 -2
  2. package/dist/completion.d.ts +2 -0
  3. package/dist/completion.d.ts.map +1 -1
  4. package/dist/context.d.ts +29 -4
  5. package/dist/context.d.ts.map +1 -1
  6. package/dist/effect-transport.d.ts +22 -0
  7. package/dist/effect-transport.d.ts.map +1 -0
  8. package/dist/effect-transport.js +42 -0
  9. package/dist/effect-transport.js.map +1 -0
  10. package/dist/flow.d.ts +30 -5
  11. package/dist/flow.d.ts.map +1 -1
  12. package/dist/flow.js +58 -9
  13. package/dist/flow.js.map +1 -1
  14. package/dist/helper-clients.d.ts +86 -0
  15. package/dist/helper-clients.d.ts.map +1 -0
  16. package/dist/helper-clients.js +30 -0
  17. package/dist/helper-clients.js.map +1 -0
  18. package/dist/helpers/airtable.d.ts +4 -0
  19. package/dist/helpers/airtable.d.ts.map +1 -0
  20. package/dist/helpers/airtable.js +5 -0
  21. package/dist/helpers/airtable.js.map +1 -0
  22. package/dist/helpers/asana.d.ts +5 -0
  23. package/dist/helpers/asana.d.ts.map +1 -0
  24. package/dist/helpers/asana.js +6 -0
  25. package/dist/helpers/asana.js.map +1 -0
  26. package/dist/helpers/azure-blob.d.ts +5 -0
  27. package/dist/helpers/azure-blob.d.ts.map +1 -0
  28. package/dist/helpers/azure-blob.js +6 -0
  29. package/dist/helpers/azure-blob.js.map +1 -0
  30. package/dist/helpers/box.d.ts +5 -0
  31. package/dist/helpers/box.d.ts.map +1 -0
  32. package/dist/helpers/box.js +6 -0
  33. package/dist/helpers/box.js.map +1 -0
  34. package/dist/helpers/calendly.d.ts +5 -0
  35. package/dist/helpers/calendly.d.ts.map +1 -0
  36. package/dist/helpers/calendly.js +6 -0
  37. package/dist/helpers/calendly.js.map +1 -0
  38. package/dist/helpers/clickup.d.ts +5 -0
  39. package/dist/helpers/clickup.d.ts.map +1 -0
  40. package/dist/helpers/clickup.js +6 -0
  41. package/dist/helpers/clickup.js.map +1 -0
  42. package/dist/helpers/clients.d.ts +3 -0
  43. package/dist/helpers/clients.d.ts.map +1 -0
  44. package/dist/helpers/clients.js +46 -0
  45. package/dist/helpers/clients.js.map +1 -0
  46. package/dist/helpers/cloudflare.d.ts +5 -0
  47. package/dist/helpers/cloudflare.d.ts.map +1 -0
  48. package/dist/helpers/cloudflare.js +6 -0
  49. package/dist/helpers/cloudflare.js.map +1 -0
  50. package/dist/helpers/confluence.d.ts +5 -0
  51. package/dist/helpers/confluence.d.ts.map +1 -0
  52. package/dist/helpers/confluence.js +6 -0
  53. package/dist/helpers/confluence.js.map +1 -0
  54. package/dist/helpers/daytona.d.ts +5 -0
  55. package/dist/helpers/daytona.d.ts.map +1 -0
  56. package/dist/helpers/daytona.js +6 -0
  57. package/dist/helpers/daytona.js.map +1 -0
  58. package/dist/helpers/docker-hub.d.ts +4 -0
  59. package/dist/helpers/docker-hub.d.ts.map +1 -0
  60. package/dist/helpers/docker-hub.js +5 -0
  61. package/dist/helpers/docker-hub.js.map +1 -0
  62. package/dist/helpers/dropbox.d.ts +5 -0
  63. package/dist/helpers/dropbox.d.ts.map +1 -0
  64. package/dist/helpers/dropbox.js +6 -0
  65. package/dist/helpers/dropbox.js.map +1 -0
  66. package/dist/helpers/fathom.d.ts +4 -0
  67. package/dist/helpers/fathom.d.ts.map +1 -0
  68. package/dist/helpers/fathom.js +5 -0
  69. package/dist/helpers/fathom.js.map +1 -0
  70. package/dist/helpers/gcp.d.ts +4 -0
  71. package/dist/helpers/gcp.d.ts.map +1 -0
  72. package/dist/helpers/gcp.js +5 -0
  73. package/dist/helpers/gcp.js.map +1 -0
  74. package/dist/helpers/gcs.d.ts +5 -0
  75. package/dist/helpers/gcs.d.ts.map +1 -0
  76. package/dist/helpers/gcs.js +6 -0
  77. package/dist/helpers/gcs.js.map +1 -0
  78. package/dist/helpers/github.d.ts +5 -0
  79. package/dist/helpers/github.d.ts.map +1 -0
  80. package/dist/helpers/github.js +6 -0
  81. package/dist/helpers/github.js.map +1 -0
  82. package/dist/helpers/gitlab.d.ts +5 -0
  83. package/dist/helpers/gitlab.d.ts.map +1 -0
  84. package/dist/helpers/gitlab.js +6 -0
  85. package/dist/helpers/gitlab.js.map +1 -0
  86. package/dist/helpers/gmail.d.ts +5 -0
  87. package/dist/helpers/gmail.d.ts.map +1 -0
  88. package/dist/helpers/gmail.js +6 -0
  89. package/dist/helpers/gmail.js.map +1 -0
  90. package/dist/helpers/google-calendar.d.ts +5 -0
  91. package/dist/helpers/google-calendar.d.ts.map +1 -0
  92. package/dist/helpers/google-calendar.js +6 -0
  93. package/dist/helpers/google-calendar.js.map +1 -0
  94. package/dist/helpers/google-drive.d.ts +5 -0
  95. package/dist/helpers/google-drive.d.ts.map +1 -0
  96. package/dist/helpers/google-drive.js +6 -0
  97. package/dist/helpers/google-drive.js.map +1 -0
  98. package/dist/helpers/granola.d.ts +5 -0
  99. package/dist/helpers/granola.d.ts.map +1 -0
  100. package/dist/helpers/granola.js +6 -0
  101. package/dist/helpers/granola.js.map +1 -0
  102. package/dist/helpers/hubspot.d.ts +5 -0
  103. package/dist/helpers/hubspot.d.ts.map +1 -0
  104. package/dist/helpers/hubspot.js +6 -0
  105. package/dist/helpers/hubspot.js.map +1 -0
  106. package/dist/helpers/index.d.ts +155 -0
  107. package/dist/helpers/index.d.ts.map +1 -0
  108. package/dist/helpers/index.js +105 -0
  109. package/dist/helpers/index.js.map +1 -0
  110. package/dist/helpers/intercom.d.ts +5 -0
  111. package/dist/helpers/intercom.d.ts.map +1 -0
  112. package/dist/helpers/intercom.js +6 -0
  113. package/dist/helpers/intercom.js.map +1 -0
  114. package/dist/helpers/jira.d.ts +5 -0
  115. package/dist/helpers/jira.d.ts.map +1 -0
  116. package/dist/helpers/jira.js +6 -0
  117. package/dist/helpers/jira.js.map +1 -0
  118. package/dist/helpers/linear.d.ts +5 -0
  119. package/dist/helpers/linear.d.ts.map +1 -0
  120. package/dist/helpers/linear.js +6 -0
  121. package/dist/helpers/linear.js.map +1 -0
  122. package/dist/helpers/mailgun.d.ts +5 -0
  123. package/dist/helpers/mailgun.d.ts.map +1 -0
  124. package/dist/helpers/mailgun.js +6 -0
  125. package/dist/helpers/mailgun.js.map +1 -0
  126. package/dist/helpers/mixpanel.d.ts +5 -0
  127. package/dist/helpers/mixpanel.d.ts.map +1 -0
  128. package/dist/helpers/mixpanel.js +6 -0
  129. package/dist/helpers/mixpanel.js.map +1 -0
  130. package/dist/helpers/neon.d.ts +4 -0
  131. package/dist/helpers/neon.d.ts.map +1 -0
  132. package/dist/helpers/neon.js +5 -0
  133. package/dist/helpers/neon.js.map +1 -0
  134. package/dist/helpers/notion.d.ts +5 -0
  135. package/dist/helpers/notion.d.ts.map +1 -0
  136. package/dist/helpers/notion.js +6 -0
  137. package/dist/helpers/notion.js.map +1 -0
  138. package/dist/helpers/onedrive.d.ts +5 -0
  139. package/dist/helpers/onedrive.d.ts.map +1 -0
  140. package/dist/helpers/onedrive.js +6 -0
  141. package/dist/helpers/onedrive.js.map +1 -0
  142. package/dist/helpers/pipedrive.d.ts +5 -0
  143. package/dist/helpers/pipedrive.d.ts.map +1 -0
  144. package/dist/helpers/pipedrive.js +6 -0
  145. package/dist/helpers/pipedrive.js.map +1 -0
  146. package/dist/helpers/postgres.d.ts +5 -0
  147. package/dist/helpers/postgres.d.ts.map +1 -0
  148. package/dist/helpers/postgres.js +6 -0
  149. package/dist/helpers/postgres.js.map +1 -0
  150. package/dist/helpers/posthog.d.ts +4 -0
  151. package/dist/helpers/posthog.d.ts.map +1 -0
  152. package/dist/helpers/posthog.js +5 -0
  153. package/dist/helpers/posthog.js.map +1 -0
  154. package/dist/helpers/providers.d.ts +252 -0
  155. package/dist/helpers/providers.d.ts.map +1 -0
  156. package/dist/helpers/providers.js +305 -0
  157. package/dist/helpers/providers.js.map +1 -0
  158. package/dist/helpers/ramp.d.ts +7 -0
  159. package/dist/helpers/ramp.d.ts.map +1 -0
  160. package/dist/helpers/ramp.js +7 -0
  161. package/dist/helpers/ramp.js.map +1 -0
  162. package/dist/helpers/recall.d.ts +5 -0
  163. package/dist/helpers/recall.d.ts.map +1 -0
  164. package/dist/helpers/recall.js +6 -0
  165. package/dist/helpers/recall.js.map +1 -0
  166. package/dist/helpers/reddit.d.ts +5 -0
  167. package/dist/helpers/reddit.d.ts.map +1 -0
  168. package/dist/helpers/reddit.js +6 -0
  169. package/dist/helpers/reddit.js.map +1 -0
  170. package/dist/helpers/redis.d.ts +5 -0
  171. package/dist/helpers/redis.d.ts.map +1 -0
  172. package/dist/helpers/redis.js +6 -0
  173. package/dist/helpers/redis.js.map +1 -0
  174. package/dist/helpers/s3.d.ts +5 -0
  175. package/dist/helpers/s3.d.ts.map +1 -0
  176. package/dist/helpers/s3.js +6 -0
  177. package/dist/helpers/s3.js.map +1 -0
  178. package/dist/helpers/salesforce.d.ts +5 -0
  179. package/dist/helpers/salesforce.d.ts.map +1 -0
  180. package/dist/helpers/salesforce.js +6 -0
  181. package/dist/helpers/salesforce.js.map +1 -0
  182. package/dist/helpers/segment.d.ts +4 -0
  183. package/dist/helpers/segment.d.ts.map +1 -0
  184. package/dist/helpers/segment.js +5 -0
  185. package/dist/helpers/segment.js.map +1 -0
  186. package/dist/helpers/sendgrid.d.ts +5 -0
  187. package/dist/helpers/sendgrid.d.ts.map +1 -0
  188. package/dist/helpers/sendgrid.js +6 -0
  189. package/dist/helpers/sendgrid.js.map +1 -0
  190. package/dist/helpers/sharepoint.d.ts +5 -0
  191. package/dist/helpers/sharepoint.d.ts.map +1 -0
  192. package/dist/helpers/sharepoint.js +6 -0
  193. package/dist/helpers/sharepoint.js.map +1 -0
  194. package/dist/helpers/shopify.d.ts +4 -0
  195. package/dist/helpers/shopify.d.ts.map +1 -0
  196. package/dist/helpers/shopify.js +5 -0
  197. package/dist/helpers/shopify.js.map +1 -0
  198. package/dist/helpers/shortcut.d.ts +5 -0
  199. package/dist/helpers/shortcut.d.ts.map +1 -0
  200. package/dist/helpers/shortcut.js +6 -0
  201. package/dist/helpers/shortcut.js.map +1 -0
  202. package/dist/helpers/slack.d.ts +17 -0
  203. package/dist/helpers/slack.d.ts.map +1 -0
  204. package/dist/helpers/slack.js +4 -0
  205. package/dist/helpers/slack.js.map +1 -0
  206. package/dist/helpers/stripe.d.ts +5 -0
  207. package/dist/helpers/stripe.d.ts.map +1 -0
  208. package/dist/helpers/stripe.js +6 -0
  209. package/dist/helpers/stripe.js.map +1 -0
  210. package/dist/helpers/teams.d.ts +5 -0
  211. package/dist/helpers/teams.d.ts.map +1 -0
  212. package/dist/helpers/teams.js +6 -0
  213. package/dist/helpers/teams.js.map +1 -0
  214. package/dist/helpers/telegram.d.ts +5 -0
  215. package/dist/helpers/telegram.d.ts.map +1 -0
  216. package/dist/helpers/telegram.js +6 -0
  217. package/dist/helpers/telegram.js.map +1 -0
  218. package/dist/helpers/webhook-server.d.ts +4 -0
  219. package/dist/helpers/webhook-server.d.ts.map +1 -0
  220. package/dist/helpers/webhook-server.js +5 -0
  221. package/dist/helpers/webhook-server.js.map +1 -0
  222. package/dist/helpers/x.d.ts +4 -0
  223. package/dist/helpers/x.d.ts.map +1 -0
  224. package/dist/helpers/x.js +5 -0
  225. package/dist/helpers/x.js.map +1 -0
  226. package/dist/helpers/zendesk.d.ts +5 -0
  227. package/dist/helpers/zendesk.d.ts.map +1 -0
  228. package/dist/helpers/zendesk.js +6 -0
  229. package/dist/helpers/zendesk.js.map +1 -0
  230. package/dist/index.d.ts +11 -4
  231. package/dist/index.d.ts.map +1 -1
  232. package/dist/index.js +3 -0
  233. package/dist/index.js.map +1 -1
  234. package/dist/memory.d.ts +19 -0
  235. package/dist/memory.d.ts.map +1 -0
  236. package/dist/memory.js +2 -0
  237. package/dist/memory.js.map +1 -0
  238. package/dist/plugin-contract.d.ts +5 -0
  239. package/dist/plugin-contract.d.ts.map +1 -0
  240. package/dist/plugin-contract.js +2 -0
  241. package/dist/plugin-contract.js.map +1 -0
  242. package/dist/provider-trigger.d.ts +13 -0
  243. package/dist/provider-trigger.d.ts.map +1 -0
  244. package/dist/provider-trigger.js +18 -0
  245. package/dist/provider-trigger.js.map +1 -0
  246. package/dist/runtime.d.ts +6 -1
  247. package/dist/runtime.d.ts.map +1 -1
  248. package/dist/runtime.js +5 -0
  249. package/dist/runtime.js.map +1 -1
  250. package/dist/slack.d.ts +34 -0
  251. package/dist/slack.d.ts.map +1 -0
  252. package/dist/slack.js +17 -0
  253. package/dist/slack.js.map +1 -0
  254. package/dist/step.d.ts +43 -1
  255. package/dist/step.d.ts.map +1 -1
  256. package/dist/triggers/github.d.ts +8 -0
  257. package/dist/triggers/github.d.ts.map +1 -0
  258. package/dist/triggers/github.js +17 -0
  259. package/dist/triggers/github.js.map +1 -0
  260. package/dist/triggers/index.d.ts +8 -0
  261. package/dist/triggers/index.d.ts.map +1 -0
  262. package/dist/triggers/index.js +9 -0
  263. package/dist/triggers/index.js.map +1 -0
  264. package/dist/triggers/slack.d.ts +8 -0
  265. package/dist/triggers/slack.d.ts.map +1 -0
  266. package/dist/triggers/slack.js +17 -0
  267. package/dist/triggers/slack.js.map +1 -0
  268. package/dist/triggers.d.ts +15 -0
  269. package/dist/triggers.d.ts.map +1 -0
  270. package/dist/triggers.js +43 -0
  271. package/dist/triggers.js.map +1 -0
  272. package/package.json +21 -2
  273. package/src/completion.ts +3 -0
  274. package/src/context.ts +28 -4
  275. package/src/effect-transport.ts +59 -0
  276. package/src/flow.ts +77 -15
  277. package/src/helper-clients.ts +30 -0
  278. package/src/helpers/README.md +42 -0
  279. package/src/helpers/airtable.ts +9 -0
  280. package/src/helpers/asana.ts +10 -0
  281. package/src/helpers/azure-blob.ts +10 -0
  282. package/src/helpers/box.ts +10 -0
  283. package/src/helpers/calendly.ts +10 -0
  284. package/src/helpers/clickup.ts +10 -0
  285. package/src/helpers/clients.ts +48 -0
  286. package/src/helpers/cloudflare.ts +10 -0
  287. package/src/helpers/confluence.ts +10 -0
  288. package/src/helpers/daytona.ts +10 -0
  289. package/src/helpers/docker-hub.ts +9 -0
  290. package/src/helpers/dropbox.ts +10 -0
  291. package/src/helpers/fathom.ts +9 -0
  292. package/src/helpers/gcp.ts +9 -0
  293. package/src/helpers/gcs.ts +10 -0
  294. package/src/helpers/github.ts +10 -0
  295. package/src/helpers/gitlab.ts +10 -0
  296. package/src/helpers/gmail.ts +10 -0
  297. package/src/helpers/google-calendar.ts +10 -0
  298. package/src/helpers/google-drive.ts +10 -0
  299. package/src/helpers/granola.ts +10 -0
  300. package/src/helpers/hubspot.ts +10 -0
  301. package/src/helpers/index.ts +212 -0
  302. package/src/helpers/intercom.ts +10 -0
  303. package/src/helpers/jira.ts +10 -0
  304. package/src/helpers/linear.ts +10 -0
  305. package/src/helpers/mailgun.ts +10 -0
  306. package/src/helpers/mixpanel.ts +10 -0
  307. package/src/helpers/neon.ts +9 -0
  308. package/src/helpers/notion.ts +10 -0
  309. package/src/helpers/onedrive.ts +10 -0
  310. package/src/helpers/pipedrive.ts +10 -0
  311. package/src/helpers/postgres.ts +10 -0
  312. package/src/helpers/posthog.ts +9 -0
  313. package/src/helpers/providers.ts +305 -0
  314. package/src/helpers/ramp.ts +12 -0
  315. package/src/helpers/recall.ts +10 -0
  316. package/src/helpers/reddit.ts +10 -0
  317. package/src/helpers/redis.ts +10 -0
  318. package/src/helpers/s3.ts +10 -0
  319. package/src/helpers/salesforce.ts +10 -0
  320. package/src/helpers/segment.ts +9 -0
  321. package/src/helpers/sendgrid.ts +10 -0
  322. package/src/helpers/sharepoint.ts +10 -0
  323. package/src/helpers/shopify.ts +9 -0
  324. package/src/helpers/shortcut.ts +10 -0
  325. package/src/helpers/slack.ts +16 -0
  326. package/src/helpers/stripe.ts +10 -0
  327. package/src/helpers/teams.ts +10 -0
  328. package/src/helpers/telegram.ts +10 -0
  329. package/src/helpers/webhook-server.ts +9 -0
  330. package/src/helpers/x.ts +9 -0
  331. package/src/helpers/zendesk.ts +10 -0
  332. package/src/index.ts +26 -2
  333. package/src/memory.ts +20 -0
  334. package/src/plugin-contract.ts +5 -0
  335. package/src/provider-trigger.ts +26 -0
  336. package/src/runtime.ts +8 -0
  337. package/src/slack.ts +47 -0
  338. package/src/step.ts +52 -1
  339. package/src/triggers/README.md +75 -0
  340. package/src/triggers/github.ts +19 -0
  341. package/src/triggers/index.ts +10 -0
  342. package/src/triggers/slack.ts +19 -0
  343. package/src/triggers.ts +49 -0
@@ -0,0 +1,30 @@
1
+ import { githubClient as upstreamGithub, notionClient as upstreamNotion, created } from '@relayfile/relay-helpers';
2
+ import type { RelayClientOptions } from '@relayfile/relay-helpers/transport';
3
+
4
+ /** Accept the conventional owner/repo shorthand as well as upstream arguments. */
5
+ export function githubClient(options: RelayClientOptions) {
6
+ const client = upstreamGithub(options);
7
+ return { ...client, createIssue(args: { owner?: string; repo: string; title: string; body: string; labels?: string[] }) {
8
+ const [owner, repo, extra] = args.repo.split('/');
9
+ if (!args.owner && (!owner || !repo || extra)) throw new Error('github.createIssue requires repo: "owner/repo" or an explicit owner');
10
+ return client.createIssue({ ...args, owner: args.owner ?? owner!, repo: args.owner ? args.repo : repo! });
11
+ } };
12
+ }
13
+
14
+ export function stripeClient(options: RelayClientOptions) {
15
+ return { createInvoice(args: { customer: string; auto_advance?: boolean; collection_method?: 'charge_automatically' | 'send_invoice'; days_until_due?: number; description?: string; metadata?: Record<string, string> }) {
16
+ if (!options.transport) throw new Error('Stripe requires a journal transport');
17
+ return created(options.transport.write({ provider: 'stripe', resource: 'invoices',
18
+ parameters: {}, path: '/stripe/invoices', body: args }));
19
+ } };
20
+ }
21
+
22
+ export function notionClient(options: RelayClientOptions) {
23
+ return { ...upstreamNotion(options), async appendBlock(args: { pageId: string; block: Record<string, unknown> }) {
24
+ if (!options.transport) throw new Error('Notion requires a journal transport');
25
+ // The adapter does not yet support this route. The runtime refuses it in
26
+ // mount mode, while mock mode can exercise authoring and effect lowering.
27
+ return created(options.transport.write({ provider: 'notion', resource: 'blocks',
28
+ parameters: { pageId: args.pageId }, path: `/notion/pages/${encodeURIComponent(args.pageId)}/blocks`, body: { children: [args.block] } }));
29
+ } };
30
+ }
@@ -0,0 +1,42 @@
1
+ Generated TypeScript helpers; do not edit the `.ts` files. Run
2
+ `npm run gen --prefix packages/surface` from the repository root (or `npm run gen`
3
+ inside this package). This repository has no root npm workspace, so
4
+ `npm run gen -w @relayflows/surface` is not available.
5
+
6
+ This minimal slice ships Slack's four existing journal-backed methods. Argument
7
+ shapes come from the pinned `@relayfile/relay-helpers` declaration; return types
8
+ come from the existing surface dispatcher contract, including `reply`'s `ref`.
9
+ `post` extends that contract with a structured second argument (`text`, `blocks`,
10
+ `attachments`) or `blocks`/`attachments` in its third options argument. Options
11
+ take precedence when both forms provide the same field. `replyTo` still maps to
12
+ the adapter's `parentRef`; no interaction callback registration is added.
13
+
14
+ The pinned relay-helpers 0.4.11 package does **not** export Block Kit/OpenAPI
15
+ types. Until it does, `scripts/slack-message-schema.json` vendors the small
16
+ fragments used by the generator, with their upstream URL and JSON pointers.
17
+ Slack's published OpenAPI schema requires a string `type` on blocks but leaves
18
+ their other fields open. Attachment objects are likewise open (the generic
19
+ chat.update message schema is used; chat.postMessage's response attachment
20
+ schema requires a server-assigned `id`, unsuitable for authoring).
21
+ These types do not validate individual block layouts or interaction handlers.
22
+ The SDK preserves structured content at the adapter transport boundary because
23
+ the pinned adapter's ergonomic `post` still accepts only text.
24
+
25
+ `Ctx` extends the generated `Helpers` namespace map. A union of namespace maps
26
+ would make only their common properties accessible, so composition uses an
27
+ interface instead.
28
+
29
+ To consume a read-only adapter checkout before release:
30
+ `node scripts/generate-helpers.mjs --adapters-dir /path/to/relayfile-adapters`.
31
+ Use `--out-dir /tmp/generated-helpers` to inspect output without changing source.
32
+ CI regenerates from the installed pinned package and compares every generated
33
+ TypeScript file byte-for-byte, including the namespace index.
34
+
35
+ Follow-up for the full slice N: add GitHub, Notion, Linear, and Stripe once their
36
+ methods have runtime dispatch support; consume mapping/discovery resources and
37
+ generate the remaining providers. The current runtime implements only Slack.
38
+ The uniform upstream clients expose resource `read`/`list`/`write` methods,
39
+ not `stripe.createInvoice` or `notion.appendBlock`; those aliases need an agreed
40
+ runtime contract before this types-only generator can expose them. GitHub's
41
+ bespoke `createIssue` also requires `owner` in addition to `repo`, `title`, and
42
+ `body`. No new provider methods or resource methods are advertised in this proof.
@@ -0,0 +1,9 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { bindHelper, type EffectDispatcher, type JournalHelper, type UnavailableHelper } from "../effect-transport.js";
5
+
6
+ export type AirtableHelper = UnavailableHelper;
7
+
8
+ export const createAirtableHelper = (dispatch: EffectDispatcher): AirtableHelper =>
9
+ bindHelper("airtable", undefined, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { asanaClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type AsanaHelper = JournalHelper<ReturnType<typeof asanaClient>>;
8
+
9
+ export const createAsanaHelper = (dispatch: EffectDispatcher): AsanaHelper =>
10
+ bindHelper("asana", asanaClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { azureBlobClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type AzureBlobHelper = JournalHelper<ReturnType<typeof azureBlobClient>>;
8
+
9
+ export const createAzureBlobHelper = (dispatch: EffectDispatcher): AzureBlobHelper =>
10
+ bindHelper("azure-blob", azureBlobClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { boxClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type BoxHelper = JournalHelper<ReturnType<typeof boxClient>>;
8
+
9
+ export const createBoxHelper = (dispatch: EffectDispatcher): BoxHelper =>
10
+ bindHelper("box", boxClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { calendlyClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type CalendlyHelper = JournalHelper<ReturnType<typeof calendlyClient>>;
8
+
9
+ export const createCalendlyHelper = (dispatch: EffectDispatcher): CalendlyHelper =>
10
+ bindHelper("calendly", calendlyClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { clickupClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type ClickupHelper = JournalHelper<ReturnType<typeof clickupClient>>;
8
+
9
+ export const createClickupHelper = (dispatch: EffectDispatcher): ClickupHelper =>
10
+ bindHelper("clickup", clickupClient, dispatch);
@@ -0,0 +1,48 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import * as upstream from "@relayfile/relay-helpers";
5
+ import * as custom from "../helper-clients.js";
6
+ import type { HelperFactory } from "../effect-transport.js";
7
+
8
+ export const helperClients: Readonly<Record<string, HelperFactory>> = {
9
+ "asana": upstream.asanaClient,
10
+ "azure-blob": upstream.azureBlobClient,
11
+ "box": upstream.boxClient,
12
+ "calendly": upstream.calendlyClient,
13
+ "clickup": upstream.clickupClient,
14
+ "cloudflare": upstream.cloudflareClient,
15
+ "confluence": upstream.confluenceClient,
16
+ "daytona": upstream.daytonaClient,
17
+ "dropbox": upstream.dropboxClient,
18
+ "gcs": upstream.gcsClient,
19
+ "github": custom.githubClient,
20
+ "gitlab": upstream.gitlabClient,
21
+ "gmail": upstream.gmailClient,
22
+ "google-calendar": upstream.googleCalendarClient,
23
+ "google-drive": upstream.googleDriveClient,
24
+ "granola": upstream.granolaClient,
25
+ "hubspot": upstream.hubspotClient,
26
+ "intercom": upstream.intercomClient,
27
+ "jira": upstream.jiraClient,
28
+ "linear": upstream.linearClient,
29
+ "mailgun": upstream.mailgunClient,
30
+ "mixpanel": upstream.mixpanelClient,
31
+ "notion": custom.notionClient,
32
+ "onedrive": upstream.onedriveClient,
33
+ "pipedrive": upstream.pipedriveClient,
34
+ "postgres": upstream.postgresClient,
35
+ "ramp": (options) => upstream.providerClient("ramp", options),
36
+ "recall": upstream.recallClient,
37
+ "reddit": upstream.redditClient,
38
+ "redis": upstream.redisClient,
39
+ "s3": upstream.s3Client,
40
+ "salesforce": upstream.salesforceClient,
41
+ "sendgrid": upstream.sendgridClient,
42
+ "sharepoint": upstream.sharepointClient,
43
+ "shortcut": upstream.shortcutClient,
44
+ "stripe": custom.stripeClient,
45
+ "teams": upstream.teamsClient,
46
+ "telegram": upstream.telegramClient,
47
+ "zendesk": upstream.zendeskClient,
48
+ };
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { cloudflareClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type CloudflareHelper = JournalHelper<ReturnType<typeof cloudflareClient>>;
8
+
9
+ export const createCloudflareHelper = (dispatch: EffectDispatcher): CloudflareHelper =>
10
+ bindHelper("cloudflare", cloudflareClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { confluenceClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type ConfluenceHelper = JournalHelper<ReturnType<typeof confluenceClient>>;
8
+
9
+ export const createConfluenceHelper = (dispatch: EffectDispatcher): ConfluenceHelper =>
10
+ bindHelper("confluence", confluenceClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { daytonaClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type DaytonaHelper = JournalHelper<ReturnType<typeof daytonaClient>>;
8
+
9
+ export const createDaytonaHelper = (dispatch: EffectDispatcher): DaytonaHelper =>
10
+ bindHelper("daytona", daytonaClient, dispatch);
@@ -0,0 +1,9 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { bindHelper, type EffectDispatcher, type JournalHelper, type UnavailableHelper } from "../effect-transport.js";
5
+
6
+ export type DockerHubHelper = UnavailableHelper;
7
+
8
+ export const createDockerHubHelper = (dispatch: EffectDispatcher): DockerHubHelper =>
9
+ bindHelper("docker-hub", undefined, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { dropboxClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type DropboxHelper = JournalHelper<ReturnType<typeof dropboxClient>>;
8
+
9
+ export const createDropboxHelper = (dispatch: EffectDispatcher): DropboxHelper =>
10
+ bindHelper("dropbox", dropboxClient, dispatch);
@@ -0,0 +1,9 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { bindHelper, type EffectDispatcher, type JournalHelper, type UnavailableHelper } from "../effect-transport.js";
5
+
6
+ export type FathomHelper = UnavailableHelper;
7
+
8
+ export const createFathomHelper = (dispatch: EffectDispatcher): FathomHelper =>
9
+ bindHelper("fathom", undefined, dispatch);
@@ -0,0 +1,9 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { bindHelper, type EffectDispatcher, type JournalHelper, type UnavailableHelper } from "../effect-transport.js";
5
+
6
+ export type GcpHelper = UnavailableHelper;
7
+
8
+ export const createGcpHelper = (dispatch: EffectDispatcher): GcpHelper =>
9
+ bindHelper("gcp", undefined, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { gcsClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GcsHelper = JournalHelper<ReturnType<typeof gcsClient>>;
8
+
9
+ export const createGcsHelper = (dispatch: EffectDispatcher): GcsHelper =>
10
+ bindHelper("gcs", gcsClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { githubClient } from "../helper-clients.js";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GithubHelper = JournalHelper<ReturnType<typeof githubClient>>;
8
+
9
+ export const createGithubHelper = (dispatch: EffectDispatcher): GithubHelper =>
10
+ bindHelper("github", githubClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { gitlabClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GitlabHelper = JournalHelper<ReturnType<typeof gitlabClient>>;
8
+
9
+ export const createGitlabHelper = (dispatch: EffectDispatcher): GitlabHelper =>
10
+ bindHelper("gitlab", gitlabClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { gmailClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GmailHelper = JournalHelper<ReturnType<typeof gmailClient>>;
8
+
9
+ export const createGmailHelper = (dispatch: EffectDispatcher): GmailHelper =>
10
+ bindHelper("gmail", gmailClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { googleCalendarClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GoogleCalendarHelper = JournalHelper<ReturnType<typeof googleCalendarClient>>;
8
+
9
+ export const createGoogleCalendarHelper = (dispatch: EffectDispatcher): GoogleCalendarHelper =>
10
+ bindHelper("google-calendar", googleCalendarClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { googleDriveClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GoogleDriveHelper = JournalHelper<ReturnType<typeof googleDriveClient>>;
8
+
9
+ export const createGoogleDriveHelper = (dispatch: EffectDispatcher): GoogleDriveHelper =>
10
+ bindHelper("google-drive", googleDriveClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { granolaClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type GranolaHelper = JournalHelper<ReturnType<typeof granolaClient>>;
8
+
9
+ export const createGranolaHelper = (dispatch: EffectDispatcher): GranolaHelper =>
10
+ bindHelper("granola", granolaClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { hubspotClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type HubspotHelper = JournalHelper<ReturnType<typeof hubspotClient>>;
8
+
9
+ export const createHubspotHelper = (dispatch: EffectDispatcher): HubspotHelper =>
10
+ bindHelper("hubspot", hubspotClient, dispatch);
@@ -0,0 +1,212 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import type { SlackHelper } from "./slack.js";
5
+ import { createAirtableHelper, type AirtableHelper } from "./airtable.js";
6
+ import { createAsanaHelper, type AsanaHelper } from "./asana.js";
7
+ import { createAzureBlobHelper, type AzureBlobHelper } from "./azure-blob.js";
8
+ import { createBoxHelper, type BoxHelper } from "./box.js";
9
+ import { createCalendlyHelper, type CalendlyHelper } from "./calendly.js";
10
+ import { createClickupHelper, type ClickupHelper } from "./clickup.js";
11
+ import { createCloudflareHelper, type CloudflareHelper } from "./cloudflare.js";
12
+ import { createConfluenceHelper, type ConfluenceHelper } from "./confluence.js";
13
+ import { createDaytonaHelper, type DaytonaHelper } from "./daytona.js";
14
+ import { createDockerHubHelper, type DockerHubHelper } from "./docker-hub.js";
15
+ import { createDropboxHelper, type DropboxHelper } from "./dropbox.js";
16
+ import { createFathomHelper, type FathomHelper } from "./fathom.js";
17
+ import { createGcpHelper, type GcpHelper } from "./gcp.js";
18
+ import { createGcsHelper, type GcsHelper } from "./gcs.js";
19
+ import { createGithubHelper, type GithubHelper } from "./github.js";
20
+ import { createGitlabHelper, type GitlabHelper } from "./gitlab.js";
21
+ import { createGmailHelper, type GmailHelper } from "./gmail.js";
22
+ import { createGoogleCalendarHelper, type GoogleCalendarHelper } from "./google-calendar.js";
23
+ import { createGoogleDriveHelper, type GoogleDriveHelper } from "./google-drive.js";
24
+ import { createGranolaHelper, type GranolaHelper } from "./granola.js";
25
+ import { createHubspotHelper, type HubspotHelper } from "./hubspot.js";
26
+ import { createIntercomHelper, type IntercomHelper } from "./intercom.js";
27
+ import { createJiraHelper, type JiraHelper } from "./jira.js";
28
+ import { createLinearHelper, type LinearHelper } from "./linear.js";
29
+ import { createMailgunHelper, type MailgunHelper } from "./mailgun.js";
30
+ import { createMixpanelHelper, type MixpanelHelper } from "./mixpanel.js";
31
+ import { createNeonHelper, type NeonHelper } from "./neon.js";
32
+ import { createNotionHelper, type NotionHelper } from "./notion.js";
33
+ import { createOnedriveHelper, type OnedriveHelper } from "./onedrive.js";
34
+ import { createPipedriveHelper, type PipedriveHelper } from "./pipedrive.js";
35
+ import { createPostgresHelper, type PostgresHelper } from "./postgres.js";
36
+ import { createPosthogHelper, type PosthogHelper } from "./posthog.js";
37
+ import { createRampHelper, type RampHelper } from "./ramp.js";
38
+ import { createRecallHelper, type RecallHelper } from "./recall.js";
39
+ import { createRedditHelper, type RedditHelper } from "./reddit.js";
40
+ import { createRedisHelper, type RedisHelper } from "./redis.js";
41
+ import { createS3Helper, type S3Helper } from "./s3.js";
42
+ import { createSalesforceHelper, type SalesforceHelper } from "./salesforce.js";
43
+ import { createSegmentHelper, type SegmentHelper } from "./segment.js";
44
+ import { createSendgridHelper, type SendgridHelper } from "./sendgrid.js";
45
+ import { createSharepointHelper, type SharepointHelper } from "./sharepoint.js";
46
+ import { createShopifyHelper, type ShopifyHelper } from "./shopify.js";
47
+ import { createShortcutHelper, type ShortcutHelper } from "./shortcut.js";
48
+ import { createStripeHelper, type StripeHelper } from "./stripe.js";
49
+ import { createTeamsHelper, type TeamsHelper } from "./teams.js";
50
+ import { createTelegramHelper, type TelegramHelper } from "./telegram.js";
51
+ import { createWebhookServerHelper, type WebhookServerHelper } from "./webhook-server.js";
52
+ import { createXHelper, type XHelper } from "./x.js";
53
+ import { createZendeskHelper, type ZendeskHelper } from "./zendesk.js";
54
+ import type { EffectDispatcher } from "../effect-transport.js";
55
+
56
+ export type { AirtableHelper } from "./airtable.js";
57
+ export type { AsanaHelper } from "./asana.js";
58
+ export type { AzureBlobHelper } from "./azure-blob.js";
59
+ export type { BoxHelper } from "./box.js";
60
+ export type { CalendlyHelper } from "./calendly.js";
61
+ export type { ClickupHelper } from "./clickup.js";
62
+ export type { CloudflareHelper } from "./cloudflare.js";
63
+ export type { ConfluenceHelper } from "./confluence.js";
64
+ export type { DaytonaHelper } from "./daytona.js";
65
+ export type { DockerHubHelper } from "./docker-hub.js";
66
+ export type { DropboxHelper } from "./dropbox.js";
67
+ export type { FathomHelper } from "./fathom.js";
68
+ export type { GcpHelper } from "./gcp.js";
69
+ export type { GcsHelper } from "./gcs.js";
70
+ export type { GithubHelper } from "./github.js";
71
+ export type { GitlabHelper } from "./gitlab.js";
72
+ export type { GmailHelper } from "./gmail.js";
73
+ export type { GoogleCalendarHelper } from "./google-calendar.js";
74
+ export type { GoogleDriveHelper } from "./google-drive.js";
75
+ export type { GranolaHelper } from "./granola.js";
76
+ export type { HubspotHelper } from "./hubspot.js";
77
+ export type { IntercomHelper } from "./intercom.js";
78
+ export type { JiraHelper } from "./jira.js";
79
+ export type { LinearHelper } from "./linear.js";
80
+ export type { MailgunHelper } from "./mailgun.js";
81
+ export type { MixpanelHelper } from "./mixpanel.js";
82
+ export type { NeonHelper } from "./neon.js";
83
+ export type { NotionHelper } from "./notion.js";
84
+ export type { OnedriveHelper } from "./onedrive.js";
85
+ export type { PipedriveHelper } from "./pipedrive.js";
86
+ export type { PostgresHelper } from "./postgres.js";
87
+ export type { PosthogHelper } from "./posthog.js";
88
+ export type { RampHelper } from "./ramp.js";
89
+ export type { RecallHelper } from "./recall.js";
90
+ export type { RedditHelper } from "./reddit.js";
91
+ export type { RedisHelper } from "./redis.js";
92
+ export type { S3Helper } from "./s3.js";
93
+ export type { SalesforceHelper } from "./salesforce.js";
94
+ export type { SegmentHelper } from "./segment.js";
95
+ export type { SendgridHelper } from "./sendgrid.js";
96
+ export type { SharepointHelper } from "./sharepoint.js";
97
+ export type { ShopifyHelper } from "./shopify.js";
98
+ export type { ShortcutHelper } from "./shortcut.js";
99
+ export type { SlackHelper } from "./slack.js";
100
+ export type { StripeHelper } from "./stripe.js";
101
+ export type { TeamsHelper } from "./teams.js";
102
+ export type { TelegramHelper } from "./telegram.js";
103
+ export type { WebhookServerHelper } from "./webhook-server.js";
104
+ export type { XHelper } from "./x.js";
105
+ export type { ZendeskHelper } from "./zendesk.js";
106
+
107
+ export interface Helpers {
108
+ airtable: AirtableHelper;
109
+ asana: AsanaHelper;
110
+ azureBlob: AzureBlobHelper;
111
+ box: BoxHelper;
112
+ calendly: CalendlyHelper;
113
+ clickup: ClickupHelper;
114
+ cloudflare: CloudflareHelper;
115
+ confluence: ConfluenceHelper;
116
+ daytona: DaytonaHelper;
117
+ dockerHub: DockerHubHelper;
118
+ dropbox: DropboxHelper;
119
+ fathom: FathomHelper;
120
+ gcp: GcpHelper;
121
+ gcs: GcsHelper;
122
+ github: GithubHelper;
123
+ gitlab: GitlabHelper;
124
+ gmail: GmailHelper;
125
+ googleCalendar: GoogleCalendarHelper;
126
+ googleDrive: GoogleDriveHelper;
127
+ granola: GranolaHelper;
128
+ hubspot: HubspotHelper;
129
+ intercom: IntercomHelper;
130
+ jira: JiraHelper;
131
+ linear: LinearHelper;
132
+ mailgun: MailgunHelper;
133
+ mixpanel: MixpanelHelper;
134
+ neon: NeonHelper;
135
+ notion: NotionHelper;
136
+ onedrive: OnedriveHelper;
137
+ pipedrive: PipedriveHelper;
138
+ postgres: PostgresHelper;
139
+ posthog: PosthogHelper;
140
+ ramp: RampHelper;
141
+ recall: RecallHelper;
142
+ reddit: RedditHelper;
143
+ redis: RedisHelper;
144
+ s3: S3Helper;
145
+ salesforce: SalesforceHelper;
146
+ segment: SegmentHelper;
147
+ sendgrid: SendgridHelper;
148
+ sharepoint: SharepointHelper;
149
+ shopify: ShopifyHelper;
150
+ shortcut: ShortcutHelper;
151
+ slack: SlackHelper;
152
+ stripe: StripeHelper;
153
+ teams: TeamsHelper;
154
+ telegram: TelegramHelper;
155
+ webhookServer: WebhookServerHelper;
156
+ x: XHelper;
157
+ zendesk: ZendeskHelper;
158
+ }
159
+
160
+ export function createHelpers(dispatch: EffectDispatcher): Omit<Helpers, "slack"> {
161
+ return {
162
+ airtable: createAirtableHelper(dispatch),
163
+ asana: createAsanaHelper(dispatch),
164
+ azureBlob: createAzureBlobHelper(dispatch),
165
+ box: createBoxHelper(dispatch),
166
+ calendly: createCalendlyHelper(dispatch),
167
+ clickup: createClickupHelper(dispatch),
168
+ cloudflare: createCloudflareHelper(dispatch),
169
+ confluence: createConfluenceHelper(dispatch),
170
+ daytona: createDaytonaHelper(dispatch),
171
+ dockerHub: createDockerHubHelper(dispatch),
172
+ dropbox: createDropboxHelper(dispatch),
173
+ fathom: createFathomHelper(dispatch),
174
+ gcp: createGcpHelper(dispatch),
175
+ gcs: createGcsHelper(dispatch),
176
+ github: createGithubHelper(dispatch),
177
+ gitlab: createGitlabHelper(dispatch),
178
+ gmail: createGmailHelper(dispatch),
179
+ googleCalendar: createGoogleCalendarHelper(dispatch),
180
+ googleDrive: createGoogleDriveHelper(dispatch),
181
+ granola: createGranolaHelper(dispatch),
182
+ hubspot: createHubspotHelper(dispatch),
183
+ intercom: createIntercomHelper(dispatch),
184
+ jira: createJiraHelper(dispatch),
185
+ linear: createLinearHelper(dispatch),
186
+ mailgun: createMailgunHelper(dispatch),
187
+ mixpanel: createMixpanelHelper(dispatch),
188
+ neon: createNeonHelper(dispatch),
189
+ notion: createNotionHelper(dispatch),
190
+ onedrive: createOnedriveHelper(dispatch),
191
+ pipedrive: createPipedriveHelper(dispatch),
192
+ postgres: createPostgresHelper(dispatch),
193
+ posthog: createPosthogHelper(dispatch),
194
+ ramp: createRampHelper(dispatch),
195
+ recall: createRecallHelper(dispatch),
196
+ reddit: createRedditHelper(dispatch),
197
+ redis: createRedisHelper(dispatch),
198
+ s3: createS3Helper(dispatch),
199
+ salesforce: createSalesforceHelper(dispatch),
200
+ segment: createSegmentHelper(dispatch),
201
+ sendgrid: createSendgridHelper(dispatch),
202
+ sharepoint: createSharepointHelper(dispatch),
203
+ shopify: createShopifyHelper(dispatch),
204
+ shortcut: createShortcutHelper(dispatch),
205
+ stripe: createStripeHelper(dispatch),
206
+ teams: createTeamsHelper(dispatch),
207
+ telegram: createTelegramHelper(dispatch),
208
+ webhookServer: createWebhookServerHelper(dispatch),
209
+ x: createXHelper(dispatch),
210
+ zendesk: createZendeskHelper(dispatch),
211
+ };
212
+ }
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { intercomClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type IntercomHelper = JournalHelper<ReturnType<typeof intercomClient>>;
8
+
9
+ export const createIntercomHelper = (dispatch: EffectDispatcher): IntercomHelper =>
10
+ bindHelper("intercom", intercomClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { jiraClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type JiraHelper = JournalHelper<ReturnType<typeof jiraClient>>;
8
+
9
+ export const createJiraHelper = (dispatch: EffectDispatcher): JiraHelper =>
10
+ bindHelper("jira", jiraClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { linearClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type LinearHelper = JournalHelper<ReturnType<typeof linearClient>>;
8
+
9
+ export const createLinearHelper = (dispatch: EffectDispatcher): LinearHelper =>
10
+ bindHelper("linear", linearClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { mailgunClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type MailgunHelper = JournalHelper<ReturnType<typeof mailgunClient>>;
8
+
9
+ export const createMailgunHelper = (dispatch: EffectDispatcher): MailgunHelper =>
10
+ bindHelper("mailgun", mailgunClient, dispatch);
@@ -0,0 +1,10 @@
1
+ // GENERATED by scripts/generate-helpers.mjs — do not edit.
2
+ // Run `npm run gen --prefix packages/surface` from the repository root.
3
+
4
+ import { mixpanelClient } from "@relayfile/relay-helpers";
5
+ import { bindHelper, type EffectDispatcher, type JournalHelper } from "../effect-transport.js";
6
+
7
+ export type MixpanelHelper = JournalHelper<ReturnType<typeof mixpanelClient>>;
8
+
9
+ export const createMixpanelHelper = (dispatch: EffectDispatcher): MixpanelHelper =>
10
+ bindHelper("mixpanel", mixpanelClient, dispatch);