Write a JavaScript/TypeScript function that takes a string input, tokenizes it into words, removes stop words, stems the remaining words, and returns a list of unique stemmed words. Integrate this function with an external natural language processing library, such as NLTK or spaCy.

You can use the "natural" library in JavaScript to perform these tasks. First, you need to install it using npm:

```bash
npm install natural
```

Then, you can create a function that tokenizes, removes stop words, stems words, and returns unique stemmed words.

Here's an example implementation:

```javascript
const natural = require('natural');
const tokenizer = new natural.WordTokenizer();
const stemmer = natural.PorterStemmer;
const stopWords = require('stopword');

function processText(text) {
  // Tokenize the input text into words
  const tokens = tokenizer.tokenize(text);

  // Remove stop words from the tokens
  const filteredTokens = stopWords.removeStopwords(tokens);

  // Stem the remaining words
  const stemmedWords = filteredTokens.map(token => stemmer.stem(token));

  // Return unique stemmed words
  return Array.from(new Set(stemmedWords));
}

// Example usage:
const inputText = 'This is an example sentence demonstrating the text processing function.';
const result = processText(inputText);
console.log(result);
```

In this example, we're using the "natural" library for tokenization and stemming, and the "stopword" library for removing stop words. Make sure to install the "stopword" library as well:

```bash
npm install stopword
```

Please note that this example uses English language-specific components (tokenizer, stemmer, and stop words). If you want to work with other languages, you might need to find appropriate libraries or adapt the code accordingly.