--- /dev/null
+/* @flow */
+"use strict";
+
+const _ = require("lodash");
+
+/**
+ * Check whether the variable is an object and all it's properties are arrays of string values:
+ *
+ * ignoreProperties = {
+ * value1: ["item11", "item12", "item13"],
+ * value2: ["item21", "item22", "item23"],
+ * value3: ["item31", "item32", "item33"],
+ * }
+ */
+
+module.exports = function(value /*: Object*/) /*: boolean*/ {
+ if (!_.isPlainObject(value)) {
+ return false;
+ }
+
+ return Object.keys(value).every(key => {
+ if (!_.isArray(value[key])) {
+ return false;
+ }
+
+ // Make sure the array items are strings
+ return value[key].every(item => _.isString(item));
+ });
+};