Como excluir uma propriedade de um tipo em TypeScript (Exclude property from type)
Olá a todos! Sou novo em TypeScript e encontrei um problema ao trabalhar com tipos de objetos. Tenho uma interface `User` que contém muitos campos: `id`, `name`, `email`, `password`, `createdAt`, `role`, etc. Quando retorno os dados do usuário da API, não quero enviar para o cliente `password` e `createdAt` (são campos internos).
O problema é que não quero criar uma interface separada para a representação pública do usuário, porque isso leva à duplicação de código. Se eu adicionar um novo campo em `User`, terei que lembrar de adicioná-lo também na interface pública.
Aqui está um exemplo:
```typescript
interface User {
id: number;
name: string;
email: string;
password: string;
createdAt: Date;
role: 'admin' | 'user';
}
// Como fazer para obter um tipo sem