NavigatorStorage.h 564 B

123456789101112131415161718192021222324252627
  1. /*
  2. * Copyright (c) 2024, Jamie Mansfield <jmansfield@cadixdev.org>
  3. * Copyright (c) 2024, Tim Flynn <trflynn89@serenityos.org>
  4. *
  5. * SPDX-License-Identifier: BSD-2-Clause
  6. */
  7. #pragma once
  8. #include <LibGC/Ptr.h>
  9. #include <LibJS/Forward.h>
  10. #include <LibWeb/Bindings/PlatformObject.h>
  11. #include <LibWeb/Forward.h>
  12. namespace Web::StorageAPI {
  13. class NavigatorStorage {
  14. public:
  15. virtual ~NavigatorStorage() = default;
  16. GC::Ref<StorageManager> storage();
  17. protected:
  18. virtual Bindings::PlatformObject const& this_navigator_storage_object() const = 0;
  19. };
  20. }