Explain each step of this Typescript type to me, a beginner:

type ExtractPII<Type> = {
  [Property in keyof Type]: Type[Property] extends { pii: true } ? true : false;
};
system
Explique cada etapa deste tipo de texto datilografado para mim, um iniciante:

Tipo Extractpii <Tepe> = {
  [Propriedade em KeyOf Type]: Tipo [Propriedade] estende {PII: True}?verdadeiro falso;
};
user
Aqui está uma explicação do tipo Extractpii:
1. Tipo Parâmetro ���������� O tipo Extractpii pega um parâmetro de tipo único chamado Tipo.
2. Tipo de objeto ��������� `` O tipo extractpii produz um tipo de objeto.
3. Tipo mapeado ��������� O tipo de objeto contém um valor para cada chave no tipo.
4. Valor do tipo mapeado ��������� `` O valor no objeto produzido para uma determinada tecla depende se seu valor no parâmetro de tipo é um objeto com a propriedade "PII" igual a "true".
5. Tipo condicional ��������� 'O valor para uma determinada chave no objeto produzido for verdadeiro se sua propriedade "PII" no parâmetro de tipo for verdadeira e falsa caso contrário.
assistant
<|system|>
</s>
<|user|>
Explique cada etapa deste tipo de texto datilografado para mim, um iniciante:

Tipo Extractpii <Tepe> = {
  [Propriedade em KeyOf Type]: Tipo [Propriedade] estende {PII: True}?verdadeiro falso;
};</s>
<|assistant|>
Aqui está uma explicação do tipo Extractpii:
1. Tipo Parâmetro ���������� O tipo Extractpii pega um parâmetro de tipo único chamado Tipo.
2. Tipo de objeto ��������� `` O tipo extractpii produz um tipo de objeto.
3. Tipo mapeado ��������� O tipo de objeto contém um valor para cada chave no tipo.
4. Valor do tipo mapeado ��������� `` O valor no objeto produzido para uma determinada tecla depende se seu valor no parâmetro de tipo é um objeto com a propriedade "PII" igual a "true".
5. Tipo condicional ��������� 'O valor para uma determinada chave no objeto produzido for verdadeiro se sua propriedade "PII" no parâmetro de tipo for verdadeira e falsa caso contrário.</s>
