mapHeadertoCardFieldIndex(headerRow) {
    const index = {};
    index.customFields = [];
    for (let i = 0; i < headerRow.length; i++) {
      switch (headerRow[i].trim().toLowerCase()) {
        case 'title':
          index.title = i;
          break;
        case 'description':
          index.description = i;
          break;
        case 'stage':
        case 'status':
        case 'state':
          index.stage = i;
          break;
        case 'owner':
          index.owner = i;
          break;
        case 'members':
        case 'member':
          index.members = i;
          break;
        case 'labels':
        case 'label':
          index.labels = i;
          break;
        case 'due date':
        case 'deadline':
        case 'due at':
          index.dueAt = i;
          break;
        case 'start date':
        case 'start at':
          index.startAt = i;
          break;
        case 'finish date':
        case 'end at':
          index.endAt = i;
          break;
        case 'creation date':
        case 'created at':
          index.createdAt = i;
          break;
        case 'update date':
        case 'updated at':
        case 'modified at':
        case 'modified on':
          index.modifiedAt = i;
          break;
      }
      if (headerRow[i].toLowerCase().startsWith('customfield')) {
        if (headerRow[i].split('-')[2] === 'dropdown') {
          index.customFields.push({
            name: headerRow[i].split('-')[1],
            type: headerRow[i].split('-')[2],
            options: headerRow[i].split('-')[3].split('/'),
            position: i,
          });
        } else if (headerRow[i].split('-')[2] === 'currency') {
          index.customFields.push({
            name: headerRow[i].split('-')[1],
            type: headerRow[i].split('-')[2],
            currencyCode: headerRow[i].split('-')[3],
            position: i,
          });
        } else {
          index.customFields.push({
            name: headerRow[i].split('-')[1],
            type: headerRow[i].split('-')[2],
            position: i,
          });
        }
      }
    }
    this.fieldIndex = index;
  }
Map the header row titles to an index to help assign proper values to the cards' fields
Valid headers (name of card fields):
title, description, status, owner, member, label, due date, start date, finish date, created at, updated at
Some header aliases can also be accepted.
Headers are NOT case-sensitive.

@param {Array} headerRow array from row of headers of imported CSV/TSV for cards