package org.archstudio.sysutils;
import java.util.Collection;
import java.util.Map;
import java.util.Set;
public interface TypedMap {
public static interface Key<V> {
}
public int size();
boolean isEmpty();
boolean containsKey(Object key);
boolean containsValue(Object value);
public <K extends Key<V>, V> V get(K key);
public <K extends Key<V>, V> V put(K key, V value);
public <K extends Key<V>, V> V remove(K key);
public void putAll(TypedMap m);
public void clear();
public Set<? extends Key<?>> keySet();
public Collection<?> values();
public Set<? extends Map.Entry<? extends Key<?>, ?>> entrySet();
@Override
public boolean equals(Object o);
@Override
public int hashCode();
Map<? extends Key<?>, ?> asMap();
}