You are given a function `validateEmail(email: string): boolean` that takes an email address as a parameter and returns `true` if the email address is valid, and `false` otherwise. Your task is to implement a new function `filterEmails(emails: string[]): string[]` that takes an array of email addresses and returns a new array containing only the valid email addresses. The function should also throw an exception if any of the email addresses contain special characters or numbers. Write the function `filterEmails(emails: string[]): string[]` to solve this task.

**Function Signature:** `filterEmails(emails: string[]): string[]`

**Input**
- The `emails` parameter is an array of strings representing email addresses.

**Output**
- The function should return a new array containing only the valid email addresses.
- If any of the email addresses contain special characters or numbers, the function should throw an exception.

**Example**
```javascript
filterEmails(["john@gmail.com", "jane@gmail.com", "test123", "test!@#$"]) => ["john@gmail.com", "jane@gmail.com"]
filterEmails(["test1@", "test2@", "test3@"]) => throws an exception
```
0982e39f-758c-4022-863c-7831af244eba
Вам дана функция `validateEmail(email: string): boolean`, которая принимает адрес электронной почты в качестве параметра и возвращает значение `true`, если адрес электронной почты действителен, и значение `false` в противном случае. Ваша задача - реализовать новую функцию `filterEmails(emails:string[]): string[]`, которая принимает массив адресов электронной почты и возвращает новый массив, содержащий только действительные адреса электронной почты. Функция также должна выдавать исключение, если какой-либо из адресов электронной почты содержит специальные символы или цифры. Напишите функцию `filterEmails(emails: string[]): string[]` для решения этой задачи.

**Подпись функции**: `filterEmails(emails:string[]): string[]`

### Ввод

Параметр emails представляет собой массив строк, представляющих адреса электронной почты.

### Выход

Функция должна возвращать новый массив, содержащий только действительные адреса электронной почты.
Если какой-либо из адресов электронной почты содержит специальные символы или цифры, функция должна выдать исключение.

### Пример

```python
filterEmails(["john@gmail.com", "jane@gmail.com", "test123", "test!@#$"]) => ["john@gmail.com", "jane@gmail.com"]
filterEmails(["test1@", "test2@", "test3@"]) => throws an exception
```



submitted
Вам дается функция `validateEmail(email: string): boolean`, которая берет адрес электронной почты в качестве параметра и возвращает `true`, если адрес электронной почты является действительным, и `false` в противном случае. Ваша задача - реализовать новую функцию `filterEmails: string[]): string[]]]]]]: string[]], которая берет массив электронных адресов и возвращает новый массив, содержащий только действительные адреса электронной почты. Функция также должна выбросить исключение, если любой из адресов электронной почты содержит специальные символы или номера. Напишите функцию `filter =>Email: string[]): string[]] для решения этой задачи. **Функция: `filteremails: string[testtest:
{"evolved_from": "You are provided with a code snippet that implements the `getUser()` method in a class. This method takes a string parameter `username` and returns a `User` object based on certain conditions. Your task is to refactor the code, eliminating duplication and adding a new requirement. The refactored code should throw an exception if the `username` parameter contains special characters or numbers. Write a function `refactorCode(username: string): User|null` that handles this refactoring. The function should return a `User` object if any conditions are met, return `null` if no conditions match, and throw an exception if the `username` contains special characters or numbers.\n\n**Function Signature:** `refactorCode(username: string): User|null`\n\n**Input**\n- The `username` parameter is a string representing the username for which the user object needs to be returned.\n\n**Output**\n- The function should return a `User` object if any of the conditions in the code snippet match.\n- If none of the conditions match or if the `username` parameter contains special characters or numbers, the function should return `null`.\n- If the `username` parameter contains special characters or numbers, the function should throw an exception.\n\n**Example**\n```javascript\nrefactorCode(\"john\") => null\nrefactorCode(\"jane\") => instance of User\nrefactorCode(\"123\") => throws an exception\nrefactorCode(\"@#$\") => throws an exception\n```", "kind": "synthetic", "source": "argilla/distilabel-evol-prompt-collective"}