lib/rules/no-unused-vars.js
function hasRestSpreadSibling(variable) {
            if (config.ignoreRestSiblings) {
                return variable.defs.some(def => {
                    const propertyNode = def.name.parent;
                    const patternNode = propertyNode.parent;

                    return (
                        propertyNode.type === "Property" &&
                        patternNode.type === "ObjectPattern" &&
                        REST_PROPERTY_TYPE.test(patternNode.properties[patternNode.properties.length - 1].type)
                    );
                });
            }

            return false;
        }
function hasRestSpreadSibling(variable) {
            if (config.ignoreRestSiblings) {
                return variable.defs.some(def => {
                    const propertyNode = def.name.parent;
                    const patternNode = propertyNode.parent;

                    return (
                        propertyNode.type === "Property" &&
                        patternNode.type === "ObjectPattern" &&
                        REST_PROPERTY_TYPE.test(patternNode.properties[patternNode.properties.length - 1].type)
                    );
                });
            }

            return false;
        }
function hasRestSpreadSibling ( variable ) { if ( config . ignoreRestSiblings ) { return variable . defs . some ( def => { const propertyNode = def . name . parent ; const patternNode = propertyNode . parent ; return ( propertyNode . type === "Property" && patternNode . type === "ObjectPattern" && REST_PROPERTY_TYPE . test ( patternNode . properties [ patternNode . properties . length - 1 ] . type ) ) ; } ) ; } return false ; }
Determines if a variable has a sibling rest property
@param {Variable} variable - eslint-scope variable object.
@returns {boolean} True if the variable is exported, false if not.
@private
Determines if a variable has a sibling rest property