code: public Config build() {
      if (this.language == null) {
        this.language = "java";
      }
      if (this.endpoint == null) {
        this.endpoint = SyncSender.DEFAULT_API_ENDPOINT;
      }
      if (this.notifier == null) {
        this.notifier = new NotifierProvider();
      }
      if (this.sender == null) {
        SyncSender.Builder innerSender =
            new SyncSender.Builder(this.endpoint)
            .accessToken(accessToken)
            .proxy(proxy);
        if (this.jsonSerializer != null) {
          innerSender.jsonSerializer(this.jsonSerializer);
        }
        this.sender =
          new BufferedSender.Builder().sender(innerSender.build()).build();
      }
      if (this.timestamp == null) {
        this.timestamp = new TimestampProvider();
      }
  
      return new ConfigImpl(this);
    }
docs: Builds the {@link Config config}.
  
  @return the config.