code: def latest_version(self) -> Optional[int]:
      available_versions = SyftMigrationRegistry.get_versions(
          canonical_name=self.canonical_name,
      )
      if available_versions is None:
          return None
  
      return sorted(available_versions, reverse=True)[0]
  
imports: from typing import List
  from typing import Optional
  from result import Result
  from ...node.credentials import SyftVerifyKey
  from ...serde.serializable import serializable
  from ...store.document_store import BaseStash
  from ...store.document_store import DocumentStore
  from ...store.document_store import PartitionKey
  from ...store.document_store import PartitionSettings
  from ...types.syft_object import SYFT_OBJECT_VERSION_1
  from ...types.syft_object import SyftMigrationRegistry
  from ...types.syft_object import SyftObject
  from ..action.action_permissions import ActionObjectPermission
label_desc: Use image node_id 1 for calling the SyftObjectMigrationState obj's underlying member method code with example usage: obj.latest_version() and returns: sorted, None