import { GxCollectionData } from "./gxcollection";
import { ISerializable } from "./type-serialization";
export declare class GxDictionaryData<K, V> implements ISerializable {
    __keyType: {
        new (): K;
    };
    __valueType: {
        new (): V;
    };
    __serializationType: any;
    dictionary: {
        [Key: string]: V;
    };
    private toKey;
    private fromKey;
    get Keys(): GxCollectionData<K>;
    get Values(): GxCollectionData<V>;
    get Count(): number;
    setType(keyType: {
        new (): K;
    } | any, valueType: {
        new (): V;
    } | any, serializationType?: any): GxDictionaryData<K, V>;
    set(key: K, value: V): V;
    setDictionary(d: GxDictionaryData<K, V>): void;
    remove(key: K): void;
    removeKeys(keys: Array<K>): void;
    removeAll(d: GxDictionaryData<K, V>): void;
    clear(): void;
    get(key: K): V;
    contains(key: K): boolean;
    toJson(): string;
    fromJson(json: string): void;
    serialize(): {};
    deserialize(obj: any): GxDictionaryData<K, V>;
}
