migrate_plus.source.csv:
  type: migrate_source
  label: 'CSV'
  mapping:
    path:
      type: string
      label: 'Path to the source CSV file'
    header_row_count:
      type: integer
      label: 'Signifies the number of rows of data in a file until the header row'
    keys:
      type: sequence
      label: 'Column name(s) which represent the key uniquely identifying each record'
      sequence:
        type: string
        label: 'Key field'
    column_names:
      type: ignore
      label: 'Numeric key 0-based index of the columns in source CSV file'
    file_class:
      type: string
      label: 'Full class name that includes namespace for an alternative CSV reader'
    delimiter:
      type: string
      label: 'The field delimiter (one character only)'
    enclosure:
      type: string
      label: 'The field enclosure character (one character only)'
    escape:
      type: string
      label: 'The field escape character (one character only)'
    file_flags:
      type: integer
      label: 'Bitmask flags for the SplFileObject'
    create_record_num:
      type: boolean
      label: 'Specifies whether to create an incremented value for each record in the file'
    record_num_field:
      type: string
      label: 'Field name for record number field'
