pub async fn find_one_and_update<T>(
filter: Document,
update: impl Into<UpdateModifications>,
options: impl Into<Option<FindOneAndUpdateOptions>>,
collection_name: &str,
db: &Database,
) -> Result<Option<T>, Error>where
for<'a> T: DeserializeOwned,