Maybe we should throw a warning if the value is not `undefined` or `boolean`?