3 // UIInput is the interface that must be implemented to ask for input
4 // from this user. This should forward the request to wherever the user
5 // inputs things to ask for values.
6 type UIInput interface {
7 Input(*InputOpts) (string, error)
10 // InputOpts are options for asking for input.
11 type InputOpts struct {
12 // Id is a unique ID for the question being asked that might be
13 // used for logging or to look up a prior answered question.
16 // Query is a human-friendly question for inputting this value.
19 // Description is a description about what this option is. Be wary
20 // that this will probably be in a terminal so split lines as you see
24 // Default will be the value returned if no data is entered.