@automate.ax/catalog 0.75.0 → 0.77.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 (63) hide show
  1. package/dist/authoring.d.ts +1 -0
  2. package/dist/authoring.js +1 -0
  3. package/dist/catalog.d.ts +142 -74
  4. package/dist/catalog.js +74 -13
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.js +1 -1
  7. package/dist/triggers/airtable.js +1 -2
  8. package/dist/triggers/asana.js +1 -2
  9. package/dist/triggers/brevo.js +1 -2
  10. package/dist/triggers/core-dashboard.d.ts +374 -0
  11. package/dist/triggers/core-dashboard.js +202 -0
  12. package/dist/triggers/core-http.d.ts +30 -0
  13. package/dist/triggers/core-http.js +43 -0
  14. package/dist/triggers/core-invocation.d.ts +9 -0
  15. package/dist/triggers/core-invocation.js +15 -0
  16. package/dist/triggers/core-mailhook.d.ts +35 -0
  17. package/dist/triggers/core-mailhook.js +63 -0
  18. package/dist/triggers/core-schedule.d.ts +9 -0
  19. package/dist/triggers/core-schedule.js +17 -0
  20. package/dist/triggers/core.d.ts +15 -426
  21. package/dist/triggers/core.js +16 -346
  22. package/dist/triggers/github.js +4 -5
  23. package/dist/triggers/google.d.ts +143 -0
  24. package/dist/triggers/google.js +92 -5
  25. package/dist/triggers/index.d.ts +347 -74
  26. package/dist/triggers/index.js +2 -1
  27. package/dist/triggers/linear.js +1 -2
  28. package/dist/triggers/microsoft.js +3 -4
  29. package/dist/triggers/name.d.ts +13 -0
  30. package/dist/triggers/name.js +31 -0
  31. package/dist/triggers/resend.js +1 -2
  32. package/dist/triggers/slack.js +3 -4
  33. package/dist/triggers/trello.js +1 -2
  34. package/dist/triggers/vercel.d.ts +27 -27
  35. package/dist/triggers/vercel.js +10 -11
  36. package/dist/triggers/whatsapp.js +1 -2
  37. package/dist/types.d.ts +1 -1
  38. package/dist/types.js +3 -3
  39. package/package.json +118 -5
  40. package/src/authoring.ts +8 -0
  41. package/src/catalog.ts +76 -13
  42. package/src/index.ts +2 -0
  43. package/src/triggers/airtable.ts +1 -2
  44. package/src/triggers/asana.ts +1 -2
  45. package/src/triggers/brevo.ts +1 -2
  46. package/src/triggers/core-dashboard.ts +361 -0
  47. package/src/triggers/core-http.ts +69 -0
  48. package/src/triggers/core-invocation.ts +18 -0
  49. package/src/triggers/core-mailhook.ts +83 -0
  50. package/src/triggers/core-schedule.ts +21 -0
  51. package/src/triggers/core.ts +38 -544
  52. package/src/triggers/github.ts +4 -5
  53. package/src/triggers/google.ts +93 -5
  54. package/src/triggers/index.ts +2 -1
  55. package/src/triggers/linear.ts +1 -2
  56. package/src/triggers/microsoft.ts +3 -4
  57. package/src/triggers/name.ts +37 -0
  58. package/src/triggers/resend.ts +1 -2
  59. package/src/triggers/slack.ts +3 -4
  60. package/src/triggers/trello.ts +1 -2
  61. package/src/triggers/vercel.ts +10 -11
  62. package/src/triggers/whatsapp.ts +1 -2
  63. package/src/types.ts +4 -4
package/dist/catalog.js CHANGED
@@ -6,7 +6,7 @@ const API_KEY_FIELD = {
6
6
  required: true,
7
7
  };
8
8
  export const airtableService = defineIntegrationService({
9
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
9
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
10
10
  description: "Connect an Airtable account.",
11
11
  id: "airtable",
12
12
  name: "Airtable",
@@ -33,7 +33,7 @@ export const apolloService = defineIntegrationService({
33
33
  preferredConnectionMethodId: "oauth",
34
34
  });
35
35
  export const asanaService = defineIntegrationService({
36
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
36
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
37
37
  description: "Connect an Asana account.",
38
38
  id: "asana",
39
39
  name: "Asana",
@@ -72,6 +72,50 @@ export const cloudflareService = defineIntegrationService({
72
72
  name: "Cloudflare",
73
73
  preferredConnectionMethodId: "oauth",
74
74
  });
75
+ export const chatgptService = defineIntegrationService({
76
+ connectionMethods: [
77
+ {
78
+ fields: [
79
+ {
80
+ input: "password",
81
+ label: "Workspace Agent access token",
82
+ name: "apiKey",
83
+ placeholder: "Paste your ChatGPT access token",
84
+ required: true,
85
+ },
86
+ ],
87
+ id: "access-token",
88
+ name: "Access token",
89
+ type: "form",
90
+ },
91
+ ],
92
+ description: "Connect a Workspace Agent access token.",
93
+ icon: "openai",
94
+ id: "chatgpt",
95
+ name: "ChatGPT",
96
+ });
97
+ export const codexService = defineIntegrationService({
98
+ connectionMethods: [
99
+ {
100
+ fields: [
101
+ {
102
+ input: "password",
103
+ label: "Codex access token",
104
+ name: "apiKey",
105
+ placeholder: "Paste your Codex access token",
106
+ required: true,
107
+ },
108
+ ],
109
+ id: "access-token",
110
+ name: "Access token",
111
+ type: "form",
112
+ },
113
+ ],
114
+ description: "Connect a Codex workspace access token.",
115
+ icon: "openai",
116
+ id: "codex",
117
+ name: "Codex",
118
+ });
75
119
  export const cohereService = defineApiKeyService({
76
120
  description: "Connect a Cohere API key.",
77
121
  id: "cohere",
@@ -99,13 +143,15 @@ export const fireworksService = defineApiKeyService({
99
143
  name: "Fireworks AI",
100
144
  });
101
145
  export const githubService = defineIntegrationService({
102
- connectionMethods: [{ id: "default", name: "GitHub App", type: "redirect" }],
146
+ connectionMethods: [
147
+ { id: "github-app", name: "GitHub App", type: "redirect" },
148
+ ],
103
149
  description: "Install Automate.ax on a GitHub account or organization.",
104
150
  id: "github",
105
151
  name: "GitHub",
106
152
  });
107
153
  export const googleService = defineIntegrationService({
108
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
154
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
109
155
  connectionNotice: {
110
156
  action: {
111
157
  href: "mailto:hello@automate.ax?subject=Google%20integration%20access",
@@ -129,20 +175,33 @@ export const groqService = defineApiKeyService({
129
175
  id: "groq",
130
176
  name: "Groq",
131
177
  });
132
- export const huggingfaceService = defineApiKeyService({
178
+ export const huggingfaceService = defineIntegrationService({
179
+ connectionMethods: [
180
+ {
181
+ fields: [
182
+ {
183
+ ...API_KEY_FIELD,
184
+ label: "Access token",
185
+ placeholder: "hf_...",
186
+ },
187
+ ],
188
+ id: "access-token",
189
+ name: "Access token",
190
+ type: "form",
191
+ },
192
+ ],
133
193
  description: "Connect a Hugging Face access token.",
134
194
  id: "huggingface",
135
195
  name: "Hugging Face",
136
- placeholder: "hf_...",
137
196
  });
138
197
  export const linearService = defineIntegrationService({
139
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
198
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
140
199
  description: "Connect a Linear workspace.",
141
200
  id: "linear",
142
201
  name: "Linear",
143
202
  });
144
203
  export const microsoftService = defineIntegrationService({
145
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
204
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
146
205
  description: "Connect a Microsoft account.",
147
206
  id: "microsoft",
148
207
  name: "Microsoft",
@@ -188,7 +247,7 @@ export const postgresService = defineIntegrationService({
188
247
  required: true,
189
248
  },
190
249
  ],
191
- id: "default",
250
+ id: "credentials",
192
251
  name: "Credentials",
193
252
  type: "form",
194
253
  },
@@ -219,13 +278,13 @@ export const scrapflyService = defineApiKeyService({
219
278
  placeholder: "scp-live-...",
220
279
  });
221
280
  export const slackService = defineIntegrationService({
222
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
281
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
223
282
  description: "Install the Automate.ax bot in a Slack workspace.",
224
283
  id: "slack",
225
284
  name: "Slack",
226
285
  });
227
286
  export const tidycalService = defineIntegrationService({
228
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
287
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
229
288
  description: "Connect a TidyCal account.",
230
289
  id: "tidycal",
231
290
  name: "TidyCal",
@@ -236,7 +295,7 @@ export const togetheraiService = defineApiKeyService({
236
295
  name: "Together AI",
237
296
  });
238
297
  export const trelloService = defineIntegrationService({
239
- connectionMethods: [{ id: "default", name: "OAuth", type: "redirect" }],
298
+ connectionMethods: [{ id: "oauth", name: "OAuth", type: "redirect" }],
240
299
  description: "Connect a Trello account.",
241
300
  id: "trello",
242
301
  name: "Trello",
@@ -291,7 +350,9 @@ export const integrationCatalog = defineIntegrationCatalog([
291
350
  asanaService,
292
351
  brevoService,
293
352
  cerebrasService,
353
+ chatgptService,
294
354
  cloudflareService,
355
+ codexService,
295
356
  cohereService,
296
357
  deepinfraService,
297
358
  deepseekService,
@@ -344,7 +405,7 @@ function defineApiKeyService(service) {
344
405
  placeholder: service.placeholder ?? "API key",
345
406
  },
346
407
  ],
347
- id: "default",
408
+ id: "api-key",
348
409
  name: "API key",
349
410
  type: "form",
350
411
  },
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, cloudflareService, cohereService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, type IntegrationServiceId, } from "./catalog.js";
1
+ export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, type IntegrationServiceId, } from "./catalog.js";
2
2
  export { defineIntegrationCatalog, defineIntegrationService, integrationScope, type IntegrationAccountConnectionOption, type IntegrationAccountRequirement, type IntegrationConnectionDefinition, type IntegrationConnectionNotice, type IntegrationFormField, type IntegrationScopeRequirement, type IntegrationServiceDefinition, type ScopeRequirementGroup, type TriggerDefinition, type TriggerPresentation, type TriggerPresentationContext, type TriggerPresentationDetail, type TriggerScopePresentation, type TriggerPresentationValue, } from "./types.js";
3
3
  export { getDashboardRunEndpoint, getDashboardRunEndpointKey, getHttpTriggerEndpoint, getHttpTriggerEndpointKey, getMailhookAddress, getMailhookAddressKey, DASHBOARD_RUN_CONFIG_SCHEMA, getTriggerDefinition, getTriggerName, getTriggerPresentation, isTriggerVisible, PLATFORM_EMAIL_DOMAIN, triggerCatalog, triggerDefinitions, type DashboardRunConfig, type DashboardRunEndpointOptions, type DashboardRunField, type HttpTriggerEndpointOptions, type HttpTriggerScope, type MailhookAddressOptions, type MailhookScope, type TriggerType, } from "./triggers/index.js";
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, cloudflareService, cohereService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, } from "./catalog.js";
1
+ export { airtableService, anthropicService, apolloService, asanaService, brevoService, cerebrasService, chatgptService, cloudflareService, codexService, cohereService, deepinfraService, deepseekService, firecrawlService, fireworksService, getIntegrationService, githubService, googleGenaiService, googleService, groqService, huggingfaceService, integrationCatalog, linearService, microsoftService, millionverifierService, mistralService, openaiService, openrouterService, perplexityService, postgresService, resendService, scrapflyService, slackService, tidycalService, togetheraiService, trelloService, vercelAiGatewayService, vercelService, whatsappService, xaiService, } from "./catalog.js";
2
2
  export { defineIntegrationCatalog, defineIntegrationService, integrationScope, } from "./types.js";
3
3
  export { getDashboardRunEndpoint, getDashboardRunEndpointKey, getHttpTriggerEndpoint, getHttpTriggerEndpointKey, getMailhookAddress, getMailhookAddressKey, DASHBOARD_RUN_CONFIG_SCHEMA, getTriggerDefinition, getTriggerName, getTriggerPresentation, isTriggerVisible, PLATFORM_EMAIL_DOMAIN, triggerCatalog, triggerDefinitions, } from "./triggers/index.js";
@@ -1,4 +1,3 @@
1
- import { airtableService } from "../catalog.js";
2
1
  const AIRTABLE_ACCOUNT = {
3
2
  connectionOptions: [
4
3
  {
@@ -10,7 +9,7 @@ const AIRTABLE_ACCOUNT = {
10
9
  ],
11
10
  },
12
11
  ],
13
- serviceId: airtableService.id,
12
+ serviceId: "airtable",
14
13
  };
15
14
  export const airtableTriggerDefinitions = {
16
15
  airtableRecordCreated: {
@@ -1,11 +1,10 @@
1
- import { asanaService } from "../catalog.js";
2
1
  const ASANA_ACCOUNT = {
3
2
  connectionOptions: [
4
3
  {
5
4
  requiredScopes: [],
6
5
  },
7
6
  ],
8
- serviceId: asanaService.id,
7
+ serviceId: "asana",
9
8
  };
10
9
  export const asanaTriggerDefinitions = {
11
10
  asanaCommentAdded: {
@@ -1,11 +1,10 @@
1
- import { brevoService } from "../catalog.js";
2
1
  const BREVO_ACCOUNT = {
3
2
  connectionOptions: [
4
3
  {
5
4
  requiredScopes: [],
6
5
  },
7
6
  ],
8
- serviceId: brevoService.id,
7
+ serviceId: "brevo",
9
8
  };
10
9
  export const brevoTriggerDefinitions = {
11
10
  brevoTransactionalBlocked: {
@@ -0,0 +1,374 @@
1
+ import * as z from "zod/mini";
2
+ export declare const DASHBOARD_RUN_CONFIG_SCHEMA: z.ZodMiniObject<{
3
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
4
+ fields: z.ZodMiniPrefault<z.ZodMiniArray<z.ZodMiniPipe<z.ZodMiniDiscriminatedUnion<[z.ZodMiniObject<{
5
+ defaultValue: z.ZodMiniOptional<z.ZodMiniString<string>>;
6
+ maxLength: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
7
+ minLength: z.ZodMiniOptional<z.ZodMiniNumberFormat>;
8
+ placeholder: z.ZodMiniOptional<z.ZodMiniString<string>>;
9
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
10
+ type: z.ZodMiniEnum<{
11
+ email: "email";
12
+ text: "text";
13
+ url: "url";
14
+ phone: "phone";
15
+ textarea: "textarea";
16
+ }>;
17
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
18
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
19
+ name: z.ZodMiniString<string>;
20
+ }, z.core.$strip>, z.ZodMiniObject<{
21
+ defaultValue: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
22
+ max: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
23
+ min: z.ZodMiniOptional<z.ZodMiniNumber<number>>;
24
+ placeholder: z.ZodMiniOptional<z.ZodMiniString<string>>;
25
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
26
+ step: z.ZodMiniPrefault<z.ZodMiniNumber<number>>;
27
+ type: z.ZodMiniLiteral<"number">;
28
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
29
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
30
+ name: z.ZodMiniString<string>;
31
+ }, z.core.$strip>, z.ZodMiniObject<{
32
+ defaultValue: z.ZodMiniOptional<z.iso.ZodMiniISODate>;
33
+ max: z.ZodMiniOptional<z.iso.ZodMiniISODate>;
34
+ min: z.ZodMiniOptional<z.iso.ZodMiniISODate>;
35
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
36
+ step: z.ZodMiniPrefault<z.ZodMiniNumberFormat>;
37
+ type: z.ZodMiniLiteral<"date">;
38
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
39
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
40
+ name: z.ZodMiniString<string>;
41
+ }, z.core.$strip>, z.ZodMiniObject<{
42
+ defaultValue: z.ZodMiniOptional<z.iso.ZodMiniISODateTime>;
43
+ max: z.ZodMiniOptional<z.iso.ZodMiniISODateTime>;
44
+ min: z.ZodMiniOptional<z.iso.ZodMiniISODateTime>;
45
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
46
+ step: z.ZodMiniPrefault<z.ZodMiniNumber<number>>;
47
+ type: z.ZodMiniLiteral<"datetime">;
48
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
49
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
50
+ name: z.ZodMiniString<string>;
51
+ }, z.core.$strip>, z.ZodMiniObject<{
52
+ type: z.ZodMiniLiteral<"select">;
53
+ defaultValue: z.ZodMiniOptional<z.ZodMiniString<string>>;
54
+ options: z.ZodMiniArray<z.ZodMiniObject<{
55
+ label: z.ZodMiniString<string>;
56
+ value: z.ZodMiniString<string>;
57
+ }, z.core.$strip>>;
58
+ placeholder: z.ZodMiniOptional<z.ZodMiniString<string>>;
59
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
60
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
61
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
62
+ name: z.ZodMiniString<string>;
63
+ }, z.core.$strip>, z.ZodMiniObject<{
64
+ type: z.ZodMiniLiteral<"radio">;
65
+ defaultValue: z.ZodMiniOptional<z.ZodMiniString<string>>;
66
+ options: z.ZodMiniArray<z.ZodMiniObject<{
67
+ label: z.ZodMiniString<string>;
68
+ value: z.ZodMiniString<string>;
69
+ }, z.core.$strip>>;
70
+ placeholder: z.ZodMiniOptional<z.ZodMiniString<string>>;
71
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
72
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
73
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
74
+ name: z.ZodMiniString<string>;
75
+ }, z.core.$strip>, z.ZodMiniObject<{
76
+ defaultValue: z.ZodMiniOptional<z.ZodMiniArray<z.ZodMiniString<string>>>;
77
+ options: z.ZodMiniArray<z.ZodMiniObject<{
78
+ label: z.ZodMiniString<string>;
79
+ value: z.ZodMiniString<string>;
80
+ }, z.core.$strip>>;
81
+ placeholder: z.ZodMiniOptional<z.ZodMiniString<string>>;
82
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
83
+ type: z.ZodMiniLiteral<"multi-select">;
84
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
85
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
86
+ name: z.ZodMiniString<string>;
87
+ }, z.core.$strip>, z.ZodMiniObject<{
88
+ defaultValue: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
89
+ required: z.ZodMiniPrefault<z.ZodMiniBoolean<boolean>>;
90
+ type: z.ZodMiniLiteral<"checkbox">;
91
+ description: z.ZodMiniOptional<z.ZodMiniString<string>>;
92
+ label: z.ZodMiniOptional<z.ZodMiniString<string>>;
93
+ name: z.ZodMiniString<string>;
94
+ }, z.core.$strip>], "type">, z.ZodMiniTransform<{
95
+ label: string;
96
+ required: boolean;
97
+ type: "email" | "text" | "url" | "phone" | "textarea";
98
+ name: string;
99
+ defaultValue?: string | undefined;
100
+ maxLength?: number | undefined;
101
+ minLength?: number | undefined;
102
+ placeholder?: string | undefined;
103
+ description?: string | undefined;
104
+ } | {
105
+ label: string;
106
+ required: boolean;
107
+ step: number;
108
+ type: "number";
109
+ name: string;
110
+ defaultValue?: number | undefined;
111
+ max?: number | undefined;
112
+ min?: number | undefined;
113
+ placeholder?: string | undefined;
114
+ description?: string | undefined;
115
+ } | {
116
+ label: string;
117
+ required: boolean;
118
+ step: number;
119
+ type: "date";
120
+ name: string;
121
+ defaultValue?: string | undefined;
122
+ max?: string | undefined;
123
+ min?: string | undefined;
124
+ description?: string | undefined;
125
+ } | {
126
+ label: string;
127
+ required: boolean;
128
+ step: number;
129
+ type: "datetime";
130
+ name: string;
131
+ defaultValue?: string | undefined;
132
+ max?: string | undefined;
133
+ min?: string | undefined;
134
+ description?: string | undefined;
135
+ } | {
136
+ label: string;
137
+ type: "select";
138
+ options: {
139
+ label: string;
140
+ value: string;
141
+ }[];
142
+ required: boolean;
143
+ name: string;
144
+ defaultValue?: string | undefined;
145
+ placeholder?: string | undefined;
146
+ description?: string | undefined;
147
+ } | {
148
+ label: string;
149
+ type: "radio";
150
+ options: {
151
+ label: string;
152
+ value: string;
153
+ }[];
154
+ required: boolean;
155
+ name: string;
156
+ defaultValue?: string | undefined;
157
+ placeholder?: string | undefined;
158
+ description?: string | undefined;
159
+ } | {
160
+ label: string;
161
+ options: {
162
+ label: string;
163
+ value: string;
164
+ }[];
165
+ required: boolean;
166
+ type: "multi-select";
167
+ name: string;
168
+ defaultValue?: string[] | undefined;
169
+ placeholder?: string | undefined;
170
+ description?: string | undefined;
171
+ } | {
172
+ label: string;
173
+ defaultValue: boolean;
174
+ required: boolean;
175
+ type: "checkbox";
176
+ name: string;
177
+ description?: string | undefined;
178
+ }, {
179
+ required: boolean;
180
+ type: "email" | "text" | "url" | "phone" | "textarea";
181
+ name: string;
182
+ defaultValue?: string | undefined;
183
+ maxLength?: number | undefined;
184
+ minLength?: number | undefined;
185
+ placeholder?: string | undefined;
186
+ description?: string | undefined;
187
+ label?: string | undefined;
188
+ } | {
189
+ required: boolean;
190
+ step: number;
191
+ type: "number";
192
+ name: string;
193
+ defaultValue?: number | undefined;
194
+ max?: number | undefined;
195
+ min?: number | undefined;
196
+ placeholder?: string | undefined;
197
+ description?: string | undefined;
198
+ label?: string | undefined;
199
+ } | {
200
+ required: boolean;
201
+ step: number;
202
+ type: "date";
203
+ name: string;
204
+ defaultValue?: string | undefined;
205
+ max?: string | undefined;
206
+ min?: string | undefined;
207
+ description?: string | undefined;
208
+ label?: string | undefined;
209
+ } | {
210
+ required: boolean;
211
+ step: number;
212
+ type: "datetime";
213
+ name: string;
214
+ defaultValue?: string | undefined;
215
+ max?: string | undefined;
216
+ min?: string | undefined;
217
+ description?: string | undefined;
218
+ label?: string | undefined;
219
+ } | {
220
+ type: "select";
221
+ options: {
222
+ label: string;
223
+ value: string;
224
+ }[];
225
+ required: boolean;
226
+ name: string;
227
+ defaultValue?: string | undefined;
228
+ placeholder?: string | undefined;
229
+ description?: string | undefined;
230
+ label?: string | undefined;
231
+ } | {
232
+ type: "radio";
233
+ options: {
234
+ label: string;
235
+ value: string;
236
+ }[];
237
+ required: boolean;
238
+ name: string;
239
+ defaultValue?: string | undefined;
240
+ placeholder?: string | undefined;
241
+ description?: string | undefined;
242
+ label?: string | undefined;
243
+ } | {
244
+ options: {
245
+ label: string;
246
+ value: string;
247
+ }[];
248
+ required: boolean;
249
+ type: "multi-select";
250
+ name: string;
251
+ defaultValue?: string[] | undefined;
252
+ placeholder?: string | undefined;
253
+ description?: string | undefined;
254
+ label?: string | undefined;
255
+ } | {
256
+ defaultValue: boolean;
257
+ required: boolean;
258
+ type: "checkbox";
259
+ name: string;
260
+ description?: string | undefined;
261
+ label?: string | undefined;
262
+ }>>>>;
263
+ submitLabel: z.ZodMiniPrefault<z.ZodMiniString<string>>;
264
+ title: z.ZodMiniString<string>;
265
+ }, z.core.$strip>;
266
+ export declare const dashboardRunTriggerDefinition: {
267
+ readonly getDetails: ({ config }: import("..").TriggerPresentationContext) => {
268
+ label: string;
269
+ value: string;
270
+ }[];
271
+ readonly icon: "automation";
272
+ readonly name: "Dashboard run";
273
+ readonly type: "dashboard.run";
274
+ };
275
+ interface DashboardRunFieldBase {
276
+ /** Supporting text shown below the field. */
277
+ description?: string;
278
+ /** Visible field label. Inferred from `name` when omitted. */
279
+ label?: string;
280
+ /** Property name used in submitted trigger data. */
281
+ name: string;
282
+ /** Whether the form must contain a value. Defaults to true. */
283
+ required?: boolean;
284
+ }
285
+ export type DashboardRunField = (DashboardRunFieldBase & {
286
+ defaultValue?: string;
287
+ maxLength?: number;
288
+ minLength?: number;
289
+ placeholder?: string;
290
+ type: "email" | "phone" | "text" | "textarea" | "url";
291
+ }) | (DashboardRunFieldBase & {
292
+ defaultValue?: number;
293
+ max?: number;
294
+ min?: number;
295
+ placeholder?: string;
296
+ /** Increment used by the number input. Defaults to 1. */
297
+ step?: number;
298
+ type: "number";
299
+ }) | (DashboardRunFieldBase & {
300
+ /** Initial local date in `YYYY-MM-DD` format. */
301
+ defaultValue?: string;
302
+ max?: string;
303
+ min?: string;
304
+ /** Allowed increment in days. Defaults to 1. */
305
+ step?: number;
306
+ type: "date";
307
+ }) | (DashboardRunFieldBase & {
308
+ /** Initial local date and time in `YYYY-MM-DDTHH:mm` format. */
309
+ defaultValue?: string;
310
+ max?: string;
311
+ min?: string;
312
+ /** Allowed increment in seconds. Defaults to 60. */
313
+ step?: number;
314
+ type: "datetime";
315
+ }) | (DashboardRunFieldBase & {
316
+ defaultValue?: string;
317
+ options: readonly {
318
+ label: string;
319
+ value: string;
320
+ }[];
321
+ placeholder?: string;
322
+ type: "select";
323
+ }) | (DashboardRunFieldBase & {
324
+ defaultValue?: string;
325
+ options: readonly {
326
+ label: string;
327
+ value: string;
328
+ }[];
329
+ type: "radio";
330
+ }) | (DashboardRunFieldBase & {
331
+ defaultValue?: readonly string[];
332
+ options: readonly {
333
+ label: string;
334
+ value: string;
335
+ }[];
336
+ placeholder?: string;
337
+ type: "multi-select";
338
+ }) | (DashboardRunFieldBase & {
339
+ /** Initial checked state. Defaults to false. */
340
+ defaultValue?: boolean;
341
+ /** Whether the checkbox must be checked. Defaults to false. */
342
+ required?: boolean;
343
+ type: "checkbox";
344
+ });
345
+ export interface DashboardRunConfig<TFields extends readonly DashboardRunField[] = readonly DashboardRunField[]> {
346
+ /** Supporting text shown below the form title. */
347
+ description?: string;
348
+ /** Ordered fields. Omit to run immediately. */
349
+ fields?: TFields;
350
+ /** Submit button text. Defaults to "Run". */
351
+ submitLabel?: string;
352
+ /** Form heading. */
353
+ title: string;
354
+ }
355
+ export interface DashboardRunEndpointOptions {
356
+ appOrigin: string;
357
+ automationId: string;
358
+ hookSlot: number;
359
+ scopePath?: readonly number[];
360
+ }
361
+ /**
362
+ * Returns the organization-authenticated submission endpoint for one dashboard
363
+ * run.
364
+ *
365
+ * @param options - Public origin and trigger identity.
366
+ */
367
+ export declare function getDashboardRunEndpoint(options: DashboardRunEndpointOptions): string;
368
+ /**
369
+ * Returns the durable endpoint identity for one dashboard run trigger.
370
+ *
371
+ * @param options - Trigger and owning automation identity.
372
+ */
373
+ export declare function getDashboardRunEndpointKey(options: Omit<DashboardRunEndpointOptions, "appOrigin">): string;
374
+ export {};