/*! * @author electricessence / https://github.com/electricessence/ * Original: http://linqjs.codeplex.com/ * Licensing: MIT https://github.com/electricessence/TypeScript.NET-Core/blob/master/LICENSE.md */ import KeyValuePair from "../../KeyValuePair"; import { FiniteIEnumerator } from "../Enumeration/IEnumerator"; import { ILinkedNode } from "../ILinkedListNode"; import { HashSelector } from "../../FunctionTypes"; import DictionaryBase from "./DictionaryBase"; export interface IHashEntry extends ILinkedNode>, KeyValuePair { } export declare class Dictionary extends DictionaryBase { private readonly _keyGenerator?; private readonly _entries; private readonly _buckets; constructor(_keyGenerator?: HashSelector | undefined); protected _onDispose(): void; protected getCount(): number; private _getBucket; private _getBucketEntry; protected _getEntry(key: TKey): IHashEntry | undefined; getValue(key: TKey): TValue | undefined; protected _setValueInternal(key: TKey, value: TValue | undefined): boolean; protected _clearInternal(): number; getEnumerator(): FiniteIEnumerator>; protected getKeys(): TKey[]; protected getValues(): TValue[]; } export default Dictionary;