class_docstr: A container for a set of key bindings.
  
  Example usage::
  
      kb = KeyBindings()
  
      @kb.add('c-t')
      def _(event):
          print('Control-T pressed')
  
      @kb.add('c-a', 'c-b')
      def _(event):
          print('Control-A pressed, followed by Control-B')
  
      @kb.add('c-x', filter=is_searching)
      def _(event):
          print('Control-X pressed')  # Works only if we are searching.
docstr: Return a list of key bindings that handle a key sequence starting with
  `keys`. (It does only return bindings for which the sequences are
  longer than `keys`. And like `get_bindings_for_keys`, it also includes
  inactive bindings.)
  
  :param keys: tuple of keys.
docstr_tok: ["Return","a","list","of","key","bindings","that","handle","a","key","sequence","starting","with","`","keys","`",".","(","It","does","only","return","bindings","for","which","the","sequences","are","longer","than","`","keys","`",".","And","like","`","get_bindings_for_keys","`",",","it","also","includes","inactive","bindings",".",")",":","param","keys",":","tuple","of","keys","."]
code: def get_bindings_starting_with_keys(
      self, keys: KeysTuple
  ) -> list[Binding]:
      """
      Return a list of key bindings that handle a key sequence starting with
      `keys`. (It does only return bindings for which the sequences are
      longer than `keys`. And like `get_bindings_for_keys`, it also includes
      inactive bindings.)
  
      :param keys: tuple of keys.
      """
  
      def get() -> list[Binding]:
          result = []
          for b in self.bindings:
              if len(keys) < len(b.keys):
                  match = True
                  for i, j in zip(b.keys, keys):
                      if i != j and i != Keys.Any:
                          match = False
                          break
                  if match:
                      result.append(b)
          return result
  
      return self._get_bindings_starting_with_keys_cache.get(keys, get)
  
imports: from __future__ import annotations
  from abc import ABCMeta, abstractmethod, abstractproperty
  from inspect import isawaitable
  from typing import TYPE_CHECKING, Any, Callable, Coroutine, Hashable, Sequence, Tuple, TypeVar, Union, cast
  from prompt_toolkit.cache import SimpleCache
  from prompt_toolkit.filters import FilterOrBool, Never, to_filter
  from prompt_toolkit.keys import KEY_ALIASES, Keys
label_desc: Use image node_id 8 for calling the KeyBindings obj's underlying member method code with example usage: obj.get_bindings_starting_with_keys(keys) and returns: self, result