package geeksbot import "time" type Request struct { ID int64 Author User Channel Channel Guild Guild Content string RequestedAt time.Time Completed bool CompletedAt time.Time CompletedBy User Message Message CompletedMessage string } type Comment struct { ID int64 Author User Request Request CommentAt time.Time Content string } type RequestService interface { Request(id int64) (Request, error) UserRequests(u User, completed bool) ([]Request, error) GuildRequests(g Guild, completed bool) ([]Request, error) CreateRequest(r Request) (Request, error) UpdateRequest(r Request) (Request, error) DeleteRequest(r Request) error Comment(id int64) (Comment, error) RequestComments(r Request) ([]Comment, error) RequestCommentCount(r Request) (int, error) CreateComment(c Comment) (Comment, error) DeleteComment(c Comment) error }