using System;
using System.Runtime.InteropServices;
namespace System.Collections
{
/// Represents a nongeneric collection of key/value pairs.
/// 1
// Token: 0x02000133 RID: 307
[ComVisible(true)]
public interface IDictionary : IEnumerable, ICollection
{
/// Gets a value indicating whether the object has a fixed size.
/// true if the object has a fixed size; otherwise, false.
/// 2
// Token: 0x1700028D RID: 653
// (get) Token: 0x06000FE0 RID: 4064
bool IsFixedSize { get; }
/// Gets a value indicating whether the object is read-only.
/// true if the object is read-only; otherwise, false.
/// 2
// Token: 0x1700028E RID: 654
// (get) Token: 0x06000FE1 RID: 4065
bool IsReadOnly { get; }
/// Gets or sets the element with the specified key.
/// The element with the specified key.
/// The key of the element to get or set.
///
/// is null.
/// The property is set and the object is read-only.-or- The property is set, does not exist in the collection, and the has a fixed size.
/// 2
// Token: 0x1700028F RID: 655
object this[object key] { get; set; }
/// Gets an object containing the keys of the object.
/// An object containing the keys of the object.
/// 2
// Token: 0x17000290 RID: 656
// (get) Token: 0x06000FE4 RID: 4068
ICollection Keys { get; }
/// Gets an object containing the values in the object.
/// An object containing the values in the object.
/// 2
// Token: 0x17000291 RID: 657
// (get) Token: 0x06000FE5 RID: 4069
ICollection Values { get; }
/// Adds an element with the provided key and value to the object.
/// The to use as the key of the element to add.
/// The to use as the value of the element to add.
///
/// is null.
/// An element with the same key already exists in the object.
/// The is read-only.-or- The has a fixed size.
/// 2
// Token: 0x06000FE6 RID: 4070
void Add(object key, object value);
/// Removes all elements from the object.
/// The object is read-only.
/// 2
// Token: 0x06000FE7 RID: 4071
void Clear();
/// Determines whether the object contains an element with the specified key.
/// true if the contains an element with the key; otherwise, false.
/// The key to locate in the object.
///
/// is null.
/// 2
// Token: 0x06000FE8 RID: 4072
bool Contains(object key);
/// Returns an object for the object.
/// An object for the object.
/// 2
// Token: 0x06000FE9 RID: 4073
IDictionaryEnumerator GetEnumerator();
/// Removes the element with the specified key from the object.
/// The key of the element to remove.
///
/// is null.
/// The object is read-only.-or- The has a fixed size.
/// 2
// Token: 0x06000FEA RID: 4074
void Remove(object key);
}
}