code: func (file BaseFile) params() (map[string]string, error) {
  	params := make(map[string]string)
  
  	if file.ChannelUsername != "" {
  		params["chat_id"] = file.ChannelUsername
  	} else {
  		params["chat_id"] = strconv.FormatInt(file.ChatID, 10)
  	}
  
  	if file.ReplyToMessageID != 0 {
  		params["reply_to_message_id"] = strconv.Itoa(file.ReplyToMessageID)
  	}
  
  	if file.ReplyMarkup != nil {
  		data, err := json.Marshal(file.ReplyMarkup)
  		if err != nil {
  			return params, err
  		}
  
  		params["reply_markup"] = string(data)
  	}
  
  	if file.MimeType != "" {
  		params["mime_type"] = file.MimeType
  	}
  
  	if file.FileSize > 0 {
  		params["file_size"] = strconv.Itoa(file.FileSize)
  	}
  
  	params["disable_notification"] = strconv.FormatBool(file.DisableNotification)
  
  	return params, nil
  }
docs: // params returns a map[string]string representation of BaseFile.