Como definir um valor padrão para um objeto de parâmetro de função em TypeScript?
Olá! Comecei a estudar TypeScript recentemente e tive um problema com parâmetros de funções que são objetos.
Digamos que eu tenha uma função que recebe um objeto com configurações:
```typescript
function createUser(config: { name: string; age: number; isAdmin: boolean }) {
// ...
}
```
Eu quero que o parâmetro `config` seja opcional e, se não for passado, valores padrão sejam usados. Em JavaScript, eu faria assim:
```javascript
function createUser(config = { name: 'Guest', age: 18, isAdmin: false }) {
// ...
}
```
Mas em TypeScript isso não funciona porque o tipo de `config` precisa ser definido. Tentei diferentes abordagens:
1. Apenas definir o valor padrão — TypeScript reclama de incompatibilidade de tipos.
2. Usar `Partial` — mas aí não consigo definir valores padrão específicos.
3. Tornar todos os campos opcionais com `?` — mas perde-se a rigidez dos tipos.
Aqui está um exemplo do meu código que não compila