@boneskull/bargs 0.1.1 → 2.0.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 +100 -11
- package/dist/bargs.cjs +22 -10
- package/dist/bargs.cjs.map +1 -1
- package/dist/bargs.d.cts +6 -6
- package/dist/bargs.d.cts.map +1 -1
- package/dist/bargs.d.ts +6 -6
- package/dist/bargs.d.ts.map +1 -1
- package/dist/bargs.js +23 -11
- package/dist/bargs.js.map +1 -1
- package/dist/help.cjs.map +1 -1
- package/dist/help.d.cts +2 -2
- package/dist/help.d.cts.map +1 -1
- package/dist/help.d.ts +2 -2
- package/dist/help.d.ts.map +1 -1
- package/dist/help.js.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +8 -7
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +8 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/opt.cjs +51 -7
- package/dist/opt.cjs.map +1 -1
- package/dist/opt.d.cts +50 -10
- package/dist/opt.d.cts.map +1 -1
- package/dist/opt.d.ts +50 -10
- package/dist/opt.d.ts.map +1 -1
- package/dist/opt.js +51 -7
- package/dist/opt.js.map +1 -1
- package/dist/parser.cjs +118 -29
- package/dist/parser.cjs.map +1 -1
- package/dist/parser.d.cts +37 -10
- package/dist/parser.d.cts.map +1 -1
- package/dist/parser.d.ts +37 -10
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +113 -26
- package/dist/parser.js.map +1 -1
- package/dist/types.d.cts +207 -35
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +207 -35
- package/dist/types.d.ts.map +1 -1
- package/dist/validate.cjs +28 -17
- package/dist/validate.cjs.map +1 -1
- package/dist/validate.d.cts.map +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +28 -17
- package/dist/validate.js.map +1 -1
- package/package.json +1 -1
package/dist/types.d.cts
CHANGED
|
@@ -15,15 +15,37 @@
|
|
|
15
15
|
*/
|
|
16
16
|
import type { ThemeInput } from "./theme.cjs";
|
|
17
17
|
/**
|
|
18
|
-
*
|
|
19
|
-
*
|
|
18
|
+
* Type-erased command config for use in collections and constraints.
|
|
19
|
+
*
|
|
20
|
+
* WARNING: The handler uses `any` which will leak into inline command handlers.
|
|
21
|
+
* For proper type inference in command handlers, use one of these patterns:
|
|
22
|
+
*
|
|
23
|
+
* 1. Use `bargs.command<typeof globalOptions>()({...})` to define commands
|
|
24
|
+
* 2. Define commands in a separate variable with explicit types
|
|
25
|
+
* 3. Add explicit type annotations to handler parameters
|
|
26
|
+
*
|
|
27
|
+
* @example // Option 1: Use bargs.command() (recommended) const myCmd =
|
|
28
|
+
* bargs.command<typeof globalOpts>()({ handler: ({ values }) => { ... } //
|
|
29
|
+
* values is properly typed });
|
|
30
|
+
*
|
|
31
|
+
* // Option 2: Explicit parameter types handler: ({ values }: BargsResult<...>)
|
|
32
|
+
* => { ... }
|
|
20
33
|
*/
|
|
21
34
|
export interface AnyCommandConfig {
|
|
22
35
|
description: string;
|
|
23
|
-
handler: (
|
|
36
|
+
handler: (result: any) => Promise<void> | void;
|
|
24
37
|
options?: OptionsSchema;
|
|
25
38
|
positionals?: PositionalsSchema;
|
|
39
|
+
transforms?: TransformsConfig<any, any, any, any>;
|
|
26
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Command config shape used for type constraints/inference.
|
|
43
|
+
*
|
|
44
|
+
* Intentionally omits `handler` so inline command handlers are not
|
|
45
|
+
* context-typed as `(result: any) => …` before `CommandsInput` can apply the
|
|
46
|
+
* computed handler signature.
|
|
47
|
+
*/
|
|
48
|
+
export type AnyCommandConfigInput = Omit<AnyCommandConfig, 'handler'>;
|
|
27
49
|
/**
|
|
28
50
|
* Array option definition (--flag value --flag value2).
|
|
29
51
|
*/
|
|
@@ -35,8 +57,13 @@ export interface ArrayOption extends OptionBase {
|
|
|
35
57
|
}
|
|
36
58
|
/**
|
|
37
59
|
* Main bargs configuration.
|
|
60
|
+
*
|
|
61
|
+
* @typeParam TOptions - Options schema type
|
|
62
|
+
* @typeParam TPositionals - Positionals schema type
|
|
63
|
+
* @typeParam TCommands - Commands record type (undefined for simple CLIs)
|
|
64
|
+
* @typeParam TTransforms - Transforms config type (affects handler input types)
|
|
38
65
|
*/
|
|
39
|
-
export interface BargsConfig<TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema, TCommands extends Record<string,
|
|
66
|
+
export interface BargsConfig<TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema, TCommands extends Record<string, AnyCommandConfigInput> | undefined = undefined, TTransforms extends TransformsConfig<any, any, any, any> | undefined = undefined> {
|
|
40
67
|
args?: string[];
|
|
41
68
|
commands?: TCommands;
|
|
42
69
|
description?: string;
|
|
@@ -46,26 +73,20 @@ export interface BargsConfig<TOptions extends OptionsSchema = OptionsSchema, TPo
|
|
|
46
73
|
* string to disable.
|
|
47
74
|
*/
|
|
48
75
|
epilog?: false | string;
|
|
49
|
-
handler?: Handler<BargsResult<InferOptions<TOptions>, InferPositionals<TPositionals>, undefined>>;
|
|
50
76
|
name: string;
|
|
51
77
|
options?: TOptions;
|
|
52
78
|
positionals?: TPositionals;
|
|
79
|
+
/**
|
|
80
|
+
* Transform functions that modify parsed values before handler execution.
|
|
81
|
+
* Values transform receives InferOptions<TOptions>, positionals transform
|
|
82
|
+
* receives InferPositionals<TPositionals>.
|
|
83
|
+
*/
|
|
84
|
+
transforms?: 0 extends 1 & TTransforms ? TransformsConfig<any, any, any, any> : [TTransforms] extends [undefined] ? TransformsInput<InferOptions<TOptions>, InferPositionals<TPositionals>> : TTransforms;
|
|
53
85
|
version?: string;
|
|
54
86
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
* Commands can be defined in two ways:
|
|
59
|
-
*
|
|
60
|
-
* 1. Using opt.command() - handler receives local options only (legacy)
|
|
61
|
-
* 2. Inline definition - handler can receive both global and local options
|
|
62
|
-
*
|
|
63
|
-
* Note: Top-level `positionals` is not allowed for command-based CLIs. Each
|
|
64
|
-
* command defines its own positionals.
|
|
65
|
-
*/
|
|
66
|
-
export type BargsConfigWithCommands<TOptions extends OptionsSchema = OptionsSchema, TCommands extends Record<string, CommandConfigInput> = Record<string, CommandConfigInput>> = Omit<BargsConfig<TOptions, PositionalsSchema, TCommands>, 'handler' | 'positionals'> & {
|
|
67
|
-
commands: TCommands;
|
|
68
|
-
defaultHandler?: Handler<BargsResult<InferOptions<TOptions>, [], undefined>> | keyof TCommands;
|
|
87
|
+
export type BargsConfigWithCommands<TOptions extends OptionsSchema = OptionsSchema, TCommands extends Record<string, AnyCommandConfigInput> = Record<string, AnyCommandConfigInput>, TTransforms extends TransformsConfig<any, any, any, any> | undefined = undefined> = Omit<BargsConfig<TOptions, PositionalsSchema, TCommands, TTransforms>, 'commands' | 'positionals'> & {
|
|
88
|
+
commands: CommandsInput<TOptions, TTransforms, TCommands> & TCommands;
|
|
89
|
+
defaultHandler?: CommandNames<TCommands> | Handler<BargsResult<InferTransformedValues<InferOptions<TOptions>, TTransforms>, readonly [], undefined>>;
|
|
69
90
|
};
|
|
70
91
|
/**
|
|
71
92
|
* Runtime options for bargs (separate from parsing config).
|
|
@@ -92,26 +113,36 @@ export interface BooleanOption extends OptionBase {
|
|
|
92
113
|
/**
|
|
93
114
|
* Command configuration.
|
|
94
115
|
*
|
|
95
|
-
* The handler receives typed
|
|
96
|
-
*
|
|
97
|
-
*
|
|
116
|
+
* The handler receives typed global options merged with command-specific
|
|
117
|
+
* options, properly transformed. Use `bargs.command<TGlobalOptions,
|
|
118
|
+
* TGlobalTransforms>()` to pass both global options and transforms types for
|
|
119
|
+
* full type inference.
|
|
120
|
+
*
|
|
121
|
+
* @typeParam TGlobalOptions - Global options schema (from parent config)
|
|
122
|
+
* @typeParam TGlobalTransforms - Global transforms config (from parent config)
|
|
123
|
+
* @typeParam TOptions - Command-specific options schema
|
|
124
|
+
* @typeParam TPositionals - Command positionals schema
|
|
125
|
+
* @typeParam TTransforms - Command-level transforms config
|
|
98
126
|
*/
|
|
99
|
-
export interface CommandConfig<TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema> {
|
|
127
|
+
export interface CommandConfig<TGlobalOptions extends OptionsSchema = OptionsSchema, TGlobalTransforms extends TransformsConfig<any, any, any, any> | undefined = undefined, TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema, TTransforms extends TransformsConfig<any, any, any, any> | undefined = undefined> {
|
|
100
128
|
description: string;
|
|
101
|
-
handler: Handler<BargsResult<InferOptions<TOptions> &
|
|
129
|
+
handler: Handler<BargsResult<InferTransformedValues<InferOptions<TOptions> & InferTransformedValues<InferOptions<TGlobalOptions>, TGlobalTransforms>, TTransforms>, InferTransformedPositionals<InferPositionals<TPositionals>, TTransforms>, string>>;
|
|
102
130
|
options?: TOptions;
|
|
103
131
|
positionals?: TPositionals;
|
|
132
|
+
/** Command-level transforms run after top-level transforms */
|
|
133
|
+
transforms?: 0 extends 1 & TTransforms ? TransformsConfig<any, any, any, any> : [TTransforms] extends [undefined] ? TransformsInput<InferOptions<TOptions> & InferTransformedValues<InferOptions<TGlobalOptions>, TGlobalTransforms>, InferPositionals<TPositionals>> : TTransforms;
|
|
104
134
|
}
|
|
105
135
|
/**
|
|
106
|
-
* Command config input type for inline command definitions.
|
|
107
|
-
*
|
|
108
|
-
*
|
|
136
|
+
* Command config input type for inline command definitions. Uses `any` for
|
|
137
|
+
* handler result to accept any handler signature. See AnyCommandConfig for
|
|
138
|
+
* workarounds to get proper type inference.
|
|
109
139
|
*/
|
|
110
140
|
export interface CommandConfigInput {
|
|
111
141
|
description: string;
|
|
112
|
-
handler:
|
|
142
|
+
handler: (result: any) => Promise<void> | void;
|
|
113
143
|
options?: OptionsSchema;
|
|
114
144
|
positionals?: PositionalsSchema;
|
|
145
|
+
transforms?: TransformsConfig<any, any, any, any>;
|
|
115
146
|
}
|
|
116
147
|
/**
|
|
117
148
|
* Count option definition (--verbose --verbose = 2).
|
|
@@ -137,14 +168,19 @@ export interface EnumPositional<T extends string = string> extends PositionalBas
|
|
|
137
168
|
type: 'enum';
|
|
138
169
|
}
|
|
139
170
|
/**
|
|
140
|
-
* Handler
|
|
141
|
-
*
|
|
171
|
+
* Handler function signature. Handler arrays are no longer supported - use
|
|
172
|
+
* transforms for middleware-like sequential processing instead.
|
|
142
173
|
*/
|
|
143
|
-
export type Handler<TResult> = HandlerFn<TResult
|
|
174
|
+
export type Handler<TResult> = HandlerFn<TResult>;
|
|
144
175
|
/**
|
|
145
176
|
* Single handler function signature.
|
|
146
177
|
*/
|
|
147
178
|
export type HandlerFn<TResult> = (result: TResult) => Promise<void> | void;
|
|
179
|
+
/**
|
|
180
|
+
* Compute the handler result type for a single command. Separating this makes
|
|
181
|
+
* the type easier for TypeScript to evaluate.
|
|
182
|
+
*/
|
|
183
|
+
export type InferCommandResult<TGlobalOptions extends OptionsSchema, TGlobalTransforms extends TransformsConfig<any, any, any, any> | undefined, TCommandOptions extends OptionsSchema | undefined, TCommandPositionals extends PositionalsSchema | undefined, TCommandTransforms extends TransformsConfig<any, any, any, any> | undefined> = BargsResult<InferTransformedValues<InferTransformedValues<InferOptions<TGlobalOptions> & (TCommandOptions extends OptionsSchema ? InferOptions<TCommandOptions> : Record<string, never>), TGlobalTransforms>, TCommandTransforms>, InferTransformedPositionals<TCommandPositionals extends PositionalsSchema ? InferPositionals<TCommandPositionals> : readonly [], TCommandTransforms>, string>;
|
|
148
184
|
/**
|
|
149
185
|
* Infer the TypeScript type from an option definition.
|
|
150
186
|
*/
|
|
@@ -160,11 +196,59 @@ export type InferOptions<T extends OptionsSchema> = {
|
|
|
160
196
|
*/
|
|
161
197
|
export type InferPositional<T extends PositionalDef> = T extends NumberPositional ? T['required'] extends true ? number : T['default'] extends number ? number : number | undefined : T extends StringPositional ? T['required'] extends true ? string : T['default'] extends string ? string : string | undefined : T extends EnumPositional<infer E> ? T['required'] extends true ? E : T['default'] extends E ? E : E | undefined : T extends VariadicPositional ? T['items'] extends 'number' ? number[] : string[] : never;
|
|
162
198
|
/**
|
|
163
|
-
*
|
|
199
|
+
* Recursively build a tuple type from a positionals schema array. Preserves
|
|
200
|
+
* tuple structure (order and length) rather than producing a mapped object
|
|
201
|
+
* type.
|
|
164
202
|
*/
|
|
165
|
-
export type InferPositionals<T extends PositionalsSchema> =
|
|
166
|
-
|
|
203
|
+
export type InferPositionals<T extends PositionalsSchema> = T extends readonly [
|
|
204
|
+
infer First,
|
|
205
|
+
...infer Rest
|
|
206
|
+
] ? First extends PositionalDef ? Rest extends PositionalsSchema ? readonly [InferPositional<First>, ...InferPositionals<Rest>] : readonly [InferPositional<First>] : readonly [] : T extends readonly [infer Only] ? Only extends PositionalDef ? readonly [InferPositional<Only>] : readonly [] : T extends readonly [] ? readonly [] : readonly InferPositional<T[number]>[];
|
|
207
|
+
/**
|
|
208
|
+
* Compute proper handler types for each command in a commands record.
|
|
209
|
+
*
|
|
210
|
+
* This mapped type enables type inference for inline command definitions by
|
|
211
|
+
* computing the handler signature from each command's options, positionals, and
|
|
212
|
+
* transforms - plus the global options and transforms from the parent config.
|
|
213
|
+
*
|
|
214
|
+
* The handler receives:
|
|
215
|
+
*
|
|
216
|
+
* - Values: global options + command options, transformed by global then command
|
|
217
|
+
* transforms
|
|
218
|
+
* - Positionals: command positionals, transformed by command transforms
|
|
219
|
+
* - Command: the command name (string)
|
|
220
|
+
*
|
|
221
|
+
* Commands defined with `opt.command()` (returning `CommandConfig`) are passed
|
|
222
|
+
* through unchanged to preserve their existing handler types. Only inline
|
|
223
|
+
* command definitions get the computed handler type.
|
|
224
|
+
*
|
|
225
|
+
* @typeParam TGlobalOptions - Top-level options schema
|
|
226
|
+
* @typeParam TGlobalTransforms - Top-level transforms config
|
|
227
|
+
* @typeParam TCommands - Record of command configurations
|
|
228
|
+
*/
|
|
229
|
+
export type InferredCommands<TGlobalOptions extends OptionsSchema, TGlobalTransforms extends TransformsConfig<any, any, any, any> | undefined, TCommands extends Record<string, AnyCommandConfigInput>> = {
|
|
230
|
+
[K in keyof TCommands]: TCommands[K] extends CommandConfig<infer _TGlobalOpts, infer _TGlobalTrans, infer _TOpts, infer _TPos, infer _TTrans> ? TCommands[K] : {
|
|
231
|
+
description: TCommands[K]['description'];
|
|
232
|
+
handler: Handler<InferCommandResult<TGlobalOptions, TGlobalTransforms, NonNullable<TCommands[K]['options']> extends OptionsSchema ? NonNullable<TCommands[K]['options']> : undefined, NonNullable<TCommands[K]['positionals']> extends PositionalsSchema ? NonNullable<TCommands[K]['positionals']> : undefined, NonNullable<TCommands[K]['transforms']> extends TransformsConfig<any, any, any, any> ? NonNullable<TCommands[K]['transforms']> : undefined>>;
|
|
233
|
+
options?: TCommands[K]['options'];
|
|
234
|
+
positionals?: TCommands[K]['positionals'];
|
|
235
|
+
transforms?: TCommands[K]['transforms'];
|
|
236
|
+
};
|
|
167
237
|
};
|
|
238
|
+
/**
|
|
239
|
+
* Infer the output positionals type from a transforms config. If no positionals
|
|
240
|
+
* transform, output equals input.
|
|
241
|
+
*/
|
|
242
|
+
export type InferTransformedPositionals<TPositionalsIn extends readonly unknown[], TTransforms> = TTransforms extends {
|
|
243
|
+
positionals: PositionalsTransformFn<any, infer TOut>;
|
|
244
|
+
} ? TOut extends readonly unknown[] ? TOut : TPositionalsIn : TPositionalsIn;
|
|
245
|
+
/**
|
|
246
|
+
* Infer the output values type from a transforms config. If no values
|
|
247
|
+
* transform, output equals input.
|
|
248
|
+
*/
|
|
249
|
+
export type InferTransformedValues<TValuesIn, TTransforms> = TTransforms extends {
|
|
250
|
+
values: ValuesTransformFn<any, infer TOut>;
|
|
251
|
+
} ? TOut : TValuesIn;
|
|
168
252
|
/**
|
|
169
253
|
* Number option definition.
|
|
170
254
|
*/
|
|
@@ -194,7 +278,13 @@ export type PositionalDef = EnumPositional<string> | NumberPositional | StringPo
|
|
|
194
278
|
/**
|
|
195
279
|
* Positionals can be a tuple (ordered) or a single variadic.
|
|
196
280
|
*/
|
|
197
|
-
export type PositionalsSchema = PositionalDef[];
|
|
281
|
+
export type PositionalsSchema = readonly PositionalDef[];
|
|
282
|
+
/**
|
|
283
|
+
* Positionals transform function. Receives parsed positionals tuple, returns
|
|
284
|
+
* transformed positionals tuple. The return type becomes the new positionals
|
|
285
|
+
* type for the handler.
|
|
286
|
+
*/
|
|
287
|
+
export type PositionalsTransformFn<TIn extends readonly unknown[], TOut extends readonly unknown[]> = (positionals: TIn) => Promise<TOut> | TOut;
|
|
198
288
|
/**
|
|
199
289
|
* String option definition.
|
|
200
290
|
*/
|
|
@@ -209,6 +299,21 @@ export interface StringPositional extends PositionalBase {
|
|
|
209
299
|
default?: string;
|
|
210
300
|
type: 'string';
|
|
211
301
|
}
|
|
302
|
+
/**
|
|
303
|
+
* Transforms configuration for modifying parsed results before handler
|
|
304
|
+
* execution. Each transform is optional and can be sync or async.
|
|
305
|
+
*/
|
|
306
|
+
export interface TransformsConfig<TValuesIn, TValuesOut, TPositionalsIn extends readonly unknown[], TPositionalsOut extends readonly unknown[]> {
|
|
307
|
+
/** Transform parsed positionals tuple */
|
|
308
|
+
positionals?: PositionalsTransformFn<TPositionalsIn, TPositionalsOut>;
|
|
309
|
+
/** Transform parsed option values */
|
|
310
|
+
values?: ValuesTransformFn<TValuesIn, TValuesOut>;
|
|
311
|
+
}
|
|
312
|
+
/**
|
|
313
|
+
* Values transform function. Receives parsed values, returns transformed
|
|
314
|
+
* values. The return type becomes the new values type for the handler.
|
|
315
|
+
*/
|
|
316
|
+
export type ValuesTransformFn<TIn, TOut> = (values: TIn) => Promise<TOut> | TOut;
|
|
212
317
|
/**
|
|
213
318
|
* Variadic positional (rest args).
|
|
214
319
|
*/
|
|
@@ -216,6 +321,51 @@ export interface VariadicPositional extends PositionalBase {
|
|
|
216
321
|
items: 'number' | 'string';
|
|
217
322
|
type: 'variadic';
|
|
218
323
|
}
|
|
324
|
+
/**
|
|
325
|
+
* Command input type that computes the proper handler signature from the
|
|
326
|
+
* command's own options/positionals schemas. This provides contextual typing
|
|
327
|
+
* for inline command handlers.
|
|
328
|
+
*
|
|
329
|
+
* @typeParam TGlobalOptions - Global options schema from parent config
|
|
330
|
+
* @typeParam TGlobalTransforms - Global transforms from parent config
|
|
331
|
+
* @typeParam TOptions - Command's own options schema
|
|
332
|
+
* @typeParam TPositionals - Command's own positionals schema
|
|
333
|
+
* @typeParam TTransforms - Command's own transforms
|
|
334
|
+
*/
|
|
335
|
+
interface CommandInput<TGlobalOptions extends OptionsSchema, TGlobalTransforms extends TransformsConfig<any, any, any, any> | undefined, TOptions extends OptionsSchema = Record<string, never>, TPositionals extends PositionalsSchema = [], TTransforms extends TransformsConfig<any, any, any, any> | undefined = undefined> {
|
|
336
|
+
description: string;
|
|
337
|
+
handler: Handler<InferCommandResult<TGlobalOptions, TGlobalTransforms, TOptions, TPositionals, TTransforms>>;
|
|
338
|
+
options?: TOptions;
|
|
339
|
+
positionals?: TPositionals;
|
|
340
|
+
transforms?: TTransforms;
|
|
341
|
+
}
|
|
342
|
+
/**
|
|
343
|
+
* Helper type to extract command names from a commands record for
|
|
344
|
+
* defaultHandler typing.
|
|
345
|
+
*/
|
|
346
|
+
type CommandNames<T> = T extends Record<infer K, AnyCommandConfigInput> ? K : never;
|
|
347
|
+
/**
|
|
348
|
+
* Bargs config with commands (requires commands, allows defaultHandler).
|
|
349
|
+
*
|
|
350
|
+
* Commands can be defined in two ways:
|
|
351
|
+
*
|
|
352
|
+
* 1. Using opt.command() - handler receives local options only (legacy)
|
|
353
|
+
* 2. Inline definition - handler receives both global and local options
|
|
354
|
+
*
|
|
355
|
+
* Note: Top-level `positionals` is not allowed for command-based CLIs. Each
|
|
356
|
+
* command defines its own positionals.
|
|
357
|
+
*
|
|
358
|
+
* The `commands` property uses `InferredCommands` to compute proper handler
|
|
359
|
+
* types for inline command definitions. Each command's handler type includes
|
|
360
|
+
* global options merged with command options, transformed appropriately.
|
|
361
|
+
*/
|
|
362
|
+
/**
|
|
363
|
+
* Mapped type that computes the expected command input type for each command in
|
|
364
|
+
* the record. This provides contextual typing for inline command handlers.
|
|
365
|
+
*/
|
|
366
|
+
type CommandsInput<TGlobalOptions extends OptionsSchema, TGlobalTransforms extends TransformsConfig<any, any, any, any> | undefined, TCommands extends Record<string, AnyCommandConfigInput>> = {
|
|
367
|
+
[K in keyof TCommands]: TCommands[K] extends CommandConfig<infer _TGlobalOpts, infer _TGlobalTrans, infer _TOpts, infer _TPos, infer _TTrans> ? TCommands[K] : CommandInput<TGlobalOptions, TGlobalTransforms, NonNullable<TCommands[K]['options']> extends OptionsSchema ? NonNullable<TCommands[K]['options']> : Record<string, never>, NonNullable<TCommands[K]['positionals']> extends PositionalsSchema ? NonNullable<TCommands[K]['positionals']> : [], NonNullable<TCommands[K]['transforms']> extends TransformsConfig<any, any, any, any> ? NonNullable<TCommands[K]['transforms']> : undefined>;
|
|
368
|
+
};
|
|
219
369
|
/**
|
|
220
370
|
* Base properties shared by all option definitions.
|
|
221
371
|
*/
|
|
@@ -240,5 +390,27 @@ interface PositionalBase {
|
|
|
240
390
|
name?: string;
|
|
241
391
|
required?: boolean;
|
|
242
392
|
}
|
|
393
|
+
/**
|
|
394
|
+
* Partial transform config for inline transforms. Structurally compatible with
|
|
395
|
+
* TransformsConfig while providing contextual typing for callback parameters.
|
|
396
|
+
*
|
|
397
|
+
* Note: Because TypeScript cannot infer return types from inline callbacks and
|
|
398
|
+
* flow them to handlers, using inline transforms without explicit typing means
|
|
399
|
+
* the handler won't know about properties added by transforms. For full type
|
|
400
|
+
* safety, either:
|
|
401
|
+
*
|
|
402
|
+
* 1. Define transforms separately with explicit return types
|
|
403
|
+
* 2. Add type annotations to handler parameters
|
|
404
|
+
*
|
|
405
|
+
* @typeParam TValuesIn - The input values type (from parsed options)
|
|
406
|
+
* @typeParam TPositionalsIn - The input positionals type (from parsed
|
|
407
|
+
* positionals)
|
|
408
|
+
*/
|
|
409
|
+
type TransformsInput<TValuesIn, TPositionalsIn extends readonly unknown[]> = {
|
|
410
|
+
/** Transform parsed positionals tuple */
|
|
411
|
+
positionals?: (positionals: TPositionalsIn) => Promise<readonly unknown[]> | readonly unknown[];
|
|
412
|
+
/** Transform parsed option values */
|
|
413
|
+
values?: (values: TValuesIn) => Promise<unknown> | unknown;
|
|
414
|
+
};
|
|
243
415
|
export {};
|
|
244
416
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|