There is another property "iconUrl" in `WidgetAppInfo`.

However, the data structure of `WidgetAppInfo` appears the same as `LayoutAppInfo` defined in "layout_editor.js". If these two structures really stand for the same object, I recommend to use `LayoutAppInfo` directly (no need to define it again here, jsdoc can find its reference) to let user easily know where this structure is from.