code: public function where($column, $operator = null, $value = null, $boolean = 'and')
      {
          // If the column is an array, we will assume it is an array of key-value pairs
          // and can add them each as a where clause. We will maintain the boolean we
          // received when the method was called and pass it into the nested where.
          if (is_array($column)) {
              return $this->addArrayOfWheres($column, $boolean);
          }
  
          // Then we need to check if we are dealing with a translated column and defer
          // to the "whereTranslated" clause in that case. That way the user doesn't
          // need to worry about translated columns and let us handle the details.
          if(in_array($column, $this->model->translatableAttributes())) {
              return $this->whereTranslated($column, $operator, $value, $boolean);
          }
  
          return parent::where($column, $operator, $value, $boolean);
      }
docs: Add a where clause to the query.
  
  @param  string|\Closure  $column
  @param  string  $operator
  @param  mixed   $value
  @param  string  $boolean
  @return $this
  
  @throws \InvalidArgumentException