func NewClient(httpClient *http.Client, token, name string, logger log.Logger) *Client {
	return &Client{
		httpClient: httpClient,
		limiter:    rate.NewLimiter(),
		token:      token,
		name:       name,
		logger:     logger,
	}
}
NewClient returns a new REST Client.
package rest
import (
	"bytes"
	"context"
	"encoding/json"
	"fmt"
	"net/http"
	"net/http/httputil"
	"time"
	"github.com/skwair/harmony/internal/endpoint"
	"github.com/skwair/harmony/internal/rate"
	"github.com/skwair/harmony/log"
	"github.com/skwair/harmony/version"
)
var baseURL = "https://discord.com/api/v" + version.REST()
type rateLimitResp struct {
	Message    string  `json:"message"`
	RetryAfter float64 `json:"retry_after"`
	Global     bool    `json:"global"`
}
type Client struct {
	httpClient *http.Client
	limiter    *rate.Limiter
	token      string
	name       string
	logger     log.Logger
}