dataiku-sdk 0.12.7 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +93 -15
- package/bin/dss.js +21 -2
- package/dist/build-metadata.json +1 -0
- package/dist/packages/types/src/index.d.ts +128 -3
- package/dist/packages/types/src/index.js +106 -3
- package/dist/src/cli/coerce.d.ts +2 -1
- package/dist/src/cli/coerce.js +84 -26
- package/dist/src/cli/commands/app.js +6 -6
- package/dist/src/cli/commands/code.js +2 -2
- package/dist/src/cli/commands/data-quality.js +50 -8
- package/dist/src/cli/commands/dataset.d.ts +23 -0
- package/dist/src/cli/commands/dataset.js +197 -12
- package/dist/src/cli/commands/folder.js +5 -4
- package/dist/src/cli/commands/future.js +2 -2
- package/dist/src/cli/commands/index.js +2 -0
- package/dist/src/cli/commands/job.js +26 -13
- package/dist/src/cli/commands/notebook.js +1 -1
- package/dist/src/cli/commands/project-git.d.ts +2 -0
- package/dist/src/cli/commands/project-git.js +563 -0
- package/dist/src/cli/commands/project.js +118 -14
- package/dist/src/cli/commands/recipe.js +14 -17
- package/dist/src/cli/commands/scenario.js +4 -4
- package/dist/src/cli/contract.d.ts +6 -4
- package/dist/src/cli/contract.js +595 -68
- package/dist/src/cli/doctor.d.ts +12 -2
- package/dist/src/cli/doctor.js +50 -19
- package/dist/src/cli/flags.js +23 -2
- package/dist/src/cli/helpers/cleanup.js +30 -1
- package/dist/src/cli/helpers/dataset.js +1 -1
- package/dist/src/cli/output.d.ts +5 -2
- package/dist/src/cli/output.js +13 -12
- package/dist/src/cli/types.d.ts +2 -0
- package/dist/src/cli/usage.d.ts +1 -1
- package/dist/src/cli/usage.js +2 -1
- package/dist/src/cli/version.d.ts +48 -6
- package/dist/src/cli/version.js +177 -11
- package/dist/src/cli.js +94 -39
- package/dist/src/client.d.ts +31 -1
- package/dist/src/client.js +39 -7
- package/dist/src/errors.d.ts +1 -1
- package/dist/src/index.d.ts +6 -4
- package/dist/src/index.js +3 -1
- package/dist/src/resources/connections.d.ts +3 -1
- package/dist/src/resources/connections.js +82 -21
- package/dist/src/resources/datasets.d.ts +43 -0
- package/dist/src/resources/datasets.js +241 -30
- package/dist/src/resources/folders.js +7 -3
- package/dist/src/resources/project-git.d.ts +154 -0
- package/dist/src/resources/project-git.js +427 -0
- package/dist/src/resources/projects.d.ts +36 -3
- package/dist/src/resources/projects.js +127 -16
- package/dist/src/resources/recipes.js +4 -4
- package/dist/src/schemas.d.ts +2 -2
- package/dist/src/schemas.js +1 -1
- package/dist/src/utils/project-archive.d.ts +32 -0
- package/dist/src/utils/project-archive.js +624 -0
- package/package.json +6 -5
- package/packages/types/dist/index.d.ts +128 -3
- package/packages/types/dist/index.js +106 -3
- package/plugin.json +1 -1
- package/skills/dataiku-dss/SKILL.md +26 -19
package/README.md
CHANGED
|
@@ -20,32 +20,35 @@ npm install --global dataiku-sdk
|
|
|
20
20
|
|
|
21
21
|
Bun is the primary development runtime and package manager. Examples below assume an installed `dss` binary. From a checkout, use `bun --no-env-file src/cli.ts ...` or the cross-runtime `bun --no-env-file ./bin/dss.js ...` launcher. Node users can invoke the same launcher as `node ./bin/dss.js ...`; if `dist/` is absent, it delegates to Bun. From another working directory, pass the checkout's absolute `bin/dss.js` path to Bun or Node.
|
|
22
22
|
`--no-env-file` disables Bun's automatic preloading only; the CLI still applies its documented `.env` handling unless `DATAIKU_DISABLE_ENV=1` is set.
|
|
23
|
+
`dss version` reports whether the running code came from `source` or `dist`, the Node/Bun runtime, the packaged build revision when available, and `staleBuild` when that revision differs from the checkout. Release builds generate `dist/build-metadata.json`; source snapshots without Git metadata still build but report no build revision.
|
|
23
24
|
|
|
24
25
|
## CLI contract
|
|
25
26
|
|
|
26
|
-
- Command results write exactly one JSON value to stdout
|
|
27
|
-
- Dispatch/runtime failures write one
|
|
28
|
-
- Non-fatal diagnostics and `--verbose` traces are JSONL stderr events (`type:"warning"` / `type:"trace"`); no prose trace lines are part of the contract.
|
|
27
|
+
- Command results write exactly one compact JSON value to stdout; void success is `{ok:true}`. `doctor`, `batch`, and `cleanup` failure reports are their direct result objects on stdout with a nonzero exit code — use the exit code and result fields.
|
|
28
|
+
- Dispatch/runtime failures write one compact structured error object on stdout (`type:"error"`, `ok:false`, `error`, `code`, `category`, `exitCode`) with a nonzero exit code; stderr carries JSONL diagnostics only.
|
|
29
|
+
- Non-fatal diagnostics and `--verbose` traces are JSONL stderr events (`type:"warning"` / `type:"trace"`), flushed before both success and failure output; no prose trace lines are part of the contract.
|
|
29
30
|
- `--fields a,b,c` projects those fields from an object or array-of-objects result; dotted paths (`a.b.c`) drill into nested objects, and missing fields become `null`; string and scalar results pass through unchanged.
|
|
30
31
|
- No prompts, help screens, tables, banners, or prose output are part of the contract.
|
|
31
32
|
- Exit codes: `0` success, `1` usage/configuration error, `2` DSS/internal error, `3` transient DSS error, `4` a failed long-running result or synchronous assertion.
|
|
32
33
|
- `--retries N` controls idempotent GET retries only. `dss sql query --start-retries N` explicitly retries transient failures while starting a query; use it only when executing the SQL more than once is safe.
|
|
33
34
|
- The exit code is the success signal. For portable multi-step mutations, prefer `dss batch`; shell chaining and pipeline exit semantics differ across POSIX shells, Windows PowerShell, PowerShell 7, and Command Prompt.
|
|
34
|
-
-
|
|
35
|
+
- Recipe payload commands write the payload as a JSON string on stdout; use `--output PATH` to write the exact bytes to a file instead, with stdout carrying the JSON string equal to `PATH`.
|
|
35
36
|
|
|
36
|
-
Discover the agent contract and command surface with
|
|
37
|
+
Discover the agent contract and command surface with scoped calls:
|
|
37
38
|
|
|
38
39
|
```text
|
|
39
|
-
dss
|
|
40
|
-
dss commands run --fields dataset
|
|
41
|
-
dss commands run --fields dataset.create
|
|
42
|
-
dss commands run --fields dataset
|
|
43
|
-
dss
|
|
40
|
+
dss commands run
|
|
41
|
+
dss commands run --fields dataset
|
|
42
|
+
dss commands run --fields dataset.create
|
|
43
|
+
dss commands run --fields dataset.create.usage,dataset.create.description,dataset.create.flags,dataset.create.examples
|
|
44
|
+
dss commands run --output commands.json
|
|
45
|
+
dss agent contract --fields protocol,agentContractVersion,cli,stdio,planning,compatibility
|
|
46
|
+
dss agent contract --fields commands.actions
|
|
44
47
|
```
|
|
45
48
|
|
|
46
|
-
|
|
49
|
+
`dss commands run` prints the compact resource/action summary — every resource keyed to its action names, about 1k tokens — and never dumps registry entries to stdout. Bootstrap contract discovery with the scoped `agent contract` call above: `protocol,agentContractVersion,cli,stdio,planning,compatibility` cover protocol/schema compatibility, stdout/stderr stream semantics, preferred discovery commands, planning rules, and compatibility guarantees in ~250 tokens; request `schemas` or `commands` only when you actually need them. Before choosing syntax, scope `commands run` with `--fields`: `--fields RESOURCE.ACTION` returns one complete registry entry, `--fields RESOURCE` returns every action of one resource, and appending `.FIELD` paths projects the metadata you need — the four-field per-action projection `usage,description,flags,examples` is the smallest self-sufficient starting point for constructing an invocation. Inspect `flags`, `structuredExamples`, `schemas`, `requiresAuth`, `requiresProject`, `sideEffect`, `async`, `idempotency`, `dryRun`, `cleanupCommand`, `unsafeOutputs`, `outputShape`, `inputContract`, and `exitCodes` instead of guessing.
|
|
47
50
|
|
|
48
|
-
`--fields` takes a comma-separated list, so request several actions in one call. Each key is echoed exactly as requested (`--fields dataset.create` returns `{"dataset.create": {...}}`)
|
|
51
|
+
`--fields` takes a comma-separated list, so request several actions in one call. Each key is echoed exactly as requested (`--fields dataset.create` returns `{"dataset.create": {...}}`); an empty `--fields` is a usage error, never a silent full dump. The full registry (~220k tokens) is exported only via `--output PATH`: the command writes the registry, or the selected `--fields` subset, as compact JSON to `PATH`, and stdout carries the compact `{"path":"PATH"}` result — never the registry itself. An unknown resource or action exits with code 1 and a compact JSON error object on stdout containing the valid options.
|
|
49
52
|
|
|
50
53
|
## Agent skill installation
|
|
51
54
|
|
|
@@ -117,10 +120,16 @@ The command saves credentials and returns `{ "saved": true, "path": "..." }`.
|
|
|
117
120
|
dss version
|
|
118
121
|
dss doctor --fast
|
|
119
122
|
dss project list
|
|
123
|
+
dss project inspect-archive ./project.zip
|
|
124
|
+
dss project import ./project.zip --target-project-key IMPORTED_PROJECT --record-cleanup cleanup.jsonl
|
|
120
125
|
dss dataset list --project-key MYPROJ
|
|
126
|
+
dss dataset files uploaded_input --project-key MYPROJ
|
|
127
|
+
dss dataset upload-file uploaded_input ./new.csv --file-name new.csv --project-key MYPROJ
|
|
128
|
+
dss dataset assert-count jmp_doe_ready --expected 12 --project-key MYPROJ
|
|
129
|
+
dss dataset assert-schema jmp_doe_ready --data-file expected-schema.json --project-key MYPROJ
|
|
130
|
+
dss data-quality assert-results jmp_doe_ready --project-key MYPROJ
|
|
121
131
|
dss recipe get-payload compute_orders --project-key MYPROJ
|
|
122
|
-
dss recipe get-payload compute_orders --
|
|
123
|
-
dss recipe get-payload compute_orders --raw --output code.py --project-key MYPROJ
|
|
132
|
+
dss recipe get-payload compute_orders --output code.py --project-key MYPROJ
|
|
124
133
|
dss install-skill --dry-run
|
|
125
134
|
dss app validate-manifest --project-key MYAPP_INSTANCE
|
|
126
135
|
dss app compare-manifest my-app --project-key MYAPP_INSTANCE
|
|
@@ -135,6 +144,28 @@ dss app permissions-restore --project-key MYAPP_INSTANCE --file permissions.json
|
|
|
135
144
|
dss cleanup --file cleanup.jsonl
|
|
136
145
|
dss cleanup --file cleanup.jsonl --apply
|
|
137
146
|
```
|
|
147
|
+
`project import` performs both public API stages: archive upload, then import processing. It
|
|
148
|
+
first validates ZIP integrity, safe unique member paths, the export manifest, and provable Flow
|
|
149
|
+
references locally. Verified success reports DSS's actual project key, explicit remapping, and a
|
|
150
|
+
`creationTag` incarnation hash; `--record-cleanup` records an incarnation-bound guarded delete.
|
|
151
|
+
It exits nonzero when DSS returns `success:false` even if both HTTP requests succeeded. A timeout,
|
|
152
|
+
5xx, malformed response, missing used key, or failed post-import identity read is
|
|
153
|
+
`ambiguous_outcome` and retains the temporary import ID for inspection before retry.
|
|
154
|
+
|
|
155
|
+
`dataset upload-file` only adds a filename that is not already present and verifies its byte
|
|
156
|
+
length afterward. DSS 14.7 exposes no public UploadedFiles delete or replacement endpoint;
|
|
157
|
+
the command refuses an existing filename before POST instead of triggering DSS's opaque 500.
|
|
158
|
+
For replacement, import a successor project archive containing the desired upload.
|
|
159
|
+
|
|
160
|
+
`dataset preview` returns `truncated` and `limit`; it probes one row past the requested cap instead
|
|
161
|
+
of presenting a capped sample as an exact count. `dataset assert-count`, `dataset assert-schema`,
|
|
162
|
+
and `data-quality assert-results` return `satisfied` and exit `4`/`assertion_failed` on a failed
|
|
163
|
+
postcondition, so they can be used as `batch` steps. Multi-job `job monitor` and `job watch`
|
|
164
|
+
aggregate child failures and also exit `4` when any watched job fails.
|
|
165
|
+
|
|
166
|
+
`doctor` reads the documented `DSS-Version` and `DSS-API-Version` response headers plus the HTTP
|
|
167
|
+
`Date` header from the public project-list call. Feature support remains behavioral: the CLI does
|
|
168
|
+
not call an undocumented feature endpoint or infer licensed capabilities from a version string.
|
|
138
169
|
|
|
139
170
|
### Application release safety
|
|
140
171
|
|
|
@@ -213,7 +244,9 @@ conditional DELETE. Cleanup rechecks type and `creationTag` immediately before d
|
|
|
213
244
|
detected key reuse, but cannot eliminate replacement in the remaining check-to-DELETE gap.
|
|
214
245
|
`cleanup --apply` validates the full ledger before issuing any request and rejects legacy entries
|
|
215
246
|
without server identity, mixed-server ledgers, entries for another DSS URL, and app cleanup entries
|
|
216
|
-
without a valid incarnation binding.
|
|
247
|
+
without a valid incarnation binding. Project-import cleanup uses the same rule: the ledger binds
|
|
248
|
+
the actual imported key and verified `creationTag` hash, and `project delete
|
|
249
|
+
--expect-project-incarnation` refuses a reused or unverifiable key before DELETE.
|
|
217
250
|
|
|
218
251
|
Saving `version`/`versionNotes` in the public app manifest is a metadata write, not a publish
|
|
219
252
|
transaction. If the manifest PUT or its verification read has an ambiguous transport/server
|
|
@@ -230,4 +263,49 @@ never marks that external check complete. The public DSS APIs used by this SDK d
|
|
|
230
263
|
supported app-template publish/recreate/rename workflow, recipient-level app sharing setter, or
|
|
231
264
|
UI-click smoke test. The CLI does not guess private endpoints for those operations.
|
|
232
265
|
|
|
266
|
+
## Project Git source-control safety
|
|
267
|
+
|
|
268
|
+
Project Git commands require DSS 12.4.2 or newer plus read and write access to the project
|
|
269
|
+
content. Inspect state before changing it:
|
|
270
|
+
The DSS project Git API exposes status, remotes, branches, tags, branch switching, fetch,
|
|
271
|
+
rebase-based pull, push, log, diff, commit, revert/reset/rebuild, external-library, and future
|
|
272
|
+
operations. It does not expose a separate checkout operation; use `switch`.
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
dss project-git status --project-key MYPROJ
|
|
276
|
+
dss project-git branches --remote --project-key MYPROJ
|
|
277
|
+
dss project-git log --count 20 --project-key MYPROJ
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
Creating a branch in a duplicate project is the safe UAT path; creating it in place switches the
|
|
281
|
+
source project to the new branch:
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
dss project-git create-branch feature/orders \
|
|
285
|
+
--duplicate-project \
|
|
286
|
+
--target-project-key MYPROJ_ORDERS_UAT \
|
|
287
|
+
--project-key MYPROJ \
|
|
288
|
+
--plan
|
|
289
|
+
dss project-git create-branch feature/orders \
|
|
290
|
+
--duplicate-project \
|
|
291
|
+
--target-project-key MYPROJ_ORDERS_UAT \
|
|
292
|
+
--project-key MYPROJ
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
`pull` rebases rather than merging. `reset-to-head`, `reset-to-upstream`, reverts, forced or
|
|
296
|
+
remote branch deletion, library-directory deletion, and `drop-and-rebuild` are destructive;
|
|
297
|
+
inspect their local `--plan` result first. `drop-and-rebuild` additionally requires
|
|
298
|
+
`--i-know-what-i-am-doing` and destroys all Git history. Repository URLs containing embedded
|
|
299
|
+
HTTP credentials are rejected. External-library credentials must come from
|
|
300
|
+
`--password-env ENV_NAME`; the value is never included in plans or command output. Library
|
|
301
|
+
operations that return a `jobId` can be observed with `project-git future-status` or completed
|
|
302
|
+
with `project-git future-wait`.
|
|
303
|
+
Project Git requests use `/dip/publicapi/projects/{projectKey}/git/*`; they do not configure
|
|
304
|
+
remote authentication. DSS documents administrator Git group rules plus either per-user SSH keys
|
|
305
|
+
under **Profile > Credentials > SSH** or non-interactive system-level credentials for the DSS
|
|
306
|
+
server account. Configure these before private-remote fetch, pull, or push. `--password-env`
|
|
307
|
+
applies only to external project-library operations and does not persist a remote credential.
|
|
308
|
+
The `project-git` resource does not manage these settings, so public/auth-less and
|
|
309
|
+
already-configured remotes are the supported automation paths.
|
|
310
|
+
|
|
233
311
|
For fake-DSS smoke tests, return project lists as JSON arrays such as `[{ "projectKey": "MYPROJ", "name": "My Project" }]` from `/public/api/projects/`; recipe payload commands read `/public/api/projects/<PROJECT>/recipes/<NAME>?includePayload=true` and expect a JSON object shaped like `{ "recipe": { "name": "<NAME>", "type": "python" }, "payload": "..." }`.
|
package/bin/dss.js
CHANGED
|
@@ -56,9 +56,28 @@ if (hasFlag(["--insecure", "--skip-tls-verify",],)) {
|
|
|
56
56
|
) {
|
|
57
57
|
env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
|
|
58
58
|
}
|
|
59
|
-
|
|
60
59
|
const runningOnBun = Boolean(process.versions.bun,);
|
|
61
60
|
const usesSourceCli = cliPath === sourceCliPath;
|
|
61
|
+
|
|
62
|
+
// Published dist carries dist/build-metadata.json with the revision it was
|
|
63
|
+
// built from. Forward it to the CLI so provenance can report dist source and
|
|
64
|
+
// its build revision; only a full lowercase hexadecimal revision is accepted,
|
|
65
|
+
// so an inherited or corrupt variable never stands in for packaged metadata.
|
|
66
|
+
const distMetadataPath = path.resolve(here, "../dist/build-metadata.json",);
|
|
67
|
+
if (!usesSourceCli) {
|
|
68
|
+
env.DSS_LOAD_SOURCE = "dist";
|
|
69
|
+
delete env.DSS_BUILD_REVISION;
|
|
70
|
+
try {
|
|
71
|
+
const metadata = JSON.parse(fs.readFileSync(distMetadataPath, "utf-8",),);
|
|
72
|
+
const revision = metadata.buildRevision;
|
|
73
|
+
if (typeof revision === "string" && /^[0-9a-f]{40}$/.test(revision,)) {
|
|
74
|
+
env.DSS_BUILD_REVISION = revision;
|
|
75
|
+
}
|
|
76
|
+
} catch {
|
|
77
|
+
// Dist without build metadata: provenance still reports dist source.
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
62
81
|
const runtimeBin = runningOnBun ? process.execPath : usesSourceCli ? "bun" : process.execPath;
|
|
63
82
|
const runtimeArgs = runningOnBun || usesSourceCli ? ["--no-env-file",] : ["--use-system-ca",];
|
|
64
83
|
const result = spawnSync(
|
|
@@ -77,7 +96,7 @@ if (result.error) {
|
|
|
77
96
|
runningOnBun ? "Bun" : "Node"
|
|
78
97
|
} runtime for packaged dss CLI (${result.error.message}); falling back to the current runtime.`;
|
|
79
98
|
if (usesSourceCli) {
|
|
80
|
-
process.
|
|
99
|
+
process.stdout.write(`${
|
|
81
100
|
JSON.stringify({
|
|
82
101
|
type: "error",
|
|
83
102
|
ok: false,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"format":1,"buildRevision":"70487e2275a70acce6862f126a89b1bc852ebb11"}
|
|
@@ -66,6 +66,7 @@ export declare const DatasetSummarySchema: import("@sinclair/typebox").TObject<{
|
|
|
66
66
|
managed: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
67
67
|
params: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
68
68
|
connection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
69
|
+
uploadConnection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
69
70
|
schema: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
70
71
|
catalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
71
72
|
}>>;
|
|
@@ -86,6 +87,7 @@ export declare const DatasetDetailsSchema: import("@sinclair/typebox").TObject<{
|
|
|
86
87
|
managed: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
87
88
|
params: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
88
89
|
connection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
90
|
+
uploadConnection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
89
91
|
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
90
92
|
table: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
91
93
|
schema: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -111,7 +113,7 @@ export declare const DatasetDetailsSchema: import("@sinclair/typebox").TObject<{
|
|
|
111
113
|
export type DatasetDetails = Static<typeof DatasetDetailsSchema>;
|
|
112
114
|
export declare const DatasetCreateOptionsSchema: import("@sinclair/typebox").TObject<{
|
|
113
115
|
datasetName: import("@sinclair/typebox").TString;
|
|
114
|
-
connection: import("@sinclair/typebox").TString
|
|
116
|
+
connection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
115
117
|
dsType: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
116
118
|
table: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
117
119
|
dbSchema: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -382,8 +384,8 @@ export declare const FlowZoneUpdateOptionsSchema: import("@sinclair/typebox").TO
|
|
|
382
384
|
export type FlowZoneUpdateOptions = Static<typeof FlowZoneUpdateOptionsSchema>;
|
|
383
385
|
export declare const FolderCreateOptionsSchema: import("@sinclair/typebox").TObject<{
|
|
384
386
|
name: import("@sinclair/typebox").TString;
|
|
385
|
-
type: import("@sinclair/typebox").TString
|
|
386
|
-
connection: import("@sinclair/typebox").TString
|
|
387
|
+
type: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
388
|
+
connection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
387
389
|
path: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
388
390
|
params: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>>;
|
|
389
391
|
projectKey: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
@@ -677,6 +679,128 @@ export declare const FlowMapOptionsSchema: import("@sinclair/typebox").TObject<{
|
|
|
677
679
|
includeRaw: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
678
680
|
}>;
|
|
679
681
|
export type FlowMapOptions = Static<typeof FlowMapOptionsSchema>;
|
|
682
|
+
/**
|
|
683
|
+
* Git working-copy status of a project. Stable fields are documented in the
|
|
684
|
+
* DSS 14.7.3 source; DSS additionally returns extension fields, which are
|
|
685
|
+
* preserved by `additionalProperties: true`.
|
|
686
|
+
*/
|
|
687
|
+
export declare const ProjectGitStatusSchema: import("@sinclair/typebox").TObject<{
|
|
688
|
+
currentBranch: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
689
|
+
remotes: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
690
|
+
name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
691
|
+
url: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
692
|
+
}>>>;
|
|
693
|
+
trackingCount: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
694
|
+
ahead: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
695
|
+
behind: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
696
|
+
}>>;
|
|
697
|
+
clean: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
698
|
+
hasUncommittedChanges: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
699
|
+
added: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
700
|
+
changed: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
701
|
+
removed: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
702
|
+
missing: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
703
|
+
modified: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
704
|
+
conflicting: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
705
|
+
untracked: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
706
|
+
untrackedFolders: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>>;
|
|
707
|
+
originProjectKey: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
708
|
+
trackingCountWithOriginProject: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
709
|
+
ahead: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
710
|
+
behind: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
711
|
+
}>>;
|
|
712
|
+
}>;
|
|
713
|
+
export type ProjectGitStatus = Static<typeof ProjectGitStatusSchema>;
|
|
714
|
+
export declare const ProjectGitRemoteSchema: import("@sinclair/typebox").TObject<{
|
|
715
|
+
url: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
716
|
+
}>;
|
|
717
|
+
export type ProjectGitRemote = Static<typeof ProjectGitRemoteSchema>;
|
|
718
|
+
/**
|
|
719
|
+
* Result of a Git mutation. DSS answers with HTTP 200 even for failures, so
|
|
720
|
+
* `success` is the field callers must inspect before trusting the operation.
|
|
721
|
+
*/
|
|
722
|
+
export declare const ProjectGitActionResultSchema: import("@sinclair/typebox").TObject<{
|
|
723
|
+
success: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
724
|
+
output: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
725
|
+
logs: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
726
|
+
messages: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
727
|
+
}>;
|
|
728
|
+
export type ProjectGitActionResult = Static<typeof ProjectGitActionResultSchema>;
|
|
729
|
+
export declare const ProjectGitTagSchema: import("@sinclair/typebox").TObject<{
|
|
730
|
+
name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
731
|
+
shortName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
732
|
+
commit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
733
|
+
annotations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
734
|
+
readOnly: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
735
|
+
}>;
|
|
736
|
+
export type ProjectGitTag = Static<typeof ProjectGitTagSchema>;
|
|
737
|
+
export declare const ProjectGitTagsSchema: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
738
|
+
name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
739
|
+
shortName: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
740
|
+
commit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
741
|
+
annotations: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
742
|
+
readOnly: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
743
|
+
}>>;
|
|
744
|
+
export type ProjectGitTags = Static<typeof ProjectGitTagsSchema>;
|
|
745
|
+
/**
|
|
746
|
+
* Paginated commit log. `nextCommit` is the cursor DSS expects back to fetch
|
|
747
|
+
* the following page; entries stay unpinned because commit payloads vary.
|
|
748
|
+
*/
|
|
749
|
+
export declare const ProjectGitLogResultSchema: import("@sinclair/typebox").TObject<{
|
|
750
|
+
entries: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>;
|
|
751
|
+
nextCommit: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
752
|
+
}>;
|
|
753
|
+
export type ProjectGitLogResult = Static<typeof ProjectGitLogResultSchema>;
|
|
754
|
+
/**
|
|
755
|
+
* Diff between two revisions. Stable fields are documented in the DSS 14.7.3
|
|
756
|
+
* source; DSS additionally returns extension fields, which are preserved by
|
|
757
|
+
* `additionalProperties: true`.
|
|
758
|
+
*/
|
|
759
|
+
export declare const ProjectGitDiffResultSchema: import("@sinclair/typebox").TObject<{
|
|
760
|
+
commitFrom: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
761
|
+
commitTo: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
762
|
+
addedLines: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
763
|
+
removedLines: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
764
|
+
changedFiles: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
765
|
+
entries: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnknown>>;
|
|
766
|
+
}>;
|
|
767
|
+
export type ProjectGitDiffResult = Static<typeof ProjectGitDiffResultSchema>;
|
|
768
|
+
export declare const ProjectGitLibrarySchema: import("@sinclair/typebox").TObject<{
|
|
769
|
+
repository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
770
|
+
login: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
771
|
+
pathInGitRepository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
772
|
+
localTargetPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
773
|
+
checkout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
774
|
+
addToPythonPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
775
|
+
}>;
|
|
776
|
+
export type ProjectGitLibrary = Static<typeof ProjectGitLibrarySchema>;
|
|
777
|
+
export declare const ProjectGitLibrariesSchema: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
778
|
+
repository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
779
|
+
login: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
780
|
+
pathInGitRepository: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
781
|
+
localTargetPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
782
|
+
checkout: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
783
|
+
addToPythonPath: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
784
|
+
}>>;
|
|
785
|
+
export type ProjectGitLibraries = Static<typeof ProjectGitLibrariesSchema>;
|
|
786
|
+
/** Handle returned by Git operations that run asynchronously as a DSS future. */
|
|
787
|
+
export declare const ProjectGitFutureResponseSchema: import("@sinclair/typebox").TObject<{
|
|
788
|
+
jobId: import("@sinclair/typebox").TString;
|
|
789
|
+
}>;
|
|
790
|
+
export type ProjectGitFutureResponse = Static<typeof ProjectGitFutureResponseSchema>;
|
|
791
|
+
export declare const ProjectGitFutureStateSchema: import("@sinclair/typebox").TObject<{
|
|
792
|
+
jobId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
793
|
+
hasResult: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
794
|
+
result: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
795
|
+
alive: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
796
|
+
aborted: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
797
|
+
abortable: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
798
|
+
unknown: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
799
|
+
startTime: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
800
|
+
runningTime: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TNumber>;
|
|
801
|
+
error: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
802
|
+
}>;
|
|
803
|
+
export type ProjectGitFutureState = Static<typeof ProjectGitFutureStateSchema>;
|
|
680
804
|
export declare const ProjectSummaryArraySchema: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
681
805
|
projectKey: import("@sinclair/typebox").TString;
|
|
682
806
|
name: import("@sinclair/typebox").TString;
|
|
@@ -689,6 +813,7 @@ export declare const DatasetSummaryArraySchema: import("@sinclair/typebox").TArr
|
|
|
689
813
|
managed: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TBoolean>;
|
|
690
814
|
params: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
691
815
|
connection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
816
|
+
uploadConnection: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
692
817
|
schema: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
693
818
|
catalog: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
694
819
|
}>>;
|
|
@@ -123,6 +123,7 @@ export const DatasetSummarySchema = Type.Object({
|
|
|
123
123
|
managed: Type.Optional(Type.Boolean()),
|
|
124
124
|
params: Type.Optional(Type.Object({
|
|
125
125
|
connection: Type.Optional(Type.String()),
|
|
126
|
+
uploadConnection: Type.Optional(Type.String()),
|
|
126
127
|
schema: Type.Optional(Type.String()),
|
|
127
128
|
catalog: Type.Optional(Type.String()),
|
|
128
129
|
}, { additionalProperties: true, })),
|
|
@@ -141,6 +142,7 @@ export const DatasetDetailsSchema = Type.Object({
|
|
|
141
142
|
managed: Type.Optional(Type.Boolean()),
|
|
142
143
|
params: Type.Optional(Type.Object({
|
|
143
144
|
connection: Type.Optional(Type.String()),
|
|
145
|
+
uploadConnection: Type.Optional(Type.String()),
|
|
144
146
|
path: Type.Optional(Type.String()),
|
|
145
147
|
table: Type.Optional(Type.String()),
|
|
146
148
|
schema: Type.Optional(Type.String()),
|
|
@@ -159,7 +161,7 @@ export const DatasetDetailsSchema = Type.Object({
|
|
|
159
161
|
}, { additionalProperties: true, });
|
|
160
162
|
export const DatasetCreateOptionsSchema = Type.Object({
|
|
161
163
|
datasetName: Type.String(),
|
|
162
|
-
connection: Type.String(),
|
|
164
|
+
connection: Type.Optional(Type.String()),
|
|
163
165
|
dsType: Type.Optional(Type.String()),
|
|
164
166
|
table: Type.Optional(Type.String()),
|
|
165
167
|
dbSchema: Type.Optional(Type.String()),
|
|
@@ -393,8 +395,8 @@ export const FlowZoneUpdateOptionsSchema = Type.Object({
|
|
|
393
395
|
// ---------------------------------------------------------------------------
|
|
394
396
|
export const FolderCreateOptionsSchema = Type.Object({
|
|
395
397
|
name: Type.String(),
|
|
396
|
-
type: Type.String(),
|
|
397
|
-
connection: Type.String(),
|
|
398
|
+
type: Type.Optional(Type.String()),
|
|
399
|
+
connection: Type.Optional(Type.String()),
|
|
398
400
|
path: Type.Optional(Type.String()),
|
|
399
401
|
params: Type.Optional(Type.Record(Type.String(), Type.Unknown())),
|
|
400
402
|
projectKey: Type.Optional(Type.String()),
|
|
@@ -642,6 +644,107 @@ export const FlowMapOptionsSchema = Type.Object({
|
|
|
642
644
|
includeRaw: Type.Optional(Type.Boolean()),
|
|
643
645
|
});
|
|
644
646
|
// ---------------------------------------------------------------------------
|
|
647
|
+
// Project Git
|
|
648
|
+
// ---------------------------------------------------------------------------
|
|
649
|
+
/**
|
|
650
|
+
* Git working-copy status of a project. Stable fields are documented in the
|
|
651
|
+
* DSS 14.7.3 source; DSS additionally returns extension fields, which are
|
|
652
|
+
* preserved by `additionalProperties: true`.
|
|
653
|
+
*/
|
|
654
|
+
export const ProjectGitStatusSchema = Type.Object({
|
|
655
|
+
currentBranch: Type.Optional(Type.String()),
|
|
656
|
+
remotes: Type.Optional(Type.Array(Type.Object({
|
|
657
|
+
name: Type.Optional(Type.String()),
|
|
658
|
+
url: Type.Optional(Type.String()),
|
|
659
|
+
}, { additionalProperties: true, }))),
|
|
660
|
+
trackingCount: Type.Optional(Type.Object({
|
|
661
|
+
ahead: Type.Optional(Type.Number()),
|
|
662
|
+
behind: Type.Optional(Type.Number()),
|
|
663
|
+
}, { additionalProperties: true, })),
|
|
664
|
+
clean: Type.Optional(Type.Boolean()),
|
|
665
|
+
hasUncommittedChanges: Type.Optional(Type.Boolean()),
|
|
666
|
+
added: Type.Optional(Type.Array(Type.String())),
|
|
667
|
+
changed: Type.Optional(Type.Array(Type.String())),
|
|
668
|
+
removed: Type.Optional(Type.Array(Type.String())),
|
|
669
|
+
missing: Type.Optional(Type.Array(Type.String())),
|
|
670
|
+
modified: Type.Optional(Type.Array(Type.String())),
|
|
671
|
+
conflicting: Type.Optional(Type.Array(Type.String())),
|
|
672
|
+
untracked: Type.Optional(Type.Array(Type.String())),
|
|
673
|
+
untrackedFolders: Type.Optional(Type.Array(Type.String())),
|
|
674
|
+
originProjectKey: Type.Optional(Type.String()),
|
|
675
|
+
trackingCountWithOriginProject: Type.Optional(Type.Object({
|
|
676
|
+
ahead: Type.Optional(Type.Number()),
|
|
677
|
+
behind: Type.Optional(Type.Number()),
|
|
678
|
+
}, { additionalProperties: true, })),
|
|
679
|
+
}, { additionalProperties: true, });
|
|
680
|
+
export const ProjectGitRemoteSchema = Type.Object({
|
|
681
|
+
url: Type.Optional(Type.String()),
|
|
682
|
+
}, { additionalProperties: true, });
|
|
683
|
+
/**
|
|
684
|
+
* Result of a Git mutation. DSS answers with HTTP 200 even for failures, so
|
|
685
|
+
* `success` is the field callers must inspect before trusting the operation.
|
|
686
|
+
*/
|
|
687
|
+
export const ProjectGitActionResultSchema = Type.Object({
|
|
688
|
+
success: Type.Optional(Type.Boolean()),
|
|
689
|
+
output: Type.Optional(Type.Unknown()),
|
|
690
|
+
logs: Type.Optional(Type.Unknown()),
|
|
691
|
+
messages: Type.Optional(Type.Unknown()),
|
|
692
|
+
}, { additionalProperties: true, });
|
|
693
|
+
export const ProjectGitTagSchema = Type.Object({
|
|
694
|
+
name: Type.Optional(Type.String()),
|
|
695
|
+
shortName: Type.Optional(Type.String()),
|
|
696
|
+
commit: Type.Optional(Type.Unknown()),
|
|
697
|
+
annotations: Type.Optional(Type.Unknown()),
|
|
698
|
+
readOnly: Type.Optional(Type.Boolean()),
|
|
699
|
+
}, { additionalProperties: true, });
|
|
700
|
+
export const ProjectGitTagsSchema = Type.Array(ProjectGitTagSchema);
|
|
701
|
+
/**
|
|
702
|
+
* Paginated commit log. `nextCommit` is the cursor DSS expects back to fetch
|
|
703
|
+
* the following page; entries stay unpinned because commit payloads vary.
|
|
704
|
+
*/
|
|
705
|
+
export const ProjectGitLogResultSchema = Type.Object({
|
|
706
|
+
entries: Type.Array(Type.Unknown()),
|
|
707
|
+
nextCommit: Type.Optional(Type.String()),
|
|
708
|
+
}, { additionalProperties: true, });
|
|
709
|
+
/**
|
|
710
|
+
* Diff between two revisions. Stable fields are documented in the DSS 14.7.3
|
|
711
|
+
* source; DSS additionally returns extension fields, which are preserved by
|
|
712
|
+
* `additionalProperties: true`.
|
|
713
|
+
*/
|
|
714
|
+
export const ProjectGitDiffResultSchema = Type.Object({
|
|
715
|
+
commitFrom: Type.Optional(Type.Unknown()),
|
|
716
|
+
commitTo: Type.Optional(Type.Unknown()),
|
|
717
|
+
addedLines: Type.Optional(Type.Number()),
|
|
718
|
+
removedLines: Type.Optional(Type.Number()),
|
|
719
|
+
changedFiles: Type.Optional(Type.Number()),
|
|
720
|
+
entries: Type.Optional(Type.Array(Type.Unknown())),
|
|
721
|
+
}, { additionalProperties: true, });
|
|
722
|
+
export const ProjectGitLibrarySchema = Type.Object({
|
|
723
|
+
repository: Type.Optional(Type.String()),
|
|
724
|
+
login: Type.Optional(Type.String()),
|
|
725
|
+
pathInGitRepository: Type.Optional(Type.String()),
|
|
726
|
+
localTargetPath: Type.Optional(Type.String()),
|
|
727
|
+
checkout: Type.Optional(Type.String()),
|
|
728
|
+
addToPythonPath: Type.Optional(Type.Boolean()),
|
|
729
|
+
}, { additionalProperties: true, });
|
|
730
|
+
export const ProjectGitLibrariesSchema = Type.Array(ProjectGitLibrarySchema);
|
|
731
|
+
/** Handle returned by Git operations that run asynchronously as a DSS future. */
|
|
732
|
+
export const ProjectGitFutureResponseSchema = Type.Object({
|
|
733
|
+
jobId: Type.String(),
|
|
734
|
+
}, { additionalProperties: true, });
|
|
735
|
+
export const ProjectGitFutureStateSchema = Type.Object({
|
|
736
|
+
jobId: Type.Optional(Type.String()),
|
|
737
|
+
hasResult: Type.Optional(Type.Boolean()),
|
|
738
|
+
result: Type.Optional(Type.Unknown()),
|
|
739
|
+
alive: Type.Optional(Type.Boolean()),
|
|
740
|
+
aborted: Type.Optional(Type.Boolean()),
|
|
741
|
+
abortable: Type.Optional(Type.Boolean()),
|
|
742
|
+
unknown: Type.Optional(Type.Boolean()),
|
|
743
|
+
startTime: Type.Optional(Type.Number()),
|
|
744
|
+
runningTime: Type.Optional(Type.Number()),
|
|
745
|
+
error: Type.Optional(Type.Unknown()),
|
|
746
|
+
}, { additionalProperties: true, });
|
|
747
|
+
// ---------------------------------------------------------------------------
|
|
645
748
|
// Array wrappers (for runtime validation of list() responses)
|
|
646
749
|
// ---------------------------------------------------------------------------
|
|
647
750
|
export const ProjectSummaryArraySchema = Type.Array(ProjectSummarySchema);
|
package/dist/src/cli/coerce.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { JobBuildTargetType, JobLogFilter } from "../resources/jobs.js";
|
|
2
|
-
export declare function num(v: string | boolean | undefined): number | undefined;
|
|
2
|
+
export declare function num(v: string | boolean | undefined, flagName?: string): number | undefined;
|
|
3
|
+
export declare function numFlag(flags: Record<string, string | boolean>, flagNames: string[]): number | undefined;
|
|
3
4
|
export declare function jobBuildTargetType(v: string | boolean | undefined): JobBuildTargetType;
|
|
4
5
|
export declare function jobBuildTargetTypeFromFlags(flags: Record<string, string | boolean>): JobBuildTargetType;
|
|
5
6
|
export declare function maxLogLinesFromFlags(flags: Record<string, string | boolean>): number | undefined;
|