Посмотрев определение в машинописи для набора, вы найдете следующий интерфейс:
interface Set<T> {
add(value: T): this;
clear(): void;
delete(value: T): boolean;
forEach(callbackfn: (value: T, value2: T, set: Set<T>) => void, thisArg?: any): void;
has(value: T): boolean;
readonly size: number;
}
<T>
означает, что для типа Set
потребуется параметр типа. Вы можете указать это в вашем IState
объекте так:
interface IState {
mySet: Set<number>; // type depends on what type you want to store obviously.
myNum: number;
myStr: string;
myArr: number[];
}
Если вам не нужны типы (вам, вероятно, следует это делать, если вы используете машинопись), тогда вы можете просто передать any
как параметр типа, и набор будет работать как в стандартном javascript.