Solución
solution.tsTypeScript
interface User {
id: number;
name: string;
email: string;
password: string;
role: string;
}
// Creá PublicUser usando Pick (solo id, name, email)
type PublicUser = Pick<User, "id" | "name" | "email">;
// Creá UserWithoutPassword usando Omit (sin password)
type UserWithoutPassword = Omit<User, "password">;
export function getPublicUser(): PublicUser {
// Retorná un objeto que cumpla PublicUser
return { id: 1, name: "Ana", email: "ana@mail.com" };
}
export function getUserWithoutPassword(): UserWithoutPassword {
// Retorná un objeto que cumpla UserWithoutPassword
return { id: 1, name: "Ana", email: "ana@mail.com", role: "admin" };
}0respuestas