| 12345678910111213141516171819202122232425262728293031323334353637383940414243 | package functionsimport (	"fmt"	"net/http"	"github.com/gravitl/netmaker/models")// GetAllExtClients - fetch all external clientsfunc GetAllExtClients() *[]models.ExtClient {	return request[[]models.ExtClient](http.MethodGet, "/api/extclients", nil)}// GetNetworkExtClients - fetch external clients associated with a networkfunc GetNetworkExtClients(networkName string) *[]models.ExtClient {	return request[[]models.ExtClient](http.MethodGet, "/api/extclients/"+networkName, nil)}// GetExtClient - fetch a single external clientfunc GetExtClient(networkName, clientID string) *models.ExtClient {	return request[models.ExtClient](http.MethodGet, fmt.Sprintf("/api/extclients/%s/%s", networkName, clientID), nil)}// GetExtClientConfig - fetch a wireguard config of an external clientfunc GetExtClientConfig(networkName, clientID string) string {	return get(fmt.Sprintf("/api/extclients/%s/%s/file", networkName, clientID))}// CreateExtClient - create an external clientfunc CreateExtClient(networkName, nodeID string, extClient models.CustomExtClient) {	request[any](http.MethodPost, fmt.Sprintf("/api/extclients/%s/%s", networkName, nodeID), extClient)}// DeleteExtClient - delete an external clientfunc DeleteExtClient(networkName, clientID string) *models.SuccessResponse {	return request[models.SuccessResponse](http.MethodDelete, fmt.Sprintf("/api/extclients/%s/%s", networkName, clientID), nil)}// UpdateExtClient - update an external clientfunc UpdateExtClient(networkName, clientID string, payload *models.CustomExtClient) *models.ExtClient {	return request[models.ExtClient](http.MethodPut, fmt.Sprintf("/api/extclients/%s/%s", networkName, clientID), payload)}
 |