politty 0.8.0 → 0.9.1

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 (71) hide show
  1. package/README.md +57 -0
  2. package/dist/arg-registry-BeLLAW5-.js +25 -0
  3. package/dist/cli.js +4 -3
  4. package/dist/command-B4yA4LXX.js +43 -0
  5. package/dist/completion/index.js +1 -1
  6. package/dist/{completion-DHnVx9Zk.js → completion-DwTFOtQk.js} +5 -44
  7. package/dist/docs/index.js +2 -2
  8. package/dist/index.js +6 -3
  9. package/dist/logger-DbDkjdfO.js +134 -0
  10. package/dist/{runner-D43SkHt5.js → runner-B-FZMN89.js} +63 -121
  11. package/dist/{schema-extractor-Dqe7_kyQ.js → schema-extractor-CVHWm23M.js} +3 -24
  12. package/dist/skill/index.d.ts +432 -0
  13. package/dist/skill/index.js +1563 -0
  14. package/package.json +25 -63
  15. package/dist/arg-registry-DDJpsUea.d.cts +0 -942
  16. package/dist/arg-registry-DDJpsUea.d.cts.map +0 -1
  17. package/dist/arg-registry-DDJpsUea.d.ts.map +0 -1
  18. package/dist/augment.cjs +0 -0
  19. package/dist/augment.d.cts +0 -17
  20. package/dist/augment.d.cts.map +0 -1
  21. package/dist/augment.d.ts.map +0 -1
  22. package/dist/cli.cjs +0 -54
  23. package/dist/cli.cjs.map +0 -1
  24. package/dist/cli.d.cts +0 -1
  25. package/dist/cli.js.map +0 -1
  26. package/dist/completion/index.cjs +0 -23
  27. package/dist/completion/index.d.cts +0 -3
  28. package/dist/completion-CLHO3Xaz.cjs +0 -5769
  29. package/dist/completion-CLHO3Xaz.cjs.map +0 -1
  30. package/dist/completion-DHnVx9Zk.js.map +0 -1
  31. package/dist/docs/index.cjs +0 -3127
  32. package/dist/docs/index.cjs.map +0 -1
  33. package/dist/docs/index.d.cts +0 -752
  34. package/dist/docs/index.d.cts.map +0 -1
  35. package/dist/docs/index.d.ts.map +0 -1
  36. package/dist/docs/index.js.map +0 -1
  37. package/dist/index-DKGn3lIl.d.ts.map +0 -1
  38. package/dist/index-WyViqW59.d.cts +0 -663
  39. package/dist/index-WyViqW59.d.cts.map +0 -1
  40. package/dist/index.cjs +0 -45
  41. package/dist/index.d.cts +0 -685
  42. package/dist/index.d.cts.map +0 -1
  43. package/dist/index.d.ts.map +0 -1
  44. package/dist/log-collector-DK32-73m.js.map +0 -1
  45. package/dist/log-collector-DUqC427m.cjs +0 -185
  46. package/dist/log-collector-DUqC427m.cjs.map +0 -1
  47. package/dist/prompt/clack/index.cjs +0 -33
  48. package/dist/prompt/clack/index.cjs.map +0 -1
  49. package/dist/prompt/clack/index.d.cts +0 -18
  50. package/dist/prompt/clack/index.d.cts.map +0 -1
  51. package/dist/prompt/clack/index.d.ts.map +0 -1
  52. package/dist/prompt/clack/index.js.map +0 -1
  53. package/dist/prompt/index.cjs +0 -7
  54. package/dist/prompt/index.d.cts +0 -108
  55. package/dist/prompt/index.d.cts.map +0 -1
  56. package/dist/prompt/index.d.ts.map +0 -1
  57. package/dist/prompt/inquirer/index.cjs +0 -48
  58. package/dist/prompt/inquirer/index.cjs.map +0 -1
  59. package/dist/prompt/inquirer/index.d.cts +0 -18
  60. package/dist/prompt/inquirer/index.d.cts.map +0 -1
  61. package/dist/prompt/inquirer/index.d.ts.map +0 -1
  62. package/dist/prompt/inquirer/index.js.map +0 -1
  63. package/dist/prompt-Bs9e-Em3.cjs +0 -196
  64. package/dist/prompt-Bs9e-Em3.cjs.map +0 -1
  65. package/dist/prompt-Cc8Tfmdv.js.map +0 -1
  66. package/dist/runner-D43SkHt5.js.map +0 -1
  67. package/dist/runner-DvFvokV6.cjs +0 -2865
  68. package/dist/runner-DvFvokV6.cjs.map +0 -1
  69. package/dist/schema-extractor-BxSRwLrx.cjs +0 -710
  70. package/dist/schema-extractor-BxSRwLrx.cjs.map +0 -1
  71. package/dist/schema-extractor-Dqe7_kyQ.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-DKGn3lIl.d.ts","names":[],"sources":["../src/completion/types.ts","../src/completion/dynamic/context-parser.ts","../src/completion/dynamic/candidate-generator.ts","../src/completion/dynamic/complete-command.ts","../src/completion/dynamic/shell-formatter.ts","../src/completion/extractor.ts","../src/completion/bundled-worker.ts","../src/completion/value-completion-resolver.ts","../src/completion/index.ts"],"mappings":"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"}
@@ -1,663 +0,0 @@
1
- import { J as ResolvedFieldMeta, _ as AnyCommand, d as ResolvedExpandCandidate, h as DynamicCompletionResolver, u as ExpandCompletion, v as ArgsSchema, x as Command } from "./arg-registry-DDJpsUea.cjs";
2
- import { z } from "zod";
3
-
4
- //#region src/completion/types.d.ts
5
- /**
6
- * A single resolved entry in an "expand" lookup table.
7
- *
8
- * `key` is the tuple of `dependsOn` values that triggers this entry, in the
9
- * same order as the originating `dependsOn` array. `candidates` is the
10
- * (already deduplicated) list returned by the user's `enumerate` callback
11
- * for that combination.
12
- */
13
- interface ExpandTableEntry {
14
- readonly key: readonly string[];
15
- readonly candidates: readonly ResolvedExpandCandidate[];
16
- }
17
- /**
18
- * Supported shell types for completion
19
- */
20
- type ShellType = "bash" | "zsh" | "fish";
21
- /**
22
- * Completion script generation mode.
23
- *
24
- * - `dispatcher`: small runtime script that resolves the executable visible on
25
- * PATH at TAB time and delegates to its `__complete` command.
26
- * - `static`: self-contained script with command metadata baked in at
27
- * generation time.
28
- */
29
- type CompletionMode = "dispatcher" | "static";
30
- /**
31
- * Optional published worker artifact lookup.
32
- *
33
- * Paths are resolved relative to the visible executable's real directory.
34
- * Templates may include `{shell}`, `{ext}`, and `{program}`.
35
- */
36
- interface BundledWorkerOptions {
37
- /** Disable bundled-worker lookup while keeping cache/dynamic fallbacks. */
38
- disabled?: boolean | undefined;
39
- /** Shell-specific worker paths relative to the executable directory. */
40
- relativePaths?: Partial<Record<ShellType, readonly string[]>> | undefined;
41
- /**
42
- * Let dispatcher scripts ask the CLI for `__completion-worker-path <shell>`
43
- * when package-relative lookup misses. Disabled by default because it starts
44
- * the CLI process on that miss path.
45
- */
46
- queryCommand?: boolean | undefined;
47
- }
48
- /**
49
- * Options for completion generation
50
- */
51
- interface CompletionOptions {
52
- /** The shell type to generate completion for */
53
- shell: ShellType;
54
- /** The command name as it will be invoked */
55
- programName: string;
56
- /** Include subcommand completions (default: true) */
57
- includeSubcommands?: boolean;
58
- /** Include description in completions where supported (default: true) */
59
- includeDescriptions?: boolean;
60
- /**
61
- * Completion script mode.
62
- *
63
- * `generateCompletion` defaults to `static` when this is omitted. The
64
- * `completion <shell>` subcommand passes `dispatcher` explicitly by default.
65
- */
66
- mode?: CompletionMode;
67
- /** Global args schema for deriving global options in completion */
68
- globalArgsSchema?: ArgsSchema;
69
- /**
70
- * Path to the binary whose mtime is the freshness signature.
71
- * Defaults to `process.argv[1]`.
72
- */
73
- binPath?: string;
74
- /** Program version to embed in the script header. */
75
- programVersion?: string;
76
- /**
77
- * Cache directory for the loader to write the regenerated script into.
78
- * Defaults to `${XDG_CACHE_HOME:-$HOME/.cache}/<programName>` at runtime.
79
- * Setting this hardcodes the location into the generated loader.
80
- */
81
- cacheDir?: string;
82
- /**
83
- * Internal static-worker generation hook used by dispatcher caches.
84
- * Worker scripts define suffixed functions and skip shell registration.
85
- */
86
- staticWorker?: {
87
- functionSuffix: string;
88
- };
89
- /** Published static-worker artifact lookup used by dispatcher mode. */
90
- bundledWorker?: BundledWorkerOptions | undefined;
91
- }
92
- /**
93
- * Value completion specification for shell scripts.
94
- *
95
- * Discriminated by `type`. The `dynamic` variant carries a JS resolver that
96
- * the static shell scripts delegate to via `<program> __complete`. All
97
- * variants share the same optional metadata fields (left undefined where
98
- * inapplicable) so consumers can read `vc.choices`/`vc.extensions`/etc.
99
- * without narrowing first.
100
- */
101
- type ValueCompletion = ({
102
- /** Completion type */type: "choices" | "file" | "directory" | "command" | "none"; /** List of valid choices (for "choices" type) */
103
- choices?: string[]; /** Shell command for dynamic completion (for "command" type) */
104
- shellCommand?: string;
105
- resolve?: never;
106
- dependsOn?: never;
107
- table?: never;
108
- } & ({
109
- extensions?: string[];
110
- matcher?: never;
111
- } | {
112
- /** Glob patterns for file matching (for "file" type) */matcher?: string[];
113
- extensions?: never;
114
- })) | {
115
- /** In-process dynamic completion via JS callback. */type: "dynamic";
116
- resolve: DynamicCompletionResolver;
117
- choices?: never;
118
- shellCommand?: never;
119
- extensions?: never;
120
- matcher?: never;
121
- dependsOn?: never;
122
- table?: never;
123
- } | {
124
- /**
125
- * Pre-enumerated completion baked into the generated shell script.
126
- * The `table` is the cartesian product of the `dependsOn` arg values
127
- * (each having a static `choices` or enum schema). At completion time
128
- * the shell dispatches on the runtime values of those args — no Node
129
- * is spawned.
130
- */
131
- type: "expand";
132
- dependsOn: readonly string[];
133
- table: readonly ExpandTableEntry[];
134
- choices?: never;
135
- shellCommand?: never;
136
- resolve?: never;
137
- extensions?: never;
138
- matcher?: never;
139
- } | {
140
- /**
141
- * Runtime form of `completion.custom.expand` used by `__complete`.
142
- * The dispatcher invokes `__complete` at TAB time, so it can call the
143
- * user's `enumerate` function against the already typed dependency
144
- * values instead of baking a table into the shell script.
145
- */
146
- type: "runtime-expand";
147
- dependsOn: readonly string[];
148
- enumerate: (deps: Readonly<Record<string, string>>) => ReadonlyArray<string | {
149
- value: string;
150
- description?: string;
151
- }>;
152
- choices?: never;
153
- shellCommand?: never;
154
- resolve?: never;
155
- extensions?: never;
156
- matcher?: never;
157
- table?: never;
158
- };
159
- /**
160
- * Information about a completable option
161
- */
162
- interface CompletableOption {
163
- /** Long option name (e.g., "verbose") */
164
- name: string;
165
- /** CLI name (kebab-case, e.g., "dry-run") */
166
- cliName: string;
167
- /**
168
- * Aliases for this option (both short and long).
169
- * 1-char entries are short (`-v`); multi-char entries are long (`--to-be`).
170
- */
171
- alias?: string[] | undefined;
172
- /**
173
- * Negation name to advertise in shell completions (no `--` prefix),
174
- * or `undefined` to hide the negation. Mirrors `ResolvedFieldMeta.negationDisplay`.
175
- */
176
- negation?: string | undefined;
177
- /** Description for the negation option (when distinct from the main description) */
178
- negationDescription?: string | undefined;
179
- /**
180
- * Whether the runtime parser accepts the implicit `--no-<cliName>` (and
181
- * camelCase) form for this boolean option. False when the user set
182
- * `negation: false` (suppressed) or `negation: <custom name>` (only the
183
- * custom name is accepted). Used by the completion context parser so
184
- * dynamic resolvers see the same `parsedArgs` state the runtime would
185
- * compute.
186
- */
187
- defaultNegationAccepted?: boolean;
188
- /** Description for completion */
189
- description?: string | undefined;
190
- /**
191
- * True when this option originates from a `globalArgsSchema` and was
192
- * propagated into every subcommand frame. The runtime parser keeps
193
- * global values visible across subcommand descent, so shell generators
194
- * must keep their tracker buckets separate from per-frame state.
195
- */
196
- isGlobal?: boolean;
197
- /** Whether this option takes a value */
198
- takesValue: boolean;
199
- /** Type of value expected */
200
- valueType: "string" | "number" | "boolean" | "array" | "unknown";
201
- /** Whether the option is required */
202
- required: boolean;
203
- /** Value completion specification */
204
- valueCompletion?: ValueCompletion | undefined;
205
- }
206
- /**
207
- * Information about a positional argument for completion
208
- */
209
- interface CompletablePositional {
210
- /** Field name */
211
- name: string;
212
- /** CLI name (kebab-case) */
213
- cliName: string;
214
- /** Position index (0-based) */
215
- position: number;
216
- /** Description */
217
- description?: string | undefined;
218
- /** Whether required */
219
- required: boolean;
220
- /** Whether this positional accepts multiple values (array type) */
221
- variadic?: boolean | undefined;
222
- /** Value completion specification */
223
- valueCompletion?: ValueCompletion | undefined;
224
- }
225
- /**
226
- * Information about a subcommand for completion
227
- */
228
- interface CompletableSubcommand {
229
- /** Subcommand name */
230
- name: string;
231
- /** Subcommand description */
232
- description?: string | undefined;
233
- /** Alternative names (aliases) for this subcommand */
234
- aliases?: string[] | undefined;
235
- /** Nested subcommands */
236
- subcommands: CompletableSubcommand[];
237
- /** Options for this subcommand */
238
- options: CompletableOption[];
239
- /** Positional arguments */
240
- positionals: CompletablePositional[];
241
- }
242
- /**
243
- * Extracted completion data from a command
244
- */
245
- interface CompletionData {
246
- /** The root command */
247
- command: CompletableSubcommand;
248
- /** Program name */
249
- programName: string;
250
- /** Global options (available to all subcommands) */
251
- globalOptions: CompletableOption[];
252
- }
253
- /**
254
- * Result of completion generation
255
- */
256
- interface CompletionResult {
257
- /** The generated completion script */
258
- script: string;
259
- /** The shell type this script is for */
260
- shell: ShellType;
261
- /** Instructions for installing the completion */
262
- installInstructions: string;
263
- }
264
- /**
265
- * Generator function type for shell completions
266
- */
267
- type CompletionGenerator = (command: AnyCommand, options: CompletionOptions) => CompletionResult;
268
- //#endregion
269
- //#region src/completion/dynamic/context-parser.d.ts
270
- /**
271
- * Completion type indicates what kind of completion is expected
272
- */
273
- type CompletionType = "subcommand" | "option-name" | "option-value" | "positional";
274
- /**
275
- * Context for completion at current cursor position
276
- */
277
- interface CompletionContext {
278
- /** Subcommand path from root (e.g., ["plugin", "add"]) */
279
- subcommandPath: string[];
280
- /** The resolved command at current path */
281
- currentCommand: AnyCommand;
282
- /** Current word being typed (may be partial) */
283
- currentWord: string;
284
- /** Previous word (useful for option value detection) */
285
- previousWord: string;
286
- /** What type of completion is expected */
287
- completionType: CompletionType;
288
- /** Target option when completing option value */
289
- targetOption?: CompletableOption | undefined;
290
- /** Positional index when completing positional argument */
291
- positionalIndex?: number | undefined;
292
- /** Available options for current command */
293
- options: CompletableOption[];
294
- /** Available subcommands */
295
- subcommands: string[];
296
- /** Available positionals */
297
- positionals: CompletablePositional[];
298
- /** Options already used (to avoid duplicates) */
299
- usedOptions: Set<string>;
300
- /** Number of positional arguments already provided */
301
- providedPositionalCount: number;
302
- /**
303
- * Best-effort parsed values for the CURRENT command, keyed by camelCase
304
- * field name. Includes positionals (single value or string[] for variadic
305
- * positionals) and options (string for scalars, string[] for array
306
- * options). Zod validation is NOT applied — values are raw strings.
307
- */
308
- parsedArgs: Record<string, unknown>;
309
- /**
310
- * Values already supplied for the option/positional currently being
311
- * completed (for de-duplicating array options and oneof exclusivity in
312
- * dynamic resolvers).
313
- */
314
- previousValues: string[];
315
- }
316
- /**
317
- * Parse completion context from command line arguments
318
- *
319
- * @param argv - Arguments after the program name (e.g., ["build", "--fo"])
320
- * @param rootCommand - The root command
321
- * @param globalArgsSchema - Optional global args. When provided, options
322
- * derived from this schema are merged into every command level so dynamic
323
- * resolvers attached to global options can be reached from any subcommand.
324
- * @returns Completion context
325
- */
326
- declare function parseCompletionContext(argv: string[], rootCommand: AnyCommand, globalArgsSchema?: ArgsSchema): CompletionContext;
327
- //#endregion
328
- //#region src/completion/dynamic/candidate-generator.d.ts
329
- /**
330
- * Completion directive flags (bitwise)
331
- */
332
- declare const CompletionDirective: {
333
- /** Default completion behavior */readonly Default: 0; /** Don't add space after completion */
334
- readonly NoSpace: 1; /** Don't offer file completion (even if no other completions) */
335
- readonly NoFileCompletion: 2; /** Filter completions using current word as prefix */
336
- readonly FilterPrefix: 4; /** Keep the order of completions */
337
- readonly KeepOrder: 8; /** Trigger file completion */
338
- readonly FileCompletion: 16; /** Trigger directory completion */
339
- readonly DirectoryCompletion: 32; /** Error occurred during completion */
340
- readonly Error: 64;
341
- };
342
- /**
343
- * A completion candidate
344
- */
345
- interface CompletionCandidate {
346
- /** The completion value */
347
- value: string;
348
- /** Optional description */
349
- description?: string | undefined;
350
- /** Type hint for display purposes */
351
- type?: "option" | "subcommand" | "value" | "file" | "directory";
352
- }
353
- /**
354
- * Result of candidate generation
355
- */
356
- interface CandidateResult {
357
- /** Completion candidates */
358
- candidates: CompletionCandidate[];
359
- /** Directive flags for shell behavior */
360
- directive: number;
361
- /** File extensions for shell-native filtering (e.g., ["json", "yaml"]) */
362
- fileExtensions?: string[] | undefined;
363
- /** Glob patterns for shell-native file matching (e.g., [".env.*"]) */
364
- fileMatchers?: string[] | undefined;
365
- }
366
- /**
367
- * Options for candidate generation.
368
- */
369
- interface GenerateCandidatesOptions {
370
- /**
371
- * Target shell. Forwarded to dynamic resolvers so they can vary output
372
- * (e.g. include descriptions only for shells that render them).
373
- */
374
- shell: ShellType;
375
- }
376
- /**
377
- * Generate completion candidates based on context.
378
- *
379
- * Async because dynamic resolvers may return promises. Sync completion
380
- * sources (choices/file/directory/command/none, subcommand, option name)
381
- * still resolve synchronously and the await is a no-op for them.
382
- *
383
- * Inline option-value prefixes (`--field=foo`) on the option-value path
384
- * are stripped here so resolvers and post-processing always see the
385
- * value portion regardless of whether the caller pre-normalized.
386
- */
387
- declare function generateCandidates(context: CompletionContext, options: GenerateCandidatesOptions): Promise<CandidateResult>;
388
- //#endregion
389
- //#region src/completion/dynamic/complete-command.d.ts
390
- /**
391
- * Schema for the __complete command
392
- */
393
- declare const completeArgsSchema: z.ZodObject<{
394
- shell: z.ZodEnum<{
395
- bash: "bash";
396
- zsh: "zsh";
397
- fish: "fish";
398
- }>;
399
- args: z.ZodDefault<z.ZodArray<z.ZodString>>;
400
- }, z.core.$strip>;
401
- type CompleteArgs = z.infer<typeof completeArgsSchema>;
402
- /**
403
- * Create the dynamic completion command
404
- *
405
- * @param rootCommand - The root command to generate completions for
406
- * @param programName - The program name (optional, defaults to rootCommand.name)
407
- * @param globalArgsSchema - Global args schema. Forwarded to
408
- * `parseCompletionContext` so resolvers attached to global options remain
409
- * reachable at every subcommand level.
410
- * @returns A command that outputs completion candidates
411
- */
412
- declare function createDynamicCompleteCommand(rootCommand: AnyCommand, _programName?: string, globalArgsSchema?: ArgsSchema): Command<typeof completeArgsSchema, CompleteArgs, any>;
413
- /**
414
- * Check if a command tree contains the __complete command
415
- */
416
- declare function hasCompleteCommand(command: AnyCommand): boolean;
417
- //#endregion
418
- //#region src/completion/dynamic/shell-formatter.d.ts
419
- /**
420
- * Options for shell-specific formatting
421
- */
422
- interface ShellFormatOptions {
423
- /** Target shell type */
424
- shell: ShellType;
425
- /** Current word being completed (used for prefix filtering) */
426
- currentWord: string;
427
- /** For bash: the prefix before '=' in --opt=value completions */
428
- inlinePrefix?: string | undefined;
429
- }
430
- /**
431
- * Format completion candidates for the specified shell
432
- *
433
- * @returns Shell-ready output string (lines separated by newline, last line is :directive)
434
- */
435
- declare function formatForShell(result: CandidateResult, options: ShellFormatOptions): string;
436
- //#endregion
437
- //#region src/completion/extractor.d.ts
438
- /**
439
- * Extract positional arguments from a command
440
- */
441
- declare function extractPositionals(command: AnyCommand): ResolvedFieldMeta[];
442
- /**
443
- * Extract completion data from a command tree
444
- *
445
- * @param command - The root command
446
- * @param programName - Program name for completion scripts
447
- * @param globalArgsSchema - Optional global args schema. When provided, global options
448
- * are derived from this schema instead of the root command's options.
449
- */
450
- declare function extractCompletionData(command: AnyCommand, programName: string, globalArgsSchema?: ArgsSchema, validateOnly?: boolean): CompletionData;
451
- //#endregion
452
- //#region src/completion/bundled-worker.d.ts
453
- interface GenerateBundledCompletionWorkerOptions {
454
- /** CLI binary or built JS entry file to invoke. */
455
- bin: string;
456
- /** Program name embedded in completion metadata. */
457
- programName: string;
458
- /** Shell worker to generate. */
459
- shell: ShellType;
460
- /** Output path. Defaults to `dist/completion/<shell>-worker.<ext>`. */
461
- outputPath?: string | undefined;
462
- /** Verify that `__completion-worker-path <shell>` resolves to the generated file. */
463
- verify?: boolean | undefined;
464
- /** Working directory used for relative paths. Defaults to `process.cwd()`. */
465
- cwd?: string | undefined;
466
- /** Extra environment passed to the target binary. */
467
- env?: Readonly<Record<string, string | undefined>> | undefined;
468
- /** Suppress the success message. */
469
- quiet?: boolean | undefined;
470
- }
471
- interface GenerateBundledCompletionWorkerResult {
472
- /** Absolute generated worker path. */
473
- outputPath: string;
474
- /** Generated file size in bytes. */
475
- size: number;
476
- /** Absolute path reported by `__completion-worker-path`, when verified. */
477
- reportedPath?: string | undefined;
478
- }
479
- declare function bundledWorkerShellExtension(shell: ShellType): string;
480
- declare function defaultBundledWorkerOutputPath(shell: ShellType): string;
481
- declare function validateBundledWorkerFile(path: string, programName: string, shell: ShellType): void;
482
- declare function generateBundledCompletionWorker(options: GenerateBundledCompletionWorkerOptions): Promise<GenerateBundledCompletionWorkerResult>;
483
- //#endregion
484
- //#region src/completion/value-completion-resolver.d.ts
485
- /**
486
- * Sentinel returned when a field uses `completion.custom.expand`. The static
487
- * extractor recognises this and replaces it with a fully resolved
488
- * `{ type: "expand", ... }` ValueCompletion after sibling args' static
489
- * values are known. Internal: never assigned onto `CompletableOption` /
490
- * `CompletablePositional` directly; callers stash it in a side map keyed by
491
- * field name and patch the resolved spec in afterwards.
492
- */
493
- interface PendingExpandValueCompletion {
494
- type: "pending-expand";
495
- spec: ExpandCompletion;
496
- }
497
- /**
498
- * Minimal field interface needed for resolving value completion.
499
- * Both ResolvedFieldMeta and inline context-parser types satisfy this.
500
- */
501
- interface ValueCompletionField {
502
- completion?: ({
503
- type?: string;
504
- custom?: {
505
- choices?: string[];
506
- shellCommand?: string;
507
- resolve?: DynamicCompletionResolver;
508
- expand?: ExpandCompletion;
509
- };
510
- } & ({
511
- extensions?: string[];
512
- matcher?: never;
513
- } | {
514
- matcher?: string[];
515
- extensions?: never;
516
- })) | undefined;
517
- enumValues?: string[] | undefined;
518
- /** Field name surfaced in error messages when custom variants are mixed. */
519
- name?: string;
520
- }
521
- /**
522
- * Resolve value completion from field metadata.
523
- *
524
- * Priority (within `custom`): `expand` > `resolve` > `choices` > `shellCommand`.
525
- * Specifying more than one of these on the same field throws so the
526
- * misconfiguration surfaces at command-definition time rather than at
527
- * completion time. The `expand` variant returns a sentinel — the extractor
528
- * resolves it against sibling fields and replaces the sentinel with a
529
- * `{ type: "expand", table, dependsOn }` entry.
530
- *
531
- * Outside `custom`: explicit `type` (file/directory/none) > auto-detected
532
- * enum values from the schema.
533
- */
534
- declare function resolveValueCompletion(field: ValueCompletionField): ValueCompletion | PendingExpandValueCompletion | undefined;
535
- //#endregion
536
- //#region src/completion/index.d.ts
537
- /**
538
- * Generate completion script for the specified shell
539
- */
540
- declare function generateCompletion(command: AnyCommand, options: CompletionOptions): CompletionResult;
541
- /**
542
- * Get the list of supported shells
543
- */
544
- declare function getSupportedShells(): ShellType[];
545
- /**
546
- * Detect the current shell from environment
547
- */
548
- declare function detectShell(): ShellType | null;
549
- /**
550
- * Schema for the completion command arguments
551
- */
552
- declare const completionArgsSchema: z.ZodObject<{
553
- shell: z.ZodOptional<z.ZodEnum<{
554
- bash: "bash";
555
- zsh: "zsh";
556
- fish: "fish";
557
- }>>;
558
- instructions: z.ZodDefault<z.ZodBoolean>;
559
- loader: z.ZodDefault<z.ZodBoolean>;
560
- install: z.ZodDefault<z.ZodBoolean>;
561
- static: z.ZodDefault<z.ZodBoolean>;
562
- dispatcher: z.ZodDefault<z.ZodBoolean>;
563
- worker: z.ZodDefault<z.ZodBoolean>;
564
- }, z.core.$strip>;
565
- type CompletionArgs = z.infer<typeof completionArgsSchema>;
566
- declare const refreshArgsSchema: z.ZodObject<{
567
- shell: z.ZodEnum<{
568
- bash: "bash";
569
- zsh: "zsh";
570
- fish: "fish";
571
- }>;
572
- target: z.ZodOptional<z.ZodString>;
573
- static: z.ZodDefault<z.ZodBoolean>;
574
- worker: z.ZodDefault<z.ZodBoolean>;
575
- }, z.core.$strip>;
576
- type RefreshArgs = z.infer<typeof refreshArgsSchema>;
577
- declare const workerPathArgsSchema: z.ZodObject<{
578
- shell: z.ZodEnum<{
579
- bash: "bash";
580
- zsh: "zsh";
581
- fish: "fish";
582
- }>;
583
- }, z.core.$strip>;
584
- type WorkerPathArgs = z.infer<typeof workerPathArgsSchema>;
585
- /**
586
- * Create a completion subcommand for your CLI
587
- *
588
- * This creates a ready-to-use subcommand that generates completion scripts.
589
- *
590
- * @example
591
- * ```typescript
592
- * const mainCommand = defineCommand({
593
- * name: "mycli",
594
- * subCommands: {
595
- * completion: createCompletionCommand(mainCommand)
596
- * }
597
- * });
598
- * ```
599
- */
600
- declare function createCompletionCommand(rootCommand: AnyCommand, programName?: string, globalArgsSchema?: ArgsSchema, extra?: {
601
- cacheDir?: string;
602
- programVersion?: string;
603
- bundledWorker?: BundledWorkerOptions;
604
- }): Command<typeof completionArgsSchema, CompletionArgs, any>;
605
- /**
606
- * Hidden subcommand that the runMain background hook spawns. It does
607
- * the same stat-compare + atomic rewrite as the rc loader, but in a
608
- * detached child process so it's invisible to the user.
609
- */
610
- declare function createRefreshCompletionCommand(rootCommand: AnyCommand, programName: string, extra?: {
611
- cacheDir?: string;
612
- programVersion?: string;
613
- globalArgsSchema?: ArgsSchema;
614
- bundledWorker?: BundledWorkerOptions;
615
- }): Command<typeof refreshArgsSchema, RefreshArgs, any>;
616
- declare function createCompletionWorkerPathCommand(programName: string, extra?: {
617
- binPath?: string;
618
- bundledWorker?: BundledWorkerOptions;
619
- }): Command<typeof workerPathArgsSchema, WorkerPathArgs, any>;
620
- /**
621
- * Options for withCompletionCommand
622
- */
623
- interface WithCompletionOptions {
624
- /** Override the program name (defaults to command.name) */
625
- programName?: string;
626
- /** Global args schema for deriving global options in completion */
627
- globalArgsSchema?: ArgsSchema;
628
- /**
629
- * Hardcode the cache directory used by the rc loader and the
630
- * background refresh. When omitted, the loader derives
631
- * `${XDG_CACHE_HOME:-$HOME/.cache}/<programName>` at runtime, which
632
- * is the right answer for almost every CLI.
633
- */
634
- cacheDir?: string;
635
- /** Program version embedded in the script header. */
636
- programVersion?: string;
637
- /** Published worker artifact lookup used by dispatcher mode. */
638
- bundledWorker?: BundledWorkerOptions;
639
- }
640
- /**
641
- * Wrap a command with a completion subcommand
642
- *
643
- * This avoids circular references that occur when a command references itself
644
- * in its subCommands (e.g., for completion generation).
645
- *
646
- * @param command - The command to wrap
647
- * @param options - Options including programName
648
- * @returns A new command with the completion subcommand added
649
- *
650
- * @example
651
- * ```typescript
652
- * const mainCommand = withCompletionCommand(
653
- * defineCommand({
654
- * name: "mycli",
655
- * subCommands: { ... },
656
- * }),
657
- * );
658
- * ```
659
- */
660
- declare function withCompletionCommand<T extends AnyCommand>(command: T, options?: string | WithCompletionOptions): T;
661
- //#endregion
662
- export { BundledWorkerOptions as A, CandidateResult as C, CompletionContext as D, generateCandidates as E, CompletionMode as F, CompletionOptions as I, CompletionResult as L, CompletableSubcommand as M, CompletionData as N, CompletionType as O, CompletionGenerator as P, ShellType as R, hasCompleteCommand as S, CompletionDirective as T, extractCompletionData as _, detectShell as a, formatForShell as b, withCompletionCommand as c, GenerateBundledCompletionWorkerOptions as d, GenerateBundledCompletionWorkerResult as f, validateBundledWorkerFile as g, generateBundledCompletionWorker as h, createRefreshCompletionCommand as i, CompletableOption as j, parseCompletionContext as k, ValueCompletionField as l, defaultBundledWorkerOutputPath as m, createCompletionCommand as n, generateCompletion as o, bundledWorkerShellExtension as p, createCompletionWorkerPathCommand as r, getSupportedShells as s, WithCompletionOptions as t, resolveValueCompletion as u, extractPositionals as v, CompletionCandidate as w, createDynamicCompleteCommand as x, ShellFormatOptions as y };
663
- //# sourceMappingURL=index-WyViqW59.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-WyViqW59.d.cts","names":[],"sources":["../src/completion/types.ts","../src/completion/dynamic/context-parser.ts","../src/completion/dynamic/candidate-generator.ts","../src/completion/dynamic/complete-command.ts","../src/completion/dynamic/shell-formatter.ts","../src/completion/extractor.ts","../src/completion/bundled-worker.ts","../src/completion/value-completion-resolver.ts","../src/completion/index.ts"],"mappings":"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"}