code: def csv(
      self,
      path: str,
      schema: Optional[Union[StructType, str]] = None,
      sep: Optional[str] = None,
      encoding: Optional[str] = None,
      quote: Optional[str] = None,
      escape: Optional[str] = None,
      comment: Optional[str] = None,
      header: Optional[Union[bool, str]] = None,
      inferSchema: Optional[Union[bool, str]] = None,
      ignoreLeadingWhiteSpace: Optional[Union[bool, str]] = None,
      ignoreTrailingWhiteSpace: Optional[Union[bool, str]] = None,
      nullValue: Optional[str] = None,
      nanValue: Optional[str] = None,
      positiveInf: Optional[str] = None,
      negativeInf: Optional[str] = None,
      dateFormat: Optional[str] = None,
      timestampFormat: Optional[str] = None,
      maxColumns: Optional[Union[int, str]] = None,
      maxCharsPerColumn: Optional[Union[int, str]] = None,
      maxMalformedLogPerPartition: Optional[Union[int, str]] = None,
      mode: Optional[str] = None,
      columnNameOfCorruptRecord: Optional[str] = None,
      multiLine: Optional[Union[bool, str]] = None,
      charToEscapeQuoteEscaping: Optional[Union[bool, str]] = None,
      enforceSchema: Optional[Union[bool, str]] = None,
      emptyValue: Optional[str] = None,
      locale: Optional[str] = None,
      lineSep: Optional[str] = None,
      pathGlobFilter: Optional[Union[bool, str]] = None,
      recursiveFileLookup: Optional[Union[bool, str]] = None,
      unescapedQuoteHandling: Optional[str] = None,
  ) -> "DataFrame":
      self._set_opts(
          schema=schema,
          sep=sep,
          encoding=encoding,
          quote=quote,
          escape=escape,
          comment=comment,
          header=header,
          inferSchema=inferSchema,
          ignoreLeadingWhiteSpace=ignoreLeadingWhiteSpace,
          ignoreTrailingWhiteSpace=ignoreTrailingWhiteSpace,
          nullValue=nullValue,
          nanValue=nanValue,
          positiveInf=positiveInf,
          negativeInf=negativeInf,
          dateFormat=dateFormat,
          timestampFormat=timestampFormat,
          maxColumns=maxColumns,
          maxCharsPerColumn=maxCharsPerColumn,
          maxMalformedLogPerPartition=maxMalformedLogPerPartition,
          mode=mode,
          columnNameOfCorruptRecord=columnNameOfCorruptRecord,
          multiLine=multiLine,
          charToEscapeQuoteEscaping=charToEscapeQuoteEscaping,
          enforceSchema=enforceSchema,
          emptyValue=emptyValue,
          locale=locale,
          lineSep=lineSep,
          pathGlobFilter=pathGlobFilter,
          recursiveFileLookup=recursiveFileLookup,
          unescapedQuoteHandling=unescapedQuoteHandling,
      )
      if isinstance(path, str):
          return self.load(path=path, format="csv")
      else:
          raise PySparkTypeError(
              error_class="NOT_STR",
              message_parameters={
                  "arg_name": "path",
                  "arg_type": type(path).__name__,
              },
          )
  
imports: from pyspark.sql.connect.utils import check_dependencies
  import sys
  import pickle
  from typing import cast, overload, Callable, Dict, List, Optional, TYPE_CHECKING, Union
  from pyspark.serializers import CloudPickleSerializer
  from pyspark.sql.connect.plan import DataSource, LogicalPlan, Read, WriteStreamOperation
  import pyspark.sql.connect.proto
  from pyspark.sql.connect.readwriter import OptionUtils, to_str
  from pyspark.sql.connect.streaming.query import StreamingQuery
  from pyspark.sql.streaming.readwriter import DataStreamReader, DataStreamWriter
  from pyspark.sql.connect.utils import get_python_ver
  from pyspark.sql.types import Row, StructType
  from pyspark.errors import PySparkTypeError, PySparkValueError, PySparkPicklingError
label_desc: Use image node_id 12 for calling the DataStreamReader obj's underlying member method code with example usage: obj.csv(path, schema, sep, encoding, quote, escape, comment, header, inferSchema, ignoreLeadingWhiteSpace, ignoreTrailingWhiteSpace, nullValue, nanValue, positiveInf, negativeInf, dateFormat, timestampFormat, maxColumns, maxCharsPerColumn, maxMalformedLogPerPartition, mode, columnNameOfCorruptRecord, multiLine, charToEscapeQuoteEscaping, enforceSchema, emptyValue, locale, lineSep, pathGlobFilter, recursiveFileLookup, unescapedQuoteHandling) and returns: self