import type { InternerTransport } from '../client/aufrufe.js'; /** * Die beiden Aufrufe der **laufenden** Kassen-Sitzung. Anders als die drei in * pairing.ts haben sie eine Identitaet: sie laufen ueber `registerUserAuth` * (ID-Token als Bearer, Sitzung als Kopfzeile `register-session`) und nehmen * darum einen fertigen [KasseneckTransport] entgegen wie jeder andere * Endpunkt-Aufruf dieses Pakets. * * Beide fuehren **keinen einzigen Parameter**: welche Sitzung gemeint ist, * steht im Token und in der Kopfzeile. Der Parameter `cashregisterId`, den man * im Rumpf sieht, kommt aus der Anmeldung. * * Das Backend setzt fuer beide `allowRegisterUser`; mit `apiKeyAuth` sind sie * nicht erreichbar (dieses Paket bildet das nicht nach — wer darf, entscheidet * das Backend). */ /** * Sitzung verlaengern und den neuen Ablaufzeitpunkt liefern (Millisekunden * seit 1970). * * Die Sitzung lebt 90 Sekunden; die Browser-Kasse erneuert alle 30. Ist sie * bereits beendet oder uebernommen, antwortet das Backend mit dem Code * `session_expired` bzw. `session_ended` (siehe [isRegisterError]); dann hilft * nur eine neue Anmeldung ueber `registerUserLogin` oder `registerPinLogin`. */ export declare function renewRegisterSession(transport: InternerTransport): Promise; /** * Sitzung beenden und den Lizenzplatz sofort freigeben — der regulaere Weg des * Abmeldens. * * Das Backend antwortet mit `{ok:true}`; dieser Aufruf prueft das Feld * **nicht**: dass der Vorgang gelang, sagt bereits die Erfolgshuelle, die der * Transport auswertet. Eine zweite Pruefung derselben Aussage braeche nur an * einer harmlosen Vertragsaenderung — ausgerechnet beim Abmelden, dem Aufruf, * der auch dann durchgehen soll, wenn sonst nichts mehr geht. */ export declare function endRegisterSession(transport: InternerTransport): Promise;