func (r *Repository) Stashes() ([]*StashedItem, error) {
	sc := r.essence.Stashes
	stashes := make([]*StashedItem, 0)
	sc.Foreach(func(index int, message string, id *lib.Oid) error {
		s := &StashedItem{
			Index:   index,
			Hash:    id.String(),
			Message: message,
			essence: id,
		}
		stashes = append(stashes, s)
		return nil
	})
	return stashes, nil
}
Stashes returns the stashed items of the repository
package git
import (
	"fmt"
	lib "github.com/libgit2/git2go/v30"
)
type StashedItem struct {
	essence *lib.Oid
	Index   int
	Hash    string
	Message string
}
type StashFlag int
const (
	StashDefault StashFlag = iota
	StashKeepIndex
	StashIncludeUntracked
	StashIncludeIgnored
)