#!/usr/bin/env ts-node

import * as fs from 'fs';
import * as path from 'path';

/**
 * Löscht eine Datei am angegebenen Pfad.
 *
 * @param filePath - Pfad zur Datei, die gelöscht werden soll
 */
function deleteFile(filePath: string): void {
  const resolvedPath = path.resolve(filePath);

  if (!fs.existsSync(resolvedPath)) {
    console.error(`❌ Datei nicht gefunden: ${resolvedPath}`);
    process.exit(1);
  }

  try {
    fs.unlinkSync(resolvedPath);
    console.log(`✔ Datei gelöscht: ${resolvedPath}`);
  } catch (err) {
    console.error(`❌ Fehler beim Löschen: ${(err as Error).message}`);
    process.exit(1);
  }
}

// Kommandozeilenargumente
const [, , arg] = process.argv;

if (!arg || arg === '-h' || arg === '--help') {
  console.log(`Verwendung:
  ts-node delete.ts <dateipfad>

Beispiel:
  ts-node delete.ts ./log/output.txt`);
  process.exit(0);
}

// Datei löschen
deleteFile(arg);
