type Appearances = Obj & Appearance[] & { [index: string]: Appearance }; type Appearance = Obj & AppearanceProps; type AppearanceProps = ObjProps & { BACKR: number; BACKG: number; BACKB: number; BACKALPHA: number; image: UserImage; IMAGER: number; IMAGEG: number; IMAGEB: number; IMAGEALPHA: number; }; type ScribbleProps = ObjProps & { scribble: string; // comma separated list of points and colors }; type Scribbles = Obj & Scribble[] & { [index: string]: Scribble }; type Scribble = Obj & ScribbleProps;