Oi Leandro, como vai?
Entendo sua frustração em relação à falta de exemplos sobre export default durante a aula. Seu feedback será passado para a equipe responsável para melhorarmos cada vez mais.
Sobre o conteúdo, vou tentar te ajudar a compreender melhor essa questão.
A utilização de {} no import é comum quando você está importando uma ou mais variáveis, funções ou classes específicas que foram exportadas individualmente (named exports) de um módulo.
No entanto, quando um módulo exporta um único valor como padrão (default export), a sintaxe de importação muda um pouco.
No caso do export default, você não precisa usar as chaves {} na hora de importar. Você pode simplesmente dar um nome ao valor importado e usá-lo diretamente.
Para ficar mais claro, imagine que você tem um módulo chamado saldo.ts que exporta uma função chamada depositar como padrão:
// saldo.ts
export default function depositar(valor: number): void {
// Lógica para depositar o valor no saldo
}
Para importar e usar essa função em outro módulo, como transacoes.ts, você faria o seguinte:
// transacoes.ts
import depositar from "./saldo.js";
depositar(1000); // Deposita 1000 no saldo
A principal diferença é que, ao importar um default export, você não precisa especificar o nome original da função (no caso, depositar) entre chaves. Você pode escolher qualquer nome que quiser para se referir a ela no módulo atual (desde que seja um nome válido em TypeScript).
Espero que essa explicação tenha ajudado a esclarecer a diferença entre named exports e default exports e como importá-los corretamente.
Se tiver mais alguma dúvida, pode me perguntar! Conte com nosso apoio :)
Abraços e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado