# Только для чтения типов / не обязательный параметр / объединение типов / по умолчанию параметры

Можно создавать элементы которые нельзя изменить. Для этого перед типом указывается ключевое слово readonly.

let user: readonly [string, number] = ['john', 31];

пример не обязательного типа - ? (на кортеже), можно использовать на других

let user: [string, number, boolean?];

Объединение типов

let test: string | number;

Значения параметров по умолчанию

function func(first: string, last: string = 'snow') { 
	return first + ' ' + last;
}