code: func WithTLSClientConfig(cacertPath, certPath, keyPath string) Opt {
  	return func(c *Client) error {
  		opts := tlsconfig.Options{
  			CAFile:             cacertPath,
  			CertFile:           certPath,
  			KeyFile:            keyPath,
  			ExclusiveRootPools: true,
  		}
  		config, err := tlsconfig.Client(opts)
  		if err != nil {
  			return errors.Wrap(err, "failed to create tls config")
  		}
  		if transport, ok := c.client.Transport.(*http.Transport); ok {
  			transport.TLSClientConfig = config
  			return nil
  		}
  		return errors.Errorf("cannot apply tls config to transport: %T", c.client.Transport)
  	}
  }
docs: // WithTLSClientConfig applies a tls config to the client transport.