class_docstr: Cache storage manager protocol, that should be implemented by the concrete
  cache storage managers.
  
  It is responsible for:
      - Creating cache storage instances for the specific
      decorated functions,
      - Validating the context for the cache storages.
      - Optionally clearing all cache storages in optimal way.
  
  It should be created during Runtime initialization.
docstr: Creates a new cache storage instance
  Please note that the ttl, max_entries and other context fields are specific
  for whole storage, not for individual key.
  
  Notes
  -----
  Threading: Should be safe to call from any thread.
docstr_tok: ["Creates","a","new","cache","storage","instance","Please","note","that","the","ttl",",","max_entries","and","other","context","fields","are","specific","for","whole","storage",",","not","for","individual","key",".","Notes","--","--","-","Threading",":","Should","be","safe","to","call","from","any","thread","."]
code: def create(self, context: CacheStorageContext) -> CacheStorage:
      """Creates a new cache storage instance
      Please note that the ttl, max_entries and other context fields are specific
      for whole storage, not for individual key.
  
      Notes
      -----
      Threading: Should be safe to call from any thread.
      """
      raise NotImplementedError
  
imports: from __future__ import annotations
  from abc import abstractmethod
  from dataclasses import dataclass
  from typing_extensions import Literal, Protocol
label_desc: Use image node_id 1 for calling the CacheStorageManager obj's underlying member method code with example usage: obj.create(context) without return types