diff --git a/tuf/api/metadata.py b/tuf/api/metadata.py index 8225c06672..74aeb93789 100644 --- a/tuf/api/metadata.py +++ b/tuf/api/metadata.py @@ -80,7 +80,7 @@ def __init__(self, signed: T, signatures: "OrderedDict[str, Signature]"): self.signatures = signatures @classmethod - def from_dict(cls, metadata: Dict[str, Any]) -> "Metadata": + def from_dict(cls, metadata: Dict[str, Any]) -> "Metadata[T]": """Creates Metadata object from its dict representation. Arguments: @@ -133,7 +133,7 @@ def from_file( filename: str, deserializer: Optional[MetadataDeserializer] = None, storage_backend: Optional[StorageBackendInterface] = None, - ) -> "Metadata": + ) -> "Metadata[T]": """Loads TUF metadata from file storage. Arguments: @@ -160,11 +160,12 @@ def from_file( with storage_backend.get(filename) as file_obj: return cls.from_bytes(file_obj.read(), deserializer) - @staticmethod + @classmethod def from_bytes( + cls, data: bytes, deserializer: Optional[MetadataDeserializer] = None, - ) -> "Metadata": + ) -> "Metadata[T]": """Loads TUF metadata from raw data. Arguments: