export interface IHiddenObjectWrapper { object: Type; visibleOnlyTo?: number; } export type IHiddenObjectWrapperMap = { [id: number]: IHiddenObjectWrapper | null; }; export interface StateResponseInterface { state: Data; hidden?: IHiddenObjectWrapperMap; } export interface ActionHiddenObjectInfo { delta: IHiddenObjectWrapperMap; responses: [number, HiddenType][]; } /** * Interface representing id -> object mapping. */ export type ObjectsMap = { [id: number]: Type; };