Помимо этого, TypeScript способен сузить тип Layer, основываясь на теге: function drawLayer(layer: Layer) { if (layer.type === 'fill') { const {paint} = layer; // Тип FillPaint const {layout} = layer; // Тип FillLayout } else if (layer.type === 'line') {