Type Alias OptionsResults<T>

OptionsResults<T>: {
    [K in keyof T]: (T[K]["validOptions"] extends ReadonlyArrays
        ? T[K] extends ConfigOption<"string" | "number", false>
            ? T[K]["validOptions"][number]
            : T[K] extends ConfigOption<"string" | "number", true>
                ? T[K]["validOptions"][number][]
                : never
        : T[K] extends ConfigOption<"string", false>
            ? string
            : T[K] extends ConfigOption<"string", true>
                ? string[]
                : T[K] extends ConfigOption<"number", false>
                    ? number
                    : T[K] extends ConfigOption<"number", true>
                        ? number[]
                        : T[K] extends ConfigOption<"boolean", false>
                            ? boolean
                            : (...)[(...)] extends ConfigOption<(...), (...)>
                                ? (...)[]
                                : never) | (T[K]["default"] extends ConfigValue
        ? never
        : undefined)
}

The 'values' field returned by Jack#parse. If a value has a default field it will be required on the object otherwise it is optional.

Type Parameters