import { VatRate } from '../enums/index.js'; /** * Loest einen Enum-Eintrag anhand seines Nutzlast-Schluessels auf (z. B. * `receiptType: 'standard'` — bei den mit `defineEnum()` gebauten Enums ist * der Objekt-Schluessel selbst die Nutzlast). * * Nur fuer den **Schreibpfad**: bevor dieses Paket selbst einen Wert nach * aussen traegt, muss er bekannt sein — ein unbekannter Schluessel wirft. * Fuer den Lesepfad (Daten, die vom Backend hereinkommen) siehe * [readEnumKey]: dort darf ein einzelner unbekannter Wert nicht die ganze * Belegliste zum Absturz bringen. */ export declare function requireEnumKey>(enumObj: T, key: string, label: string): T[keyof T]; /** * Lesepfad-Pendant zu [requireEnumKey]: ein unbekannter Schluessel (z. B. ein * neuer Belegtyp oder eine neue Zahlungsart, die dieses Paket noch nicht * kennt) wirft nicht und wird auch nicht still zu `undefined` — der rohe * Nutzlast-Schluessel bleibt als String erhalten. Ein Aufrufer, der eine * Belegliste anzeigt, kann so alle Positionen weiterlesen; nur die unbekannte * bleibt (erkennbar) unaufgeloest. */ export declare function readEnumKey>(enumObj: T, key: string): T[keyof T] | string; /** Schreibpfad: loest einen Steuersatz anhand seines `rate`-Werts auf, wirft bei unbekanntem Satz. */ export declare function requireVatRateByRate(rate: number): VatRate; /** Lesepfad: unbekannter Satz bleibt als roher `rate`-Wert erhalten statt zu werfen oder `undefined` zu werden. */ export declare function readVatRateByRate(rate: number): VatRate | number;