svg2all

JSON in TypeScript-Interfaces

Erzeugt TypeScript-Interfaces aus einem JSON-Beispiel, mit optionalen Feldern und Unions.

Läuft in deinem Browser – die Datei wird nicht hochgeladen

Werkzeug wird geladen …

Häufige Fragen

Wird meine Datei hochgeladen?

Nein. Die Umwandlung läuft vollständig in deinem Browser. Die Datei verlässt dein Gerät nicht – es gibt keinen Server, der sie sehen könnte. Sobald die Seite geladen ist, funktioniert das Werkzeug sogar offline.

Wie werden Listen mit unterschiedlichen Objekten behandelt?

Alle Elemente einer Liste werden zu einem Interface zusammengeführt. Ein Schlüssel, den nur manche Elemente haben, wird optional («name?: string»); ein Schlüssel mit verschiedenen Typen wird eine Union («id: number | string»). Der Elementtyp heisst wie die Eigenschaft in der Einzahl: Aus «users» wird «User».

Was ist die Option Record<string, T>?

JSON enthält oft Maps mit Daten als Schlüssel, etwa {"2026-08-24": {…}, "2026-08-25": {…}}. Ein Interface-Feld pro Datum wäre nutzlos, darum werden solche Objekte bei eingeschalteter Option zu Record<string, T>. Schalte sie aus, um immer Interfaces zu bekommen.

Warum steht «unknown» in der Ausgabe?

Eine leere Liste oder ein Wert, der immer null ist, trägt keine Typinformation; der Generator schreibt dann unknown[] oder null. Ersetze es von Hand, sobald du weisst, was das Feld enthält – der Rest des Codes ist sofort verwendbar.