InferSingleValueCollectorType: T extends "TextCollector"
    ? TextCollector
    : T extends "SingleSelectCollector"
        ? SingleSelectCollector
        : T extends "ValidatedTextCollector"
            ? ValidatedTextCollector
            : T extends "PasswordCollector"
                ? PasswordCollector
                : T extends "ValidatedPasswordCollector"
                    ? ValidatedPasswordCollector
                    : T extends "BooleanCollector"
                        ? BooleanCollector
                        : T extends "ValidatedBooleanCollector"
                            ? ValidatedBooleanCollector
                            : | SingleValueCollectorWithValue<"SingleValueCollector">
                            | SingleValueCollectorNoValue<"SingleValueCollector">

Type to help infer the collector based on the collector type Used specifically in the returnSingleValueCollector wrapper function. When given a type, it can narrow which type it is returning

Note: You can see this type in action in the test file or in the collector.utils file.

Type Parameters