# Functions
NewInteraction constructs an interaction with the given prompt, limited to the given choices, if any.
Required is a convenience function for constructing a RequiredDestination.
# Variables
ErrNotANumber is used internally by Resolve when the user enters a bogus value when resolving into an int.
ErrNotBoolean is used internally by Resolve when the user enters a bogus value when resolving into a bool.
# Structs
Choice is used to allow the user to select a value of an arbitrary type.
Interaction represents a single question to ask, optionally with a set of choices to limit the answer to.
NotAssignableError is returned by Resolve when the value present in the Choice the user selected is not assignable to the destination value during Resolve.
RequiredDestination wraps the real destination and indicates to Resolve that a value must be explicitly provided, and that there is no default.
# Type aliases
Password is a string whose value will not be echoed when the user's typing or when used as a default value.