set<K, V, C>(collection: C, key: K, value: V): C
set<TProps, C, K>(record: C, key: K, value: TProps,[K]): C
set<V, C>(collection: C, key: number, value: V): C
set<C, K>(object: C, key: K, value: C,[K]): C
set<V, C>(collection: C, key: string, value: V): C