using System;
using System.Collections.Generic;
namespace Lookup.Interface;
///
/// Common interface for s,
/// storing data as key-value pairs
///
public interface ILookup
{
}
///
/// Common interface for s,
/// storing data as - pairs
///
/// Type of the key referencing the s
/// Type of the stored values, referenced by
public interface ILookup
: ILookup,
IDictionary>,
IDisposable
{
///
/// Adds a key to the
///
///
/// The to add
///
///
/// The new
/// to store s in
///
ICollection Add(TKey key);
///
/// Adds a to an existing collection
/// referenced by in the
///
public void Add(TKey key, TValue value);
///
/// Adds multiple s to
/// an existing
/// referenced by in
/// the
///
public void AddRange(TKey key, IEnumerable values);
///
/// Removes a from
/// an existing
/// referenced by in
/// the
///
public bool Remove(TKey key, TValue value);
///
/// Gets an existing referenced by
/// or creates it, if it does not already exist
///
///
/// The to add
///
///
/// The to
/// store s in
///
public ICollection GetOrAdd(TKey key);
}