def METHOD_NAME(self, key_prefix: str) -> List[str]:
    """Get all descendants of the 'directory' specified by the prefix.
    Parameters
    ----------
    key_prefix:
        The prefix to a key that would be used with 'get' or 'set'. The keys are
        treated as being like directories, with '/' in a key specifying an
        organizational unit for the objects.
    Returns
    -------
    A list of all keys that start with the prefix. You can think of this as getting
    the absolute file paths for all contents of a directory (including 'files' in
    'subdirectories').
    """
    if not key_prefix.endswith("/"):
        key_prefix = f"{key_prefix}/"
    keys = []
    list_objects_return = self._bucket.list_blobs(
        prefix=key_prefix,
        delimiter="/",
        include_trailing_delimiter=False,
    )
    for blob in list_objects_return:
        if blob.name == key_prefix:
            # don't want the "directory" itself, only its children.
            continue
        keys.append(blob.name)
    return keys