There is no such functionality out of the box for individual retention times for single objects.
There is the possibility to define a retention period for media sets - this works if every instance of an object type has the same retention period.
There is the possibility via enterprise manager to organise batch delete for a group of objects, based on an eSql-query.
More complex rules should be done by individual development, perhaps by using a batch or micro service, which reads the field and deletes if retention time is over.