package com.airlock.iam.common.api.domain.model.contextdata;

import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.function.Predicate;

public interface ContextData {
   <T> Optional<ContextDataItem<T>> find(String var1);

   Set<ContextDataItem<?>> getItems();

   int numberOfItems();

   Map<String, Object> asKeyValueMap();

   ContextData filter(Predicate<ContextDataItem<?>> var1);

   ContextData mergeWith(ContextData var1);

   ContextData withItem(ContextDataItem<?> var1);

   ContextData withoutItem(String var1);
}
