@uipath/maestro-builder-sdk 5.2.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 (238) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +322 -0
  3. package/dist/bindings-v2.d.ts +37 -0
  4. package/dist/bindings-v2.js +155 -0
  5. package/dist/bindings.d.ts +6 -0
  6. package/dist/bindings.js +6 -0
  7. package/dist/bpmn/bpmn-expr-check.d.ts +41 -0
  8. package/dist/bpmn/bpmn-expr-check.js +218 -0
  9. package/dist/bpmn/bpmn-sdk.d.ts +2257 -0
  10. package/dist/bpmn/bpmn-sdk.js +1476 -0
  11. package/dist/bpmn/check-cli.d.ts +3 -0
  12. package/dist/bpmn/check-cli.js +32 -0
  13. package/dist/bpmn/check.d.ts +25 -0
  14. package/dist/bpmn/check.js +430 -0
  15. package/dist/bpmn/compile-cli.d.ts +3 -0
  16. package/dist/bpmn/compile-cli.js +60 -0
  17. package/dist/bpmn/connector.d.ts +56 -0
  18. package/dist/bpmn/connector.js +199 -0
  19. package/dist/bpmn/decompile-cli.d.ts +8 -0
  20. package/dist/bpmn/decompile-cli.js +54 -0
  21. package/dist/bpmn/decompile.d.ts +6 -0
  22. package/dist/bpmn/decompile.js +1108 -0
  23. package/dist/bpmn/format-profile.d.ts +27 -0
  24. package/dist/bpmn/format-profile.js +11 -0
  25. package/dist/bpmn/intsvc.d.ts +77 -0
  26. package/dist/bpmn/intsvc.js +155 -0
  27. package/dist/bpmn/load.d.ts +4 -0
  28. package/dist/bpmn/load.js +22 -0
  29. package/dist/bpmn/merge-cli.d.ts +3 -0
  30. package/dist/bpmn/merge-cli.js +45 -0
  31. package/dist/bpmn/merge.d.ts +19 -0
  32. package/dist/bpmn/merge.js +293 -0
  33. package/dist/bpmn/registry-types.json +1869 -0
  34. package/dist/bpmn/serialize.d.ts +28 -0
  35. package/dist/bpmn/serialize.js +757 -0
  36. package/dist/bpmn/tidy-cli.d.ts +2 -0
  37. package/dist/bpmn/tidy-cli.js +39 -0
  38. package/dist/bpmn/typed-node.d.ts +382 -0
  39. package/dist/bpmn/typed-node.js +551 -0
  40. package/dist/bpmn/uipath-moddle.v1.json +823 -0
  41. package/dist/bpmn/xml-ranges.d.ts +45 -0
  42. package/dist/bpmn/xml-ranges.js +151 -0
  43. package/dist/case/case-expr-check.d.ts +35 -0
  44. package/dist/case/case-expr-check.js +85 -0
  45. package/dist/case/case-sdk.d.ts +1282 -0
  46. package/dist/case/case-sdk.js +923 -0
  47. package/dist/case/check-cli.d.ts +3 -0
  48. package/dist/case/check-cli.js +31 -0
  49. package/dist/case/check.d.ts +18 -0
  50. package/dist/case/check.js +456 -0
  51. package/dist/case/compile-cli.d.ts +3 -0
  52. package/dist/case/compile-cli.js +291 -0
  53. package/dist/case/decompile-cli.d.ts +9 -0
  54. package/dist/case/decompile-cli.js +117 -0
  55. package/dist/case/decompile.d.ts +187 -0
  56. package/dist/case/decompile.js +1170 -0
  57. package/dist/case/entry-points.d.ts +79 -0
  58. package/dist/case/entry-points.js +118 -0
  59. package/dist/case/format-profile.d.ts +60 -0
  60. package/dist/case/format-profile.js +79 -0
  61. package/dist/case/ids.d.ts +24 -0
  62. package/dist/case/ids.js +76 -0
  63. package/dist/case/load.d.ts +12 -0
  64. package/dist/case/load.js +32 -0
  65. package/dist/case/preserve.d.ts +133 -0
  66. package/dist/case/preserve.js +105 -0
  67. package/dist/case/serialize.d.ts +10 -0
  68. package/dist/case/serialize.js +1414 -0
  69. package/dist/check-cli.d.ts +3 -0
  70. package/dist/check-cli.js +118 -0
  71. package/dist/check.d.ts +146 -0
  72. package/dist/check.js +4898 -0
  73. package/dist/cli/commands/bpmn.d.ts +2 -0
  74. package/dist/cli/commands/bpmn.js +73 -0
  75. package/dist/cli/commands/case.d.ts +2 -0
  76. package/dist/cli/commands/case.js +60 -0
  77. package/dist/cli/commands/flow.d.ts +2 -0
  78. package/dist/cli/commands/flow.js +99 -0
  79. package/dist/cli/commands/registry.d.ts +10 -0
  80. package/dist/cli/commands/registry.js +170 -0
  81. package/dist/cli/common.d.ts +30 -0
  82. package/dist/cli/common.js +92 -0
  83. package/dist/cli/index.d.ts +2 -0
  84. package/dist/cli/index.js +18 -0
  85. package/dist/cli-run.d.ts +2 -0
  86. package/dist/cli-run.js +42 -0
  87. package/dist/compile-cli.d.ts +3 -0
  88. package/dist/compile-cli.js +160 -0
  89. package/dist/config.d.ts +47 -0
  90. package/dist/config.js +201 -0
  91. package/dist/core/actions.d.ts +3244 -0
  92. package/dist/core/actions.js +1062 -0
  93. package/dist/core/binding-messages.d.ts +1 -0
  94. package/dist/core/binding-messages.js +16 -0
  95. package/dist/core/bindings.d.ts +12 -0
  96. package/dist/core/bindings.js +67 -0
  97. package/dist/core/ceql.d.ts +73 -0
  98. package/dist/core/ceql.js +272 -0
  99. package/dist/core/cli-spelling.d.ts +39 -0
  100. package/dist/core/cli-spelling.js +62 -0
  101. package/dist/core/connector-raw-node.d.ts +21 -0
  102. package/dist/core/connector-raw-node.js +47 -0
  103. package/dist/core/connectors.d.ts +184 -0
  104. package/dist/core/connectors.js +128 -0
  105. package/dist/core/expr-check.d.ts +93 -0
  106. package/dist/core/expr-check.js +186 -0
  107. package/dist/core/expr.d.ts +323 -0
  108. package/dist/core/expr.js +400 -0
  109. package/dist/core/index.d.ts +10 -0
  110. package/dist/core/index.js +10 -0
  111. package/dist/core/library.d.ts +440 -0
  112. package/dist/core/library.js +1183 -0
  113. package/dist/core/list-envelope.d.ts +45 -0
  114. package/dist/core/list-envelope.js +97 -0
  115. package/dist/core/lookup-store.d.ts +22 -0
  116. package/dist/core/lookup-store.js +85 -0
  117. package/dist/core/lookups.d.ts +227 -0
  118. package/dist/core/lookups.js +231 -0
  119. package/dist/core/node-classes.d.ts +234 -0
  120. package/dist/core/node-classes.js +158 -0
  121. package/dist/core/script-return.d.ts +68 -0
  122. package/dist/core/script-return.js +197 -0
  123. package/dist/core/stable-id.d.ts +28 -0
  124. package/dist/core/stable-id.js +37 -0
  125. package/dist/core-definitions.json +16249 -0
  126. package/dist/decompile-cli.d.ts +3 -0
  127. package/dist/decompile-cli.js +131 -0
  128. package/dist/decompile.d.ts +138 -0
  129. package/dist/decompile.js +2482 -0
  130. package/dist/emit.d.ts +10 -0
  131. package/dist/emit.js +60 -0
  132. package/dist/event-filters.d.ts +130 -0
  133. package/dist/event-filters.js +137 -0
  134. package/dist/flow-expr-check.d.ts +17 -0
  135. package/dist/flow-expr-check.js +193 -0
  136. package/dist/flow-sdk.d.ts +1341 -0
  137. package/dist/flow-sdk.js +1164 -0
  138. package/dist/flow-variables.d.ts +13 -0
  139. package/dist/flow-variables.js +42 -0
  140. package/dist/format-profile.d.ts +72 -0
  141. package/dist/format-profile.js +97 -0
  142. package/dist/generators/_connections.py +287 -0
  143. package/dist/generators/_events.py +355 -0
  144. package/dist/generators/_lookups.py +114 -0
  145. package/dist/generators/_naming.py +185 -0
  146. package/dist/generators/_objects.py +299 -0
  147. package/dist/generators/_resolve.py +273 -0
  148. package/dist/generators/convert_library_to_md.py +1441 -0
  149. package/dist/generators/extract_library.py +125 -0
  150. package/dist/generators/generate_connectors_ts.py +936 -0
  151. package/dist/generators/generate_library_json.py +2527 -0
  152. package/dist/generators/generate_triggers_ts.py +110 -0
  153. package/dist/generators/materialize_registry.py +155 -0
  154. package/dist/generators/prepare_connector.py +1688 -0
  155. package/dist/index.d.ts +35 -0
  156. package/dist/index.js +35 -0
  157. package/dist/ixp-definition.json +1982 -0
  158. package/dist/library.d.ts +6 -0
  159. package/dist/library.js +6 -0
  160. package/dist/load.d.ts +16 -0
  161. package/dist/load.js +95 -0
  162. package/dist/merge-cli.d.ts +3 -0
  163. package/dist/merge-cli.js +47 -0
  164. package/dist/merge.d.ts +125 -0
  165. package/dist/merge.js +0 -0
  166. package/dist/migrate.d.ts +15 -0
  167. package/dist/migrate.js +245 -0
  168. package/dist/node-runtime.d.ts +3 -0
  169. package/dist/node-runtime.js +22 -0
  170. package/dist/package-name.d.ts +17 -0
  171. package/dist/package-name.js +17 -0
  172. package/dist/ref-resolve.d.ts +77 -0
  173. package/dist/ref-resolve.js +170 -0
  174. package/dist/registry/cache.d.ts +55 -0
  175. package/dist/registry/cache.js +134 -0
  176. package/dist/registry/curated-overlay.d.ts +16 -0
  177. package/dist/registry/curated-overlay.js +62 -0
  178. package/dist/registry/extractor.d.ts +22 -0
  179. package/dist/registry/extractor.js +18 -0
  180. package/dist/registry/materialize-bin.d.ts +2 -0
  181. package/dist/registry/materialize-bin.js +7 -0
  182. package/dist/registry/materialize-cli.d.ts +1 -0
  183. package/dist/registry/materialize-cli.js +46 -0
  184. package/dist/registry/materializer.d.ts +23 -0
  185. package/dist/registry/materializer.js +34 -0
  186. package/dist/registry/path-cli.d.ts +1 -0
  187. package/dist/registry/path-cli.js +56 -0
  188. package/dist/registry/prepare-cli.d.ts +62 -0
  189. package/dist/registry/prepare-cli.js +185 -0
  190. package/dist/registry/pull-cli.d.ts +1 -0
  191. package/dist/registry/pull-cli.js +274 -0
  192. package/dist/registry/python.d.ts +26 -0
  193. package/dist/registry/python.js +46 -0
  194. package/dist/registry/search-cli.d.ts +52 -0
  195. package/dist/registry/search-cli.js +159 -0
  196. package/dist/schema-version.d.ts +165 -0
  197. package/dist/schema-version.js +148 -0
  198. package/dist/serialize.d.ts +64 -0
  199. package/dist/serialize.js +6398 -0
  200. package/lib/README.md +112 -0
  201. package/lib/library-json.samples/index.json +158 -0
  202. package/lib/library-json.samples/invariant-collections.json +83 -0
  203. package/lib/library-json.samples/list-envelopes.json +123 -0
  204. package/lib/library-json.samples/uipath-atlassian-jira/create-issue@1.0.0.json +131 -0
  205. package/lib/library-json.samples/uipath-atlassian-jira/create-issue@1.0.0.v1def.json +306 -0
  206. package/lib/library-json.samples/uipath-atlassian-jira/generic/create_issue/create@1.0.0.json +86 -0
  207. package/lib/library-json.samples/uipath-atlassian-jira/generic/create_issue/create@1.0.0.v1def.json +208 -0
  208. package/lib/library-json.samples/uipath-atlassian-jira/get-issue@1.0.0.json +2040 -0
  209. package/lib/library-json.samples/uipath-atlassian-jira/get-issue@1.0.0.v1def.json +195 -0
  210. package/lib/library-json.samples/uipath-google-vertex/execute-google-vertex-agent@1.0.0.json +169 -0
  211. package/lib/library-json.samples/uipath-google-vertex/execute-google-vertex-agent@1.0.0.v1def.json +209 -0
  212. package/lib/library-json.samples/uipath-http-webhook/event-http-webhook@1.0.0.json +63 -0
  213. package/lib/library-json.samples/uipath-http-webhook/event-http-webhook@1.0.0.v1def.json +262 -0
  214. package/lib/library-json.samples/uipath-http-webhook/trigger-http-webhook@1.0.0.json +63 -0
  215. package/lib/library-json.samples/uipath-http-webhook/trigger-http-webhook@1.0.0.v1def.json +213 -0
  216. package/lib/library-json.samples/uipath-microsoft-azureactivedirectory/list-groups@1.0.0.json +227 -0
  217. package/lib/library-json.samples/uipath-microsoft-azureactivedirectory/list-groups@1.0.0.v1def.json +373 -0
  218. package/lib/library-json.samples/uipath-microsoft-onedrive/event-file-created@1.0.0.json +116 -0
  219. package/lib/library-json.samples/uipath-microsoft-onedrive/event-file-created@1.0.0.v1def.json +369 -0
  220. package/lib/library-json.samples/uipath-microsoft-onedrive/event-list-item-added@1.0.0.json +56 -0
  221. package/lib/library-json.samples/uipath-microsoft-onedrive/event-list-item-added@1.0.0.v1def.json +256 -0
  222. package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-file-created@1.0.0.json +116 -0
  223. package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-file-created@1.0.0.v1def.json +320 -0
  224. package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-list-item-added@1.0.0.json +56 -0
  225. package/lib/library-json.samples/uipath-microsoft-onedrive/trigger-list-item-added@1.0.0.v1def.json +207 -0
  226. package/lib/library-json.samples/uipath-microsoft-outlook365/event-email-received@1.0.0.json +107 -0
  227. package/lib/library-json.samples/uipath-microsoft-outlook365/event-email-received@1.0.0.v1def.json +264 -0
  228. package/lib/library-json.samples/uipath-microsoft-outlook365/send-email@1.0.0.json +142 -0
  229. package/lib/library-json.samples/uipath-microsoft-outlook365/send-email@1.0.0.v1def.json +306 -0
  230. package/lib/library-json.samples/uipath-microsoft-outlook365/trigger-email-received@1.0.0.json +107 -0
  231. package/lib/library-json.samples/uipath-microsoft-outlook365/trigger-email-received@1.0.0.v1def.json +217 -0
  232. package/lib/library-json.samples/uipath-microsoft-powerautomate/invoke-a-microsoft-power-automate-flow@1.0.0.json +85 -0
  233. package/lib/library-json.samples/uipath-microsoft-powerautomate/invoke-a-microsoft-power-automate-flow@1.0.0.v1def.json +209 -0
  234. package/lib/library-json.samples/uipath-salesforce-slack/send-message-to-user@1.0.0.json +755 -0
  235. package/lib/library-json.samples/uipath-salesforce-slack/send-message-to-user@1.0.0.v1def.json +513 -0
  236. package/lib/library-json.samples/uipath-uipath-dataservice/query-entity-records@1.0.0.json +122 -0
  237. package/lib/library-json.samples/uipath-uipath-dataservice/query-entity-records@1.0.0.v1def.json +227 -0
  238. package/package.json +85 -0
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import { type CliExitCode } from './cli-run.js';
3
+ export declare function run(argv: string[]): Promise<CliExitCode>;
@@ -0,0 +1,118 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * check-cli — static-validate an authored flow without emitting.
4
+ *
5
+ * Usage: node --experimental-strip-types check-cli.js <flow.ts | BaseName>
6
+ * Prints diagnostics; exits non-zero if any errors.
7
+ */
8
+ import { existsSync } from 'node:fs';
9
+ import { join } from 'node:path';
10
+ import { resolveFlowFile, loadBuiltFlow } from './load.js';
11
+ import { check } from './check.js';
12
+ import { Library } from './library.js';
13
+ import { Bindings } from './bindings.js';
14
+ import { connectorInputErrors } from './serialize.js';
15
+ import { runWhenInvokedDirectly } from './cli-run.js';
16
+ import { ensureTypeScriptRuntime } from './node-runtime.js';
17
+ import { resolveLibraryDir } from './registry/cache.js';
18
+ /**
19
+ * Library lookups for the checks whose facts live in the connector corpus:
20
+ * event parameters and measured list envelopes.
21
+ *
22
+ * Deliberately optional. `check` is the fast inner-loop rung and stays a pure
23
+ * function of the built flow — with no library it simply cannot know whether an
24
+ * empty `where` is correct, so it fails open (a warning, not an error). Given a
25
+ * library, `compile` and `check` make the same call with the facts in hand.
26
+ * `--library` mirrors compile-cli's flag and default.
27
+ */
28
+ function checkOpts(argv) {
29
+ const flag = argv.indexOf('--library');
30
+ const libDir = resolveLibraryDir(flag >= 0 ? argv[flag + 1] : undefined);
31
+ // bindings.json beside the source, exactly as compile-cli finds it — so the
32
+ // own-name refusal compile would raise is reported here first.
33
+ const bindFlag = argv.indexOf('--bindings');
34
+ const bindFile = bindFlag >= 0 ? argv[bindFlag + 1] : (existsSync('bindings.json') ? 'bindings.json' : undefined);
35
+ const bindings = bindFile ? new Bindings(bindFile) : undefined;
36
+ if (!libDir || !existsSync(join(libDir, 'index.json')))
37
+ return bindings ? { bindings } : {};
38
+ // The overlay matters here as much as it does for compile: `resolutions.json`
39
+ // lives in it, and without it every already-resolved lookup would be reported
40
+ // as still owed — telling the author to re-run a `prepare` they already ran.
41
+ const overlayDir = existsSync(join('connectors-local', 'index.json'))
42
+ ? 'connectors-local'
43
+ : undefined;
44
+ const library = new Library(libDir, { overlayDir });
45
+ return {
46
+ eventParams: (connector, event, object) => {
47
+ try {
48
+ return library.eventParameterFields(connector, event, object);
49
+ }
50
+ catch {
51
+ // An unresolvable operation is EVENT_UNKNOWN's business (compile reports
52
+ // it against the real library); here it just means "unknown".
53
+ return undefined;
54
+ }
55
+ },
56
+ eventFilterFields: (connector, event, object) => {
57
+ try {
58
+ return library.eventFilterFields(connector, event, object);
59
+ }
60
+ catch {
61
+ return undefined; // unknown fails open, same as every callback here
62
+ }
63
+ },
64
+ lookups: (connector, action, version, object) => library.lookupSpecs(connector, action, version, object),
65
+ resolutions: library.lookupResolutions,
66
+ schemaReadiness: (connector, action, version, object) => {
67
+ try {
68
+ return library.schemaReadiness(connector, action, version, object);
69
+ }
70
+ catch {
71
+ // An unreadable entry means "unknown", and unknown fails open — the
72
+ // same rule as every other callback here.
73
+ return undefined;
74
+ }
75
+ },
76
+ listEnvelope: (connector, operation, version, object) => {
77
+ try {
78
+ return library.resolve(connector, operation, version, object).listEnvelope;
79
+ }
80
+ catch {
81
+ return undefined;
82
+ }
83
+ },
84
+ // The field contract compile enforces, from the same validator: an operation
85
+ // the library cannot resolve is compile's business (it names the entry).
86
+ connectorInputs: (spec, inputs) => {
87
+ try {
88
+ const rc = library.resolve(spec.key, spec.action, spec.version, spec.object);
89
+ return connectorInputErrors(rc, inputs, library.lookupResolutions ?? {}, library.lookupSpecs(spec.key, spec.action, spec.version, spec.object) ?? {});
90
+ }
91
+ catch {
92
+ return undefined;
93
+ }
94
+ },
95
+ ...(bindings ? { bindings } : {}),
96
+ };
97
+ }
98
+ export async function run(argv) {
99
+ const arg = argv.find((a) => !a.startsWith('--')) ?? argv[0];
100
+ if (!arg || arg === '-h' || arg === '--help') {
101
+ console.error('usage: check [--library <dir>] [--bindings <file>] <flow.ts | BaseName>');
102
+ return 2;
103
+ }
104
+ const file = resolveFlowFile(arg);
105
+ ensureTypeScriptRuntime();
106
+ const built = await loadBuiltFlow(file);
107
+ const diags = check(built, checkOpts(argv));
108
+ if (diags.length === 0) {
109
+ console.log('✓ no issues');
110
+ return 0;
111
+ }
112
+ for (const d of diags)
113
+ console.log(`${d.level === 'error' ? '✗' : '⚠'} [${d.code}] ${d.message}${d.suggestion ? ` (did you mean "${d.suggestion}"?)` : ''}`);
114
+ const errors = diags.filter((d) => d.level === 'error').length;
115
+ console.log(`\n${errors} error(s), ${diags.length - errors} warning(s)`);
116
+ return errors ? 1 : 0;
117
+ }
118
+ runWhenInvokedDirectly(import.meta.url, 'check', run);
@@ -0,0 +1,146 @@
1
+ import { type LookupResolutions, type LookupSpec } from './core/lookups.js';
2
+ import type { SchemaReadiness } from './core/library.js';
3
+ import type { BuiltFlow } from './flow-sdk.js';
4
+ export interface Diagnostic {
5
+ level: 'error' | 'warning';
6
+ code: string;
7
+ message: string;
8
+ step?: string;
9
+ suggestion?: string;
10
+ }
11
+ /**
12
+ * What a connector operation declares as its EVENT PARAMETERS — the `where` half
13
+ * of a subscription. `known: false` means "no library was supplied", which is a
14
+ * different answer from `known: true, names: []` ("this operation takes none").
15
+ * Conflating the two is what made `EVENT_NO_SCOPE` an error for the HTTP Webhook
16
+ * connector, whose only correct `where` is empty.
17
+ */
18
+ export interface EventParamFields {
19
+ known: boolean;
20
+ names: string[];
21
+ /**
22
+ * The operation is a GENERIC event (`activityType: GenericTrigger`): its node type
23
+ * covers every object of the connection, so the subscription must name one with
24
+ * `object`. Unknown (no library) reads as `false`, which fails open.
25
+ */
26
+ generic?: boolean;
27
+ /** The entry's own object — `''` for a generic event, the built-in one for a curated event. */
28
+ object?: string;
29
+ /**
30
+ * Required parameters that SELECT the schema rather than scope the
31
+ * subscription (Jira's `project` / `issuetype`). Their values decide which
32
+ * filter and output fields exist, and no CLI surface accepts them — so when
33
+ * this is non-empty the known filter vocabulary is a BASELINE, and a leaf
34
+ * outside it may still be legal.
35
+ */
36
+ selectors?: string[];
37
+ /**
38
+ * The named object has no prepared variant on a connector whose objects come
39
+ * from the connection — the generic template answered instead.
40
+ */
41
+ objectUnprepared?: boolean;
42
+ /**
43
+ * The connector discovers custom fields per connection and nothing has
44
+ * prepared this event, so the known vocabulary is a strict subset of the
45
+ * tenant's BY DESIGN.
46
+ */
47
+ customFieldsUnprepared?: boolean;
48
+ /**
49
+ * The filter vocabulary is a subset that NO prepare can complete.
50
+ *
51
+ * An activity closes this gap: `resources describe` takes `-f name=value`
52
+ * and `--action`, so supplying the parent values runs the connector's
53
+ * ObjectAction (Jira `GenerateSchema`, Salesforce `GenerateQuerySchema`) and
54
+ * the custom fields come back. `uip is triggers describe` has neither flag,
55
+ * so for an EVENT on a custom-field-discovering connector there is no call
56
+ * that reaches the parent-scoped fields — the designer grows Jira's filter
57
+ * list once a project and issue type are picked, and nothing in this CLI
58
+ * can. Distinct from `customFieldsUnprepared`, which preparing DOES fix.
59
+ */
60
+ filtersPartial?: boolean;
61
+ }
62
+ export interface ListEnvelopeFields {
63
+ envelope: string | null;
64
+ source: string;
65
+ tier: string;
66
+ }
67
+ export interface CheckOpts {
68
+ /**
69
+ * Resolve a connector event's declared event parameters, by connector key and
70
+ * event name. Supplied by `check-cli` when `$FLOW_SDK_LIBRARY_JSON` points at a
71
+ * library; omitted (and so unknown) otherwise.
72
+ *
73
+ * A function rather than a `Library`, on purpose: `check` stays a pure function
74
+ * of the built flow plus this one lookup, so it needs no library at all to run
75
+ * and cannot be slowed down by one.
76
+ */
77
+ eventParams?: (connector: string, event: string, object?: string) => EventParamFields | undefined;
78
+ /**
79
+ * Resolve a connector event's FILTERABLE field names — the vocabulary a
80
+ * `filters` leaf may name — sourced the same way as `eventParams`. A GENERIC
81
+ * event's vocabulary is per object, so the subscription's `object` rides
82
+ * along. `undefined` means unknown and fails open; a known-EMPTY list also
83
+ * fails open, because connectors that declare no filter fields exist and
84
+ * refusing every leaf on their events would turn a coverage gap into a
85
+ * false error.
86
+ */
87
+ eventFilterFields?: (connector: string, event: string, object?: string) => string[] | undefined;
88
+ /**
89
+ * Resolve one connector operation's generated lookup table, keyed by field.
90
+ *
91
+ * Supplied by the CLIs when a library is on hand, omitted otherwise — so a
92
+ * `check` with no library simply does not fire the lookup rules rather than
93
+ * guessing at them.
94
+ */
95
+ lookups?: (connector: string, action: string, version?: string, object?: string) => Readonly<Record<string, LookupSpec>> | undefined;
96
+ /** Everything `registry prepare --resolve` has recorded in the local overlay. */
97
+ resolutions?: LookupResolutions;
98
+ /**
99
+ * Whether a connector step's schema is materialized locally — the fact behind
100
+ * the OBJECT_UNPREPARED and CUSTOM_FIELDS_UNPREPARED warnings. Supplied by the
101
+ * CLIs when a library is on hand, omitted otherwise, same as `lookups`: with
102
+ * no library, `check` cannot know what is owed and says nothing.
103
+ */
104
+ schemaReadiness?: (connector: string, action: string, version?: string, object?: string) => SchemaReadiness | undefined;
105
+ /** Resolve the measured collection envelope for one connector operation. */
106
+ listEnvelope?: (connector: string, operation: string, version?: string, object?: string) => ListEnvelopeFields | undefined;
107
+ /**
108
+ * What `compile` would refuse one connector step's inputs with — a missing
109
+ * required field, an unknown or mistyped input, a container part given a value —
110
+ * or `undefined` when it would accept them. Supplied by the CLIs from the same
111
+ * library-backed validator `serialize` runs (`connectorInputErrors`), so the
112
+ * inner loop and the emit rung cannot disagree; omitted (no library) → not checked.
113
+ * Before this hook, `check` printed `0 error(s)` for a source `compile` then
114
+ * refused twice in a row (teams-decision, 2026-09-01, turns 22–25).
115
+ */
116
+ connectorInputs?: (spec: {
117
+ key: string;
118
+ action: string;
119
+ version?: string;
120
+ object?: string;
121
+ }, inputs: Record<string, unknown>) => string | undefined;
122
+ /**
123
+ * The project's `bindings.json`, when there is one — enough of it to detect an
124
+ * entry that answers with its own name, which `compile` refuses (BINDING_SELF_NAME).
125
+ */
126
+ bindings?: {
127
+ resolve(name?: string): string | undefined;
128
+ };
129
+ }
130
+ export declare function check(built: BuiltFlow, opts?: CheckOpts): Diagnostic[];
131
+ /**
132
+ * The ISO-8601 repeating-interval pattern, copied VERBATIM from the
133
+ * `core.trigger.scheduled@1.1` definition (`inputDefinition.then.properties.
134
+ * timerValue.pattern`). `core-definitions.test.ts` pins the two as equal, so if
135
+ * the definition's pattern ever changes this constant fails a test instead of
136
+ * silently drifting.
137
+ */
138
+ export declare const SCHEDULE_PATTERN: string;
139
+ /**
140
+ * The Quartz-cron alternative of the scheduled trigger's **1.2** definition
141
+ * pattern (`core-definitions.json`, `core.trigger.scheduled@1.2` — transcribed
142
+ * from `registry get` 2026-08-18; `core-definitions.test.ts` pins the two as
143
+ * consistent): 6–7 whitespace-separated fields of digits/ranges/steps, month
144
+ * and day names, and the Quartz specials `L W LW ? * #`.
145
+ */
146
+ export declare const SCHEDULE_CRON_PATTERN: string;