Type alias ConfigOptionMeta<T, M, O>
ConfigOptionMeta<T, M, O>: { default?: ValidValue<T, M> & (O extends number[] | string[] ? M extends false ? O[number] : O[number][] : unknown); delim?: M extends true ? string : never; description?: string; hint?: T extends "boolean" ? never : string; short?: string; type?: T; validOptions?: O; validate?: ((v) => v is ValidValue<T, M>) | ((v) => boolean); } & (M extends false ? { multiple?: false; } : M extends true ? { multiple: true; } : { multiple?: boolean; })
Type Parameters
-
-
M extends boolean = boolean
-
O extends undefined | (T extends "boolean"
? never
: T extends "string"
? readonly string[]
: T extends "number"
? readonly number[]
: readonly number[] | readonly string[]) = undefined | (T extends "boolean"
? never
: T extends "string"
? readonly string[]
: T extends "number"
? readonly number[]
: readonly number[] | readonly string[])
Type declaration
-
Optional
default?: ValidValue<T, M> & (O extends number[] | string[]
? M extends false
? O[number]
: O[number][]
: unknown)
-
Optional
delim?: M extends true
? string
: never
-
Optional
description?: string
-
Optional
hint?: T extends "boolean"
? never
: string
-
Optional
short?: string
-
Optional
type?: T
-
Optional
validOptions?: O
-
Optional
validate?: ((v) => v is ValidValue<T, M>) | ((v) => boolean)
The meta information for a config option definition, when the type and multiple values can be inferred by the method being used