I think you could use the CacheStorage[0] framework for this, but IIRC it's not got a great size per domain and is limited by a varying amount of 5MB to 100MB depending on browser.
It looks like Firefox may be different in this regard. Chrome[0] and Edge[1] allow `unlimitedStorage` to be specified that removes the 5MB default limit.
[0] https://developer.chrome.com/docs/extensions/reference/stora...
[1] https://docs.microsoft.com/en-us/microsoft-edge/extensions-c...