```ts
export function inQuote(ch: string): boolean {
  return ch === '"' || ch === "'";
}

export function quoteSplit(line: string): string[] {
  const result: string[] = [];
  let currentQuotationMark = null;
  let currentString = '';

  for (let i = 0; i < line.length; i++) {
    const char = line[i];
    if (char === '"') {
      if (currentQuotationMark !== null) {
        // Close the previous quotation mark
        result.push(currentString);
        currentString = '';
      }
      currentQuotationMark = char;
    } else if (char === ',') {
      if (currentQuotationMark === null) {
        // Add a comma to the current string without closing it
        currentString += char;
      } else {
        // Close the quotation mark and add the comma to the result
        result.push(currentString + char);
        currentString = '';
      }
    } else {
      currentString += char;
    }
  }

  if (currentQuotationMark !== null) {
    // Add the last string without closing it
    result.push(currentString);
  }

  return result;
}
```