"""Storage namespace: ``b.storage.*``.""" from __future__ import annotations from browser_cli.sdk.base import Namespace, sdk_command class StorageNS(Namespace): """Read and write localStorage / sessionStorage.""" @sdk_command("storage.get", lambda self, key=None, *, type="local", tab_id=None: { "key": key, "type": type, "tabId": tab_id, }) def get( self, key: str | None = None, *, type: str = "local", tab_id: int | None = None, ) -> str | dict | None: """Get a localStorage/sessionStorage entry (or all entries if key omitted).""" @sdk_command("storage.set", lambda self, key, value, *, type="local", tab_id=None: { "key": key, "value": value, "type": type, "tabId": tab_id, }) def set( self, key: str, value: str, *, type: str = "local", tab_id: int | None = None, ) -> None: """Set a localStorage/sessionStorage entry."""