@octonodes/sdk 0.0.3 → 0.1.5

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 (129) hide show
  1. package/PLUGINS.md +265 -0
  2. package/README.md +107 -9
  3. package/dist/constants.d.ts +1 -0
  4. package/dist/constants.d.ts.map +1 -1
  5. package/dist/constants.js +2 -1
  6. package/dist/constants.js.map +1 -1
  7. package/dist/gen/index.d.ts +2 -2
  8. package/dist/gen/index.d.ts.map +1 -1
  9. package/dist/gen/index.js +4 -3
  10. package/dist/gen/index.js.map +1 -1
  11. package/dist/gen/sdk.gen.d.ts +9 -1
  12. package/dist/gen/sdk.gen.d.ts.map +1 -1
  13. package/dist/gen/sdk.gen.js +21 -3
  14. package/dist/gen/sdk.gen.js.map +1 -1
  15. package/dist/gen/types.gen.d.ts +379 -1
  16. package/dist/gen/types.gen.d.ts.map +1 -1
  17. package/dist/index.d.ts +1 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +2 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/plugins/index.d.ts +2 -0
  22. package/dist/plugins/index.d.ts.map +1 -0
  23. package/dist/plugins/index.js +19 -0
  24. package/dist/plugins/index.js.map +1 -0
  25. package/dist/plugins/schema/constants.d.ts +33 -0
  26. package/dist/plugins/schema/constants.d.ts.map +1 -0
  27. package/dist/plugins/schema/constants.js +207 -0
  28. package/dist/plugins/schema/constants.js.map +1 -0
  29. package/dist/plugins/schema/icons.d.ts +5 -0
  30. package/dist/plugins/schema/icons.d.ts.map +1 -0
  31. package/dist/plugins/schema/icons.js +62 -0
  32. package/dist/plugins/schema/icons.js.map +1 -0
  33. package/dist/plugins/schema/ipc-envelope.d.ts +923 -0
  34. package/dist/plugins/schema/ipc-envelope.d.ts.map +1 -0
  35. package/dist/plugins/schema/ipc-envelope.js +210 -0
  36. package/dist/plugins/schema/ipc-envelope.js.map +1 -0
  37. package/dist/plugins/schema/plugin-sdk/index.d.ts +5 -0
  38. package/dist/plugins/schema/plugin-sdk/index.d.ts.map +1 -0
  39. package/dist/plugins/schema/plugin-sdk/index.js +25 -0
  40. package/dist/plugins/schema/plugin-sdk/index.js.map +1 -0
  41. package/dist/plugins/schema/plugin.d.ts +808 -0
  42. package/dist/plugins/schema/plugin.d.ts.map +1 -0
  43. package/dist/plugins/schema/plugin.js +196 -0
  44. package/dist/plugins/schema/plugin.js.map +1 -0
  45. package/dist/plugins/sdk/define-node.d.ts +103 -0
  46. package/dist/plugins/sdk/define-node.d.ts.map +1 -0
  47. package/dist/plugins/sdk/define-node.js +58 -0
  48. package/dist/plugins/sdk/define-node.js.map +1 -0
  49. package/dist/plugins/sdk/definitions/compiler/catalog.d.ts +3 -0
  50. package/dist/plugins/sdk/definitions/compiler/catalog.d.ts.map +1 -0
  51. package/dist/plugins/sdk/definitions/compiler/catalog.js +133 -0
  52. package/dist/plugins/sdk/definitions/compiler/catalog.js.map +1 -0
  53. package/dist/plugins/sdk/definitions/compiler/constants.d.ts +6 -0
  54. package/dist/plugins/sdk/definitions/compiler/constants.d.ts.map +1 -0
  55. package/dist/plugins/sdk/definitions/compiler/constants.js +10 -0
  56. package/dist/plugins/sdk/definitions/compiler/constants.js.map +1 -0
  57. package/dist/plugins/sdk/definitions/compiler/index.d.ts +7 -0
  58. package/dist/plugins/sdk/definitions/compiler/index.d.ts.map +1 -0
  59. package/dist/plugins/sdk/definitions/compiler/index.js +411 -0
  60. package/dist/plugins/sdk/definitions/compiler/index.js.map +1 -0
  61. package/dist/plugins/sdk/definitions/compiler/literals.d.ts +5 -0
  62. package/dist/plugins/sdk/definitions/compiler/literals.d.ts.map +1 -0
  63. package/dist/plugins/sdk/definitions/compiler/literals.js +78 -0
  64. package/dist/plugins/sdk/definitions/compiler/literals.js.map +1 -0
  65. package/dist/plugins/sdk/definitions/compiler/schemas.d.ts +4 -0
  66. package/dist/plugins/sdk/definitions/compiler/schemas.d.ts.map +1 -0
  67. package/dist/plugins/sdk/definitions/compiler/schemas.js +95 -0
  68. package/dist/plugins/sdk/definitions/compiler/schemas.js.map +1 -0
  69. package/dist/plugins/sdk/definitions/compiler/types.d.ts +20 -0
  70. package/dist/plugins/sdk/definitions/compiler/types.d.ts.map +1 -0
  71. package/dist/plugins/sdk/definitions/compiler/types.js +3 -0
  72. package/dist/plugins/sdk/definitions/compiler/types.js.map +1 -0
  73. package/dist/plugins/sdk/definitions/index.d.ts +7 -0
  74. package/dist/plugins/sdk/definitions/index.d.ts.map +1 -0
  75. package/dist/plugins/sdk/definitions/index.js +16 -0
  76. package/dist/plugins/sdk/definitions/index.js.map +1 -0
  77. package/dist/plugins/sdk/definitions/npm/emit/js.d.ts +4 -0
  78. package/dist/plugins/sdk/definitions/npm/emit/js.d.ts.map +1 -0
  79. package/dist/plugins/sdk/definitions/npm/emit/js.js +190 -0
  80. package/dist/plugins/sdk/definitions/npm/emit/js.js.map +1 -0
  81. package/dist/plugins/sdk/definitions/npm/types.d.ts +63 -0
  82. package/dist/plugins/sdk/definitions/npm/types.d.ts.map +1 -0
  83. package/dist/plugins/sdk/definitions/npm/types.js +3 -0
  84. package/dist/plugins/sdk/definitions/npm/types.js.map +1 -0
  85. package/dist/plugins/sdk/definitions/types.d.ts +43 -0
  86. package/dist/plugins/sdk/definitions/types.d.ts.map +1 -0
  87. package/dist/plugins/sdk/definitions/types.js +3 -0
  88. package/dist/plugins/sdk/definitions/types.js.map +1 -0
  89. package/dist/plugins/sdk/json-schema.d.ts +17 -0
  90. package/dist/plugins/sdk/json-schema.d.ts.map +1 -0
  91. package/dist/plugins/sdk/json-schema.js +79 -0
  92. package/dist/plugins/sdk/json-schema.js.map +1 -0
  93. package/dist/plugins/sdk/nodes/index.d.ts +5 -0
  94. package/dist/plugins/sdk/nodes/index.d.ts.map +1 -0
  95. package/dist/plugins/sdk/nodes/index.js +12 -0
  96. package/dist/plugins/sdk/nodes/index.js.map +1 -0
  97. package/dist/plugins/sdk/plugin/index.d.ts +3 -0
  98. package/dist/plugins/sdk/plugin/index.d.ts.map +1 -0
  99. package/dist/plugins/sdk/plugin/index.js +8 -0
  100. package/dist/plugins/sdk/plugin/index.js.map +1 -0
  101. package/dist/plugins/sdk/plugin.d.ts +7 -0
  102. package/dist/plugins/sdk/plugin.d.ts.map +1 -0
  103. package/dist/plugins/sdk/plugin.js +74 -0
  104. package/dist/plugins/sdk/plugin.js.map +1 -0
  105. package/dist/plugins/sdk/plugin.types.d.ts +15 -0
  106. package/dist/plugins/sdk/plugin.types.d.ts.map +1 -0
  107. package/dist/plugins/sdk/plugin.types.js +3 -0
  108. package/dist/plugins/sdk/plugin.types.js.map +1 -0
  109. package/dist/plugins/sdk/plugins/define-node.d.ts +29 -0
  110. package/dist/plugins/sdk/plugins/define-node.d.ts.map +1 -0
  111. package/dist/plugins/sdk/plugins/define-node.js +16 -0
  112. package/dist/plugins/sdk/plugins/define-node.js.map +1 -0
  113. package/dist/plugins/sdk/plugins/index.d.ts +10 -0
  114. package/dist/plugins/sdk/plugins/index.d.ts.map +1 -0
  115. package/dist/plugins/sdk/plugins/index.js +23 -0
  116. package/dist/plugins/sdk/plugins/index.js.map +1 -0
  117. package/dist/plugins/sdk/plugins/types.d.ts +34 -0
  118. package/dist/plugins/sdk/plugins/types.d.ts.map +1 -0
  119. package/dist/plugins/sdk/plugins/types.js +3 -0
  120. package/dist/plugins/sdk/plugins/types.js.map +1 -0
  121. package/dist/plugins/sdk/project/index.d.ts +5 -0
  122. package/dist/plugins/sdk/project/index.d.ts.map +1 -0
  123. package/dist/plugins/sdk/project/index.js +10 -0
  124. package/dist/plugins/sdk/project/index.js.map +1 -0
  125. package/dist/plugins/sdk/runner.d.ts +36 -0
  126. package/dist/plugins/sdk/runner.d.ts.map +1 -0
  127. package/dist/plugins/sdk/runner.js +324 -0
  128. package/dist/plugins/sdk/runner.js.map +1 -0
  129. package/package.json +65 -5
@@ -0,0 +1,808 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * A plugin's distribution scope — who may discover and install it. `user` is
4
+ * private to its publisher in the hosted marketplace; group/org/public widen
5
+ * visibility. Local folder installs do not publish and remain local.
6
+ */
7
+ export declare const PluginScope: z.ZodEnum<["user", "group", "org", "public"]>;
8
+ export type PluginScope = z.infer<typeof PluginScope>;
9
+ export declare const PluginUiTarget: z.ZodEnum<["node.inspector.inputs"]>;
10
+ export type PluginUiTarget = z.infer<typeof PluginUiTarget>;
11
+ export declare const PLUGIN_UI_BUNDLE_MAX_BYTES: number;
12
+ export declare const PluginNodeUi: z.ZodObject<{
13
+ apiVersion: z.ZodLiteral<"1">;
14
+ renderers: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodObject<{
15
+ label: z.ZodString;
16
+ targets: z.ZodRecord<z.ZodEnum<["node.inspector.inputs"]>, z.ZodEffects<z.ZodString, string, string>>;
17
+ }, "strict", z.ZodTypeAny, {
18
+ label: string;
19
+ targets: Partial<Record<"node.inspector.inputs", string>>;
20
+ }, {
21
+ label: string;
22
+ targets: Partial<Record<"node.inspector.inputs", string>>;
23
+ }>>, Record<string, {
24
+ label: string;
25
+ targets: Partial<Record<"node.inspector.inputs", string>>;
26
+ }>, Record<string, {
27
+ label: string;
28
+ targets: Partial<Record<"node.inspector.inputs", string>>;
29
+ }>>;
30
+ }, "strict", z.ZodTypeAny, {
31
+ apiVersion: "1";
32
+ renderers: Record<string, {
33
+ label: string;
34
+ targets: Partial<Record<"node.inspector.inputs", string>>;
35
+ }>;
36
+ }, {
37
+ apiVersion: "1";
38
+ renderers: Record<string, {
39
+ label: string;
40
+ targets: Partial<Record<"node.inspector.inputs", string>>;
41
+ }>;
42
+ }>;
43
+ export type PluginNodeUi = z.infer<typeof PluginNodeUi>;
44
+ /**
45
+ * Scopes supported by the hosted marketplace.
46
+ */
47
+ export type MarketplaceScope = PluginScope;
48
+ /** Build an upstream SDK client from connection fields, never from public node inputs. */
49
+ export declare const NpmClientBinding: z.ZodObject<{
50
+ module: z.ZodEffects<z.ZodString, string, string>;
51
+ export: z.ZodString;
52
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
53
+ env: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodString, string, string>, z.ZodString>>;
54
+ }, "strict", z.ZodTypeAny, {
55
+ module: string;
56
+ export: string;
57
+ options?: Record<string, unknown> | undefined;
58
+ env?: Record<string, string> | undefined;
59
+ }, {
60
+ module: string;
61
+ export: string;
62
+ options?: Record<string, unknown> | undefined;
63
+ env?: Record<string, string> | undefined;
64
+ }>;
65
+ export type NpmClientBinding = z.infer<typeof NpmClientBinding>;
66
+ /**
67
+ * One node contributed by a plugin. Unlike a project node (whose signature is
68
+ * discovered by `octonode scan`), a plugin node declares its contract directly
69
+ * in the manifest — the plugin author owns it. `command` is resolved relative
70
+ * to the plugin folder, so a plugin is a self-contained, relocatable bundle.
71
+ */
72
+ export declare const PluginNode: z.ZodObject<{
73
+ id: z.ZodString;
74
+ /** The command the engine spawns, relative to the plugin folder. */
75
+ command: z.ZodString;
76
+ language: z.ZodOptional<z.ZodString>;
77
+ label: z.ZodOptional<z.ZodString>;
78
+ symbol: z.ZodOptional<z.ZodString>;
79
+ description: z.ZodOptional<z.ZodString>;
80
+ icon: z.ZodOptional<z.ZodEnum<["arrow-up-down", "binary", "bomb", "boxes", "braces", "calculator", "calendar", "camera", "clock", "code", "copy-x", "database", "dices", "filter", "flag", "flask", "function", "git-branch", "git-merge", "group", "hook", "list-filter", "merge", "octagon-x", "package", "package-x", "pencil", "play", "regex", "repeat", "replace", "ruler", "scan-eye", "scissors", "search", "server-cog", "settings", "sigma", "split", "terminal", "test-tube", "text-cursor-input", "ticket", "truck", "type", "typescript", "ungroup", "variable", "wand", "wave", "webhook", "workflow", "x"]>>;
81
+ trigger: z.ZodOptional<z.ZodBoolean>;
82
+ inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
83
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
84
+ /** Names of environment variables / secrets this node expects to be injected. */
85
+ env: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
86
+ connections: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
87
+ defaults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
88
+ bindings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
89
+ module: z.ZodEffects<z.ZodString, string, string>;
90
+ export: z.ZodString;
91
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
92
+ env: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodString, string, string>, z.ZodString>>;
93
+ }, "strict", z.ZodTypeAny, {
94
+ module: string;
95
+ export: string;
96
+ options?: Record<string, unknown> | undefined;
97
+ env?: Record<string, string> | undefined;
98
+ }, {
99
+ module: string;
100
+ export: string;
101
+ options?: Record<string, unknown> | undefined;
102
+ env?: Record<string, string> | undefined;
103
+ }>>>;
104
+ ui: z.ZodOptional<z.ZodObject<{
105
+ apiVersion: z.ZodLiteral<"1">;
106
+ renderers: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodObject<{
107
+ label: z.ZodString;
108
+ targets: z.ZodRecord<z.ZodEnum<["node.inspector.inputs"]>, z.ZodEffects<z.ZodString, string, string>>;
109
+ }, "strict", z.ZodTypeAny, {
110
+ label: string;
111
+ targets: Partial<Record<"node.inspector.inputs", string>>;
112
+ }, {
113
+ label: string;
114
+ targets: Partial<Record<"node.inspector.inputs", string>>;
115
+ }>>, Record<string, {
116
+ label: string;
117
+ targets: Partial<Record<"node.inspector.inputs", string>>;
118
+ }>, Record<string, {
119
+ label: string;
120
+ targets: Partial<Record<"node.inspector.inputs", string>>;
121
+ }>>;
122
+ }, "strict", z.ZodTypeAny, {
123
+ apiVersion: "1";
124
+ renderers: Record<string, {
125
+ label: string;
126
+ targets: Partial<Record<"node.inspector.inputs", string>>;
127
+ }>;
128
+ }, {
129
+ apiVersion: "1";
130
+ renderers: Record<string, {
131
+ label: string;
132
+ targets: Partial<Record<"node.inspector.inputs", string>>;
133
+ }>;
134
+ }>>;
135
+ }, "strip", z.ZodTypeAny, {
136
+ id: string;
137
+ command: string;
138
+ symbol?: string | undefined;
139
+ label?: string | undefined;
140
+ env?: string[] | undefined;
141
+ inputs?: Record<string, unknown> | undefined;
142
+ outputs?: Record<string, unknown> | undefined;
143
+ description?: string | undefined;
144
+ defaults?: Record<string, unknown> | undefined;
145
+ language?: string | undefined;
146
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
147
+ trigger?: boolean | undefined;
148
+ connections?: string[] | undefined;
149
+ bindings?: Record<string, {
150
+ module: string;
151
+ export: string;
152
+ options?: Record<string, unknown> | undefined;
153
+ env?: Record<string, string> | undefined;
154
+ }> | undefined;
155
+ ui?: {
156
+ apiVersion: "1";
157
+ renderers: Record<string, {
158
+ label: string;
159
+ targets: Partial<Record<"node.inspector.inputs", string>>;
160
+ }>;
161
+ } | undefined;
162
+ }, {
163
+ id: string;
164
+ command: string;
165
+ symbol?: string | undefined;
166
+ label?: string | undefined;
167
+ env?: string[] | undefined;
168
+ inputs?: Record<string, unknown> | undefined;
169
+ outputs?: Record<string, unknown> | undefined;
170
+ description?: string | undefined;
171
+ defaults?: Record<string, unknown> | undefined;
172
+ language?: string | undefined;
173
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
174
+ trigger?: boolean | undefined;
175
+ connections?: string[] | undefined;
176
+ bindings?: Record<string, {
177
+ module: string;
178
+ export: string;
179
+ options?: Record<string, unknown> | undefined;
180
+ env?: Record<string, string> | undefined;
181
+ }> | undefined;
182
+ ui?: {
183
+ apiVersion: "1";
184
+ renderers: Record<string, {
185
+ label: string;
186
+ targets: Partial<Record<"node.inspector.inputs", string>>;
187
+ }>;
188
+ } | undefined;
189
+ }>;
190
+ export type PluginNode = z.infer<typeof PluginNode>;
191
+ /**
192
+ * A coarse capability the plugin needs at runtime. Shown on the install
193
+ * consent screen and enforced before a node is handed the resource.
194
+ */
195
+ export declare const PluginPermission: z.ZodObject<{
196
+ resource: z.ZodEnum<["project_data", "secrets", "network"]>;
197
+ access: z.ZodEnum<["read", "write", "outbound"]>;
198
+ }, "strip", z.ZodTypeAny, {
199
+ resource: "project_data" | "secrets" | "network";
200
+ access: "read" | "write" | "outbound";
201
+ }, {
202
+ resource: "project_data" | "secrets" | "network";
203
+ access: "read" | "write" | "outbound";
204
+ }>;
205
+ export type PluginPermission = z.infer<typeof PluginPermission>;
206
+ /** Discovery/marketplace metadata (used by the Studio Marketplace in Phase 14). */
207
+ export declare const PluginIntegration: z.ZodObject<{
208
+ category: z.ZodOptional<z.ZodString>;
209
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
210
+ /** Secrets/env the integration needs to authenticate (e.g. ["JIRA_TOKEN"]). */
211
+ auth: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
212
+ /** Original npm dependency used by generated npm nodes. */
213
+ npm: z.ZodOptional<z.ZodObject<{
214
+ package: z.ZodString;
215
+ version: z.ZodString;
216
+ spec: z.ZodString;
217
+ }, "strip", z.ZodTypeAny, {
218
+ package: string;
219
+ version: string;
220
+ spec: string;
221
+ }, {
222
+ package: string;
223
+ version: string;
224
+ spec: string;
225
+ }>>;
226
+ }, "strip", z.ZodTypeAny, {
227
+ tags: string[];
228
+ npm?: {
229
+ package: string;
230
+ version: string;
231
+ spec: string;
232
+ } | undefined;
233
+ auth?: string[] | undefined;
234
+ category?: string | undefined;
235
+ }, {
236
+ npm?: {
237
+ package: string;
238
+ version: string;
239
+ spec: string;
240
+ } | undefined;
241
+ auth?: string[] | undefined;
242
+ category?: string | undefined;
243
+ tags?: string[] | undefined;
244
+ }>;
245
+ export type PluginIntegration = z.infer<typeof PluginIntegration>;
246
+ /** Credential metadata only. Values are supplied by the installing user at runtime. */
247
+ export declare const PluginConnection: z.ZodObject<{
248
+ label: z.ZodString;
249
+ description: z.ZodOptional<z.ZodString>;
250
+ fields: z.ZodRecord<z.ZodString, z.ZodObject<{
251
+ label: z.ZodString;
252
+ description: z.ZodOptional<z.ZodString>;
253
+ secret: z.ZodDefault<z.ZodBoolean>;
254
+ required: z.ZodDefault<z.ZodBoolean>;
255
+ }, "strict", z.ZodTypeAny, {
256
+ label: string;
257
+ required: boolean;
258
+ secret: boolean;
259
+ description?: string | undefined;
260
+ }, {
261
+ label: string;
262
+ description?: string | undefined;
263
+ required?: boolean | undefined;
264
+ secret?: boolean | undefined;
265
+ }>>;
266
+ }, "strict", z.ZodTypeAny, {
267
+ label: string;
268
+ fields: Record<string, {
269
+ label: string;
270
+ required: boolean;
271
+ secret: boolean;
272
+ description?: string | undefined;
273
+ }>;
274
+ description?: string | undefined;
275
+ }, {
276
+ label: string;
277
+ fields: Record<string, {
278
+ label: string;
279
+ description?: string | undefined;
280
+ required?: boolean | undefined;
281
+ secret?: boolean | undefined;
282
+ }>;
283
+ description?: string | undefined;
284
+ }>;
285
+ export type PluginConnection = z.infer<typeof PluginConnection>;
286
+ /** The shared plugin contract used by the SDK, generators, and marketplace. */
287
+ export declare const PluginManifest: z.ZodEffects<z.ZodObject<{
288
+ schemaVersion: z.ZodDefault<z.ZodString>;
289
+ /** Stable plugin id; namespaces its nodes as `<id>/<nodeId>`. */
290
+ id: z.ZodString;
291
+ name: z.ZodString;
292
+ version: z.ZodString;
293
+ description: z.ZodOptional<z.ZodString>;
294
+ /** Implementation authority; absent on legacy artifacts. */
295
+ source: z.ZodOptional<z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
296
+ kind: z.ZodLiteral<"plugin">;
297
+ }, "strict", z.ZodTypeAny, {
298
+ kind: "plugin";
299
+ }, {
300
+ kind: "plugin";
301
+ }>, z.ZodObject<{
302
+ kind: z.ZodLiteral<"npm">;
303
+ package: z.ZodString;
304
+ version: z.ZodString;
305
+ }, "strict", z.ZodTypeAny, {
306
+ package: string;
307
+ kind: "npm";
308
+ version: string;
309
+ }, {
310
+ package: string;
311
+ kind: "npm";
312
+ version: string;
313
+ }>]>>;
314
+ icon: z.ZodOptional<z.ZodEnum<["arrow-up-down", "binary", "bomb", "boxes", "braces", "calculator", "calendar", "camera", "clock", "code", "copy-x", "database", "dices", "filter", "flag", "flask", "function", "git-branch", "git-merge", "group", "hook", "list-filter", "merge", "octagon-x", "package", "package-x", "pencil", "play", "regex", "repeat", "replace", "ruler", "scan-eye", "scissors", "search", "server-cog", "settings", "sigma", "split", "terminal", "test-tube", "text-cursor-input", "ticket", "truck", "type", "typescript", "ungroup", "variable", "wand", "wave", "webhook", "workflow", "x"]>>;
315
+ author: z.ZodOptional<z.ZodString>;
316
+ homepage: z.ZodOptional<z.ZodString>;
317
+ license: z.ZodOptional<z.ZodString>;
318
+ /** Distribution tiers this plugin may be discovered/installed from. Private by default. */
319
+ scope: z.ZodDefault<z.ZodArray<z.ZodEnum<["user", "group", "org", "public"]>, "many">>;
320
+ /** Coarse runtime capabilities the plugin requests; consented to at install. */
321
+ permissions: z.ZodDefault<z.ZodArray<z.ZodObject<{
322
+ resource: z.ZodEnum<["project_data", "secrets", "network"]>;
323
+ access: z.ZodEnum<["read", "write", "outbound"]>;
324
+ }, "strip", z.ZodTypeAny, {
325
+ resource: "project_data" | "secrets" | "network";
326
+ access: "read" | "write" | "outbound";
327
+ }, {
328
+ resource: "project_data" | "secrets" | "network";
329
+ access: "read" | "write" | "outbound";
330
+ }>, "many">>;
331
+ integration: z.ZodOptional<z.ZodObject<{
332
+ category: z.ZodOptional<z.ZodString>;
333
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
334
+ /** Secrets/env the integration needs to authenticate (e.g. ["JIRA_TOKEN"]). */
335
+ auth: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
336
+ /** Original npm dependency used by generated npm nodes. */
337
+ npm: z.ZodOptional<z.ZodObject<{
338
+ package: z.ZodString;
339
+ version: z.ZodString;
340
+ spec: z.ZodString;
341
+ }, "strip", z.ZodTypeAny, {
342
+ package: string;
343
+ version: string;
344
+ spec: string;
345
+ }, {
346
+ package: string;
347
+ version: string;
348
+ spec: string;
349
+ }>>;
350
+ }, "strip", z.ZodTypeAny, {
351
+ tags: string[];
352
+ npm?: {
353
+ package: string;
354
+ version: string;
355
+ spec: string;
356
+ } | undefined;
357
+ auth?: string[] | undefined;
358
+ category?: string | undefined;
359
+ }, {
360
+ npm?: {
361
+ package: string;
362
+ version: string;
363
+ spec: string;
364
+ } | undefined;
365
+ auth?: string[] | undefined;
366
+ category?: string | undefined;
367
+ tags?: string[] | undefined;
368
+ }>>;
369
+ connections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
370
+ label: z.ZodString;
371
+ description: z.ZodOptional<z.ZodString>;
372
+ fields: z.ZodRecord<z.ZodString, z.ZodObject<{
373
+ label: z.ZodString;
374
+ description: z.ZodOptional<z.ZodString>;
375
+ secret: z.ZodDefault<z.ZodBoolean>;
376
+ required: z.ZodDefault<z.ZodBoolean>;
377
+ }, "strict", z.ZodTypeAny, {
378
+ label: string;
379
+ required: boolean;
380
+ secret: boolean;
381
+ description?: string | undefined;
382
+ }, {
383
+ label: string;
384
+ description?: string | undefined;
385
+ required?: boolean | undefined;
386
+ secret?: boolean | undefined;
387
+ }>>;
388
+ }, "strict", z.ZodTypeAny, {
389
+ label: string;
390
+ fields: Record<string, {
391
+ label: string;
392
+ required: boolean;
393
+ secret: boolean;
394
+ description?: string | undefined;
395
+ }>;
396
+ description?: string | undefined;
397
+ }, {
398
+ label: string;
399
+ fields: Record<string, {
400
+ label: string;
401
+ description?: string | undefined;
402
+ required?: boolean | undefined;
403
+ secret?: boolean | undefined;
404
+ }>;
405
+ description?: string | undefined;
406
+ }>>>;
407
+ nodes: z.ZodDefault<z.ZodArray<z.ZodObject<{
408
+ id: z.ZodString;
409
+ /** The command the engine spawns, relative to the plugin folder. */
410
+ command: z.ZodString;
411
+ language: z.ZodOptional<z.ZodString>;
412
+ label: z.ZodOptional<z.ZodString>;
413
+ symbol: z.ZodOptional<z.ZodString>;
414
+ description: z.ZodOptional<z.ZodString>;
415
+ icon: z.ZodOptional<z.ZodEnum<["arrow-up-down", "binary", "bomb", "boxes", "braces", "calculator", "calendar", "camera", "clock", "code", "copy-x", "database", "dices", "filter", "flag", "flask", "function", "git-branch", "git-merge", "group", "hook", "list-filter", "merge", "octagon-x", "package", "package-x", "pencil", "play", "regex", "repeat", "replace", "ruler", "scan-eye", "scissors", "search", "server-cog", "settings", "sigma", "split", "terminal", "test-tube", "text-cursor-input", "ticket", "truck", "type", "typescript", "ungroup", "variable", "wand", "wave", "webhook", "workflow", "x"]>>;
416
+ trigger: z.ZodOptional<z.ZodBoolean>;
417
+ inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
418
+ outputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
419
+ /** Names of environment variables / secrets this node expects to be injected. */
420
+ env: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
421
+ connections: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
422
+ defaults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
423
+ bindings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
424
+ module: z.ZodEffects<z.ZodString, string, string>;
425
+ export: z.ZodString;
426
+ options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
427
+ env: z.ZodOptional<z.ZodRecord<z.ZodEffects<z.ZodString, string, string>, z.ZodString>>;
428
+ }, "strict", z.ZodTypeAny, {
429
+ module: string;
430
+ export: string;
431
+ options?: Record<string, unknown> | undefined;
432
+ env?: Record<string, string> | undefined;
433
+ }, {
434
+ module: string;
435
+ export: string;
436
+ options?: Record<string, unknown> | undefined;
437
+ env?: Record<string, string> | undefined;
438
+ }>>>;
439
+ ui: z.ZodOptional<z.ZodObject<{
440
+ apiVersion: z.ZodLiteral<"1">;
441
+ renderers: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodObject<{
442
+ label: z.ZodString;
443
+ targets: z.ZodRecord<z.ZodEnum<["node.inspector.inputs"]>, z.ZodEffects<z.ZodString, string, string>>;
444
+ }, "strict", z.ZodTypeAny, {
445
+ label: string;
446
+ targets: Partial<Record<"node.inspector.inputs", string>>;
447
+ }, {
448
+ label: string;
449
+ targets: Partial<Record<"node.inspector.inputs", string>>;
450
+ }>>, Record<string, {
451
+ label: string;
452
+ targets: Partial<Record<"node.inspector.inputs", string>>;
453
+ }>, Record<string, {
454
+ label: string;
455
+ targets: Partial<Record<"node.inspector.inputs", string>>;
456
+ }>>;
457
+ }, "strict", z.ZodTypeAny, {
458
+ apiVersion: "1";
459
+ renderers: Record<string, {
460
+ label: string;
461
+ targets: Partial<Record<"node.inspector.inputs", string>>;
462
+ }>;
463
+ }, {
464
+ apiVersion: "1";
465
+ renderers: Record<string, {
466
+ label: string;
467
+ targets: Partial<Record<"node.inspector.inputs", string>>;
468
+ }>;
469
+ }>>;
470
+ }, "strip", z.ZodTypeAny, {
471
+ id: string;
472
+ command: string;
473
+ symbol?: string | undefined;
474
+ label?: string | undefined;
475
+ env?: string[] | undefined;
476
+ inputs?: Record<string, unknown> | undefined;
477
+ outputs?: Record<string, unknown> | undefined;
478
+ description?: string | undefined;
479
+ defaults?: Record<string, unknown> | undefined;
480
+ language?: string | undefined;
481
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
482
+ trigger?: boolean | undefined;
483
+ connections?: string[] | undefined;
484
+ bindings?: Record<string, {
485
+ module: string;
486
+ export: string;
487
+ options?: Record<string, unknown> | undefined;
488
+ env?: Record<string, string> | undefined;
489
+ }> | undefined;
490
+ ui?: {
491
+ apiVersion: "1";
492
+ renderers: Record<string, {
493
+ label: string;
494
+ targets: Partial<Record<"node.inspector.inputs", string>>;
495
+ }>;
496
+ } | undefined;
497
+ }, {
498
+ id: string;
499
+ command: string;
500
+ symbol?: string | undefined;
501
+ label?: string | undefined;
502
+ env?: string[] | undefined;
503
+ inputs?: Record<string, unknown> | undefined;
504
+ outputs?: Record<string, unknown> | undefined;
505
+ description?: string | undefined;
506
+ defaults?: Record<string, unknown> | undefined;
507
+ language?: string | undefined;
508
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
509
+ trigger?: boolean | undefined;
510
+ connections?: string[] | undefined;
511
+ bindings?: Record<string, {
512
+ module: string;
513
+ export: string;
514
+ options?: Record<string, unknown> | undefined;
515
+ env?: Record<string, string> | undefined;
516
+ }> | undefined;
517
+ ui?: {
518
+ apiVersion: "1";
519
+ renderers: Record<string, {
520
+ label: string;
521
+ targets: Partial<Record<"node.inspector.inputs", string>>;
522
+ }>;
523
+ } | undefined;
524
+ }>, "many">>;
525
+ }, "strip", z.ZodTypeAny, {
526
+ nodes: {
527
+ id: string;
528
+ command: string;
529
+ symbol?: string | undefined;
530
+ label?: string | undefined;
531
+ env?: string[] | undefined;
532
+ inputs?: Record<string, unknown> | undefined;
533
+ outputs?: Record<string, unknown> | undefined;
534
+ description?: string | undefined;
535
+ defaults?: Record<string, unknown> | undefined;
536
+ language?: string | undefined;
537
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
538
+ trigger?: boolean | undefined;
539
+ connections?: string[] | undefined;
540
+ bindings?: Record<string, {
541
+ module: string;
542
+ export: string;
543
+ options?: Record<string, unknown> | undefined;
544
+ env?: Record<string, string> | undefined;
545
+ }> | undefined;
546
+ ui?: {
547
+ apiVersion: "1";
548
+ renderers: Record<string, {
549
+ label: string;
550
+ targets: Partial<Record<"node.inspector.inputs", string>>;
551
+ }>;
552
+ } | undefined;
553
+ }[];
554
+ name: string;
555
+ id: string;
556
+ scope: ("user" | "group" | "org" | "public")[];
557
+ version: string;
558
+ schemaVersion: string;
559
+ permissions: {
560
+ resource: "project_data" | "secrets" | "network";
561
+ access: "read" | "write" | "outbound";
562
+ }[];
563
+ source?: {
564
+ kind: "plugin";
565
+ } | {
566
+ package: string;
567
+ kind: "npm";
568
+ version: string;
569
+ } | undefined;
570
+ integration?: {
571
+ tags: string[];
572
+ npm?: {
573
+ package: string;
574
+ version: string;
575
+ spec: string;
576
+ } | undefined;
577
+ auth?: string[] | undefined;
578
+ category?: string | undefined;
579
+ } | undefined;
580
+ description?: string | undefined;
581
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
582
+ connections?: Record<string, {
583
+ label: string;
584
+ fields: Record<string, {
585
+ label: string;
586
+ required: boolean;
587
+ secret: boolean;
588
+ description?: string | undefined;
589
+ }>;
590
+ description?: string | undefined;
591
+ }> | undefined;
592
+ author?: string | undefined;
593
+ homepage?: string | undefined;
594
+ license?: string | undefined;
595
+ }, {
596
+ name: string;
597
+ id: string;
598
+ version: string;
599
+ nodes?: {
600
+ id: string;
601
+ command: string;
602
+ symbol?: string | undefined;
603
+ label?: string | undefined;
604
+ env?: string[] | undefined;
605
+ inputs?: Record<string, unknown> | undefined;
606
+ outputs?: Record<string, unknown> | undefined;
607
+ description?: string | undefined;
608
+ defaults?: Record<string, unknown> | undefined;
609
+ language?: string | undefined;
610
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
611
+ trigger?: boolean | undefined;
612
+ connections?: string[] | undefined;
613
+ bindings?: Record<string, {
614
+ module: string;
615
+ export: string;
616
+ options?: Record<string, unknown> | undefined;
617
+ env?: Record<string, string> | undefined;
618
+ }> | undefined;
619
+ ui?: {
620
+ apiVersion: "1";
621
+ renderers: Record<string, {
622
+ label: string;
623
+ targets: Partial<Record<"node.inspector.inputs", string>>;
624
+ }>;
625
+ } | undefined;
626
+ }[] | undefined;
627
+ source?: {
628
+ kind: "plugin";
629
+ } | {
630
+ package: string;
631
+ kind: "npm";
632
+ version: string;
633
+ } | undefined;
634
+ integration?: {
635
+ npm?: {
636
+ package: string;
637
+ version: string;
638
+ spec: string;
639
+ } | undefined;
640
+ auth?: string[] | undefined;
641
+ category?: string | undefined;
642
+ tags?: string[] | undefined;
643
+ } | undefined;
644
+ scope?: ("user" | "group" | "org" | "public")[] | undefined;
645
+ description?: string | undefined;
646
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
647
+ connections?: Record<string, {
648
+ label: string;
649
+ fields: Record<string, {
650
+ label: string;
651
+ description?: string | undefined;
652
+ required?: boolean | undefined;
653
+ secret?: boolean | undefined;
654
+ }>;
655
+ description?: string | undefined;
656
+ }> | undefined;
657
+ schemaVersion?: string | undefined;
658
+ author?: string | undefined;
659
+ homepage?: string | undefined;
660
+ license?: string | undefined;
661
+ permissions?: {
662
+ resource: "project_data" | "secrets" | "network";
663
+ access: "read" | "write" | "outbound";
664
+ }[] | undefined;
665
+ }>, {
666
+ nodes: {
667
+ id: string;
668
+ command: string;
669
+ symbol?: string | undefined;
670
+ label?: string | undefined;
671
+ env?: string[] | undefined;
672
+ inputs?: Record<string, unknown> | undefined;
673
+ outputs?: Record<string, unknown> | undefined;
674
+ description?: string | undefined;
675
+ defaults?: Record<string, unknown> | undefined;
676
+ language?: string | undefined;
677
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
678
+ trigger?: boolean | undefined;
679
+ connections?: string[] | undefined;
680
+ bindings?: Record<string, {
681
+ module: string;
682
+ export: string;
683
+ options?: Record<string, unknown> | undefined;
684
+ env?: Record<string, string> | undefined;
685
+ }> | undefined;
686
+ ui?: {
687
+ apiVersion: "1";
688
+ renderers: Record<string, {
689
+ label: string;
690
+ targets: Partial<Record<"node.inspector.inputs", string>>;
691
+ }>;
692
+ } | undefined;
693
+ }[];
694
+ name: string;
695
+ id: string;
696
+ scope: ("user" | "group" | "org" | "public")[];
697
+ version: string;
698
+ schemaVersion: string;
699
+ permissions: {
700
+ resource: "project_data" | "secrets" | "network";
701
+ access: "read" | "write" | "outbound";
702
+ }[];
703
+ source?: {
704
+ kind: "plugin";
705
+ } | {
706
+ package: string;
707
+ kind: "npm";
708
+ version: string;
709
+ } | undefined;
710
+ integration?: {
711
+ tags: string[];
712
+ npm?: {
713
+ package: string;
714
+ version: string;
715
+ spec: string;
716
+ } | undefined;
717
+ auth?: string[] | undefined;
718
+ category?: string | undefined;
719
+ } | undefined;
720
+ description?: string | undefined;
721
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
722
+ connections?: Record<string, {
723
+ label: string;
724
+ fields: Record<string, {
725
+ label: string;
726
+ required: boolean;
727
+ secret: boolean;
728
+ description?: string | undefined;
729
+ }>;
730
+ description?: string | undefined;
731
+ }> | undefined;
732
+ author?: string | undefined;
733
+ homepage?: string | undefined;
734
+ license?: string | undefined;
735
+ }, {
736
+ name: string;
737
+ id: string;
738
+ version: string;
739
+ nodes?: {
740
+ id: string;
741
+ command: string;
742
+ symbol?: string | undefined;
743
+ label?: string | undefined;
744
+ env?: string[] | undefined;
745
+ inputs?: Record<string, unknown> | undefined;
746
+ outputs?: Record<string, unknown> | undefined;
747
+ description?: string | undefined;
748
+ defaults?: Record<string, unknown> | undefined;
749
+ language?: string | undefined;
750
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
751
+ trigger?: boolean | undefined;
752
+ connections?: string[] | undefined;
753
+ bindings?: Record<string, {
754
+ module: string;
755
+ export: string;
756
+ options?: Record<string, unknown> | undefined;
757
+ env?: Record<string, string> | undefined;
758
+ }> | undefined;
759
+ ui?: {
760
+ apiVersion: "1";
761
+ renderers: Record<string, {
762
+ label: string;
763
+ targets: Partial<Record<"node.inspector.inputs", string>>;
764
+ }>;
765
+ } | undefined;
766
+ }[] | undefined;
767
+ source?: {
768
+ kind: "plugin";
769
+ } | {
770
+ package: string;
771
+ kind: "npm";
772
+ version: string;
773
+ } | undefined;
774
+ integration?: {
775
+ npm?: {
776
+ package: string;
777
+ version: string;
778
+ spec: string;
779
+ } | undefined;
780
+ auth?: string[] | undefined;
781
+ category?: string | undefined;
782
+ tags?: string[] | undefined;
783
+ } | undefined;
784
+ scope?: ("user" | "group" | "org" | "public")[] | undefined;
785
+ description?: string | undefined;
786
+ icon?: "function" | "group" | "workflow" | "code" | "type" | "typescript" | "variable" | "webhook" | "filter" | "replace" | "search" | "split" | "repeat" | "arrow-up-down" | "binary" | "bomb" | "boxes" | "braces" | "calculator" | "calendar" | "camera" | "clock" | "copy-x" | "database" | "dices" | "flag" | "flask" | "git-branch" | "git-merge" | "hook" | "list-filter" | "merge" | "octagon-x" | "package" | "package-x" | "pencil" | "play" | "regex" | "ruler" | "scan-eye" | "scissors" | "server-cog" | "settings" | "sigma" | "terminal" | "test-tube" | "text-cursor-input" | "ticket" | "truck" | "ungroup" | "wand" | "wave" | "x" | undefined;
787
+ connections?: Record<string, {
788
+ label: string;
789
+ fields: Record<string, {
790
+ label: string;
791
+ description?: string | undefined;
792
+ required?: boolean | undefined;
793
+ secret?: boolean | undefined;
794
+ }>;
795
+ description?: string | undefined;
796
+ }> | undefined;
797
+ schemaVersion?: string | undefined;
798
+ author?: string | undefined;
799
+ homepage?: string | undefined;
800
+ license?: string | undefined;
801
+ permissions?: {
802
+ resource: "project_data" | "secrets" | "network";
803
+ access: "read" | "write" | "outbound";
804
+ }[] | undefined;
805
+ }>;
806
+ export type PluginManifest = z.infer<typeof PluginManifest>;
807
+ export type PluginManifestInput = z.input<typeof PluginManifest>;
808
+ //# sourceMappingURL=plugin.d.ts.map