Function option

  • Factory function to create an OptionConfig object with strong typing.

    Type Parameters

    • const T extends
          | (
              { type: "string"; customType?: OptionCustomType<"string"> | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...>...
          )
          | (
              { type: "number"; customType?: "number" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } & ...
          )
          | (
              { type: "boolean"; customType?: "boolean" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } ...
          )
          | (
              { type: "secret"; customType?: OptionCustomType<"secret"> | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...>...
          )
          | (
              { type: "array"; customType?: "array" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } & ({...
          ) =
          | (
              { type: "string"; customType?: OptionCustomType<"string"> | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...>...
          )
          | (
              { type: "number"; customType?: "number" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } & ...
          )
          | (
              { type: "boolean"; customType?: "boolean" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } ...
          )
          | (
              { type: "secret"; customType?: OptionCustomType<"secret"> | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...>...
          )
          | (
              { type: "array"; customType?: "array" | undefined; choices?: string[] | undefined; string?: boolean | undefined; alias?: MaybeReadonly<string[]> | undefined; description?: string | undefined; required?: boolean | undefined; requires?: MaybeReadonly<...> | undefined; conflicts?: MaybeReadonly<...> | undefined; } & ({...
          )

    Parameters

    • config: T

      The config for the option.

    Returns T