package restic

//go:generate go run git.secluded.site/keld/cmd/gen-restic-cmds

// Command describes a restic subcommand and its accepted flags, as parsed
// from restic's generated man pages.
type Command struct {
	Name        string
	Description string
	Options     []Option
}

// Option describes a single CLI flag accepted by a restic command.
type Option struct {
	Name        string // long flag name without dashes, e.g. "dry-run"
	Alias       string // single-char short flag, e.g. "n"
	Default     string // default value as printed in the man page
	Description string
	Repeatable  bool // true when the flag accepts multiple values (default "[]")
	IsBool      bool // true for boolean flags (default "false" or "true")
}
