{
descricao_proc_emi: { key: 'procEmi', type: Types.Values(*%w[1 2 3 4 22]) },
cpf_do_trabalhador: { key: 'cpfTrab', type: Types::String },
matricula_do_trabalhador: { key: 'matricula', type: Types::String.optional },
categoria_do_trabalhador: { key: 'codCateg', type: Types::CategoriaTrabalhadorTsv.optional },
data_de_inicio: { key: 'dtIniCondicao', type: Types::Date },
tipo_de_estabelecimento: { key: 'localAmb', type: Types.Values('1') },
descricao_do_setor: { key: 'dscSetor', type: Types::String },
tipo_de_inscricao_do_estabelecimento: { key: 'infoAmb/tpInsc', type: Types.Values('1') },
numero_de_inscricao_do_estabelecimento: { key: 'infoAmb/nrInsc', type: Types::String },
descricao_das_atividades: { key: 'dscAtivDes', type: Types::String },
observacoes_complementares: { key: 'obsCompl', type: Types::String.optional },
e_social_recibo: { key: 'nrRecibo', type: Types::String },
agentes_nocivos: { key: 'agNoc', attributes: {
agente_nocivo_e_social_codigo: { key: 'codAgNoc', type: Types::String },
descricao: { key: 'dscAgNoc', type: Types::String.optional },
tipo_de_avaliacao: { key: 'tpAval', type: Types.Values(*%w[1 2]).optional },
intensidade_da_exposicao: { key: 'intConc', type: Types::Decimal.optional },
limite_de_tolerancia: { key: 'limTol', type: Types::Integer.optional },
unidade_de_medida: { key: 'unMed', type: Types.Values(*(1..30).map(&:to_s)).optional },
tecnica_de_medicao: { key: 'tecMedicao', type: Types::String.optional },
implementa_medidas_de_protecao_coletiva: { key: 'utilizEPC', type: Types.Values(*%w[0 1 2]).optional },
epcs_neutralizam_o_risco: { key: 'eficEpc', type: Types::SNBool.optional },
utilizacao_de_epi: { key: 'utilizEPI', type: Types.Values(*%w[0 1 2]).optional },
epis_neutralizam_o_risco: { key: 'eficEpi', type: Types::SNBool.optional },
epi_implementacao_de_medidas_de_protecao: { key: 'medProtecao', type: Types::SNBool.optional },
epi_observadas_as_condicoes_de_funcionamento: { key: 'condFuncto', type: Types::SNBool.optional },
epi_observado_o_uso_ininterrupto: { key: 'usoInint', type: Types::SNBool.optional },
epi_observado_o_prazo_de_validade: { key: 'przValid', type: Types::SNBool.optional },
epi_observada_a_periodicidade_de_troca: { key: 'periodicTroca', type: Types::SNBool.optional },
epi_observada_a_higienizacao: { key: 'higienizacao', type: Types::SNBool.optional },
epis: { key: 'epi', attributes: {
certificado_de_aprovacao: { key: 'docAval', type: Types::String.optional },
descricao: { key: 'dscEPI', type: Types::String.optional }
} }
} },
responsaveis: { key: 'respReg', attributes: {
cpf: { key: 'cpfResp', type: Types::String },
orgao_de_classe: { key: 'ideOC', type: Types.Values(*%w[1 4 9]) },
orgao_de_classe_outro_descricao: { key: 'dscOC', type: Types::String.optional },
orgao_de_classe_numero: { key: 'nrOC', type: Types::String },
orgao_de_classe_uf: { key: 'ufOC', type: Types::String }
} }
}.freeze