Propriedades somente leitura na interface em TypeScript

As propriedades somente leitura são definidas apenas uma vez quando o objeto é criado. Depois disso, elas não podem ser alteradas. Para declarar essas propriedades, usa-se a palavra-chave readonly.

Vamos pegar a interface IFigure, criada na lição anterior. Mas agora vamos definir acesso somente leitura para a propriedade width:

typescriptinterface IFigure {
  height: number;
  readonly width: number;
}

Vamos criar um objeto rectangle:

typescriptlet rectangle: IFigure = {
  height: 200,
  width: 300
}

Vamos alterar a altura:

typescriptrectangle.height = 150;

Agora vamos alterar a largura e veremos um erro, pois a largura foi declarada como imutável:

typescriptrectangle.width = 400; // erro
Задание 1

Crie uma interface IUser, na qual a propriedade salary será acessível apenas para leitura.