docs: def entry_from_dict(
          data: dict
  ) -> typing.Union[FILE_WRITE_ENTRY, FILE_COPY_ENTRY]:
      """
      Converts the given data dictionary into either a file write or file copy
      entry depending on the keys in the dictionary. The dictionary should
      contain either ('path', 'contents') keys for file write entries or
      ('source', 'destination') keys for file copy entries.
      """
      if 'contents' in data:
          return FILE_WRITE_ENTRY(**data)
      return FILE_COPY_ENTRY(**data)