UNPKG

@anpdgovbr/shared-types

Version:

Biblioteca central de tipos TypeScript compartilhados para os projetos da ANPD (BETA)

40 lines (39 loc) 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NIVEL_SENIORIDADE_VALUES = exports.NivelSenioridade = void 0; exports.isNivelSenioridade = isNivelSenioridade; exports.assertNivelSenioridade = assertNivelSenioridade; exports.coerceNivelSenioridade = coerceNivelSenioridade; /** * Enumeração de níveis de senioridade de cargo. */ var NivelSenioridade; (function (NivelSenioridade) { NivelSenioridade["DIRETOR"] = "diretor"; NivelSenioridade["COORDENADOR_GERAL"] = "coordenador_geral"; NivelSenioridade["COORDENADOR"] = "coordenador"; NivelSenioridade["CHEFE"] = "chefe"; NivelSenioridade["GERENTE"] = "gerente"; NivelSenioridade["ASSESSOR"] = "assessor"; NivelSenioridade["ESTAGIARIO"] = "estagiario"; })(NivelSenioridade || (exports.NivelSenioridade = NivelSenioridade = {})); exports.NIVEL_SENIORIDADE_VALUES = [ NivelSenioridade.DIRETOR, NivelSenioridade.COORDENADOR_GERAL, NivelSenioridade.COORDENADOR, NivelSenioridade.CHEFE, NivelSenioridade.GERENTE, NivelSenioridade.ASSESSOR, NivelSenioridade.ESTAGIARIO, ]; const NIVEL_SENIORIDADE_SET = new Set(exports.NIVEL_SENIORIDADE_VALUES); function isNivelSenioridade(value) { return typeof value === "string" && NIVEL_SENIORIDADE_SET.has(value); } function assertNivelSenioridade(value) { if (!isNivelSenioridade(value)) throw new Error(`NivelSenioridade inválido: ${String(value)}`); } function coerceNivelSenioridade(value, fallback = NivelSenioridade.ASSESSOR) { return isNivelSenioridade(value) ? value : fallback; }