UNPKG

@anpdgovbr/shared-types

Version:

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

131 lines (130 loc) 4.99 kB
"use strict"; /** * @fileoverview * Ponto de entrada principal da biblioteca @anpdgovbr/shared-types (BETA) * * @module shared-types * @version 0.2.2-beta.0 * @author @lucianoedipo * * @beta Esta é uma versão beta em desenvolvimento. Use com cautela em produção. * * @remarks * Este arquivo expõe o símbolo principal "shared-types" que reexporta os tipos, * DTOs, enums, interfaces e contratos base do projeto. Consumidores devem importar * os tipos diretamente deste módulo para garantir contratos consistentes entre * diferentes pacotes e serviços da ANPD. * * Exemplo de uso: * ```ts * import { UserDto, TipoControlador } from "@anpdgovbr/shared-types"; * ``` * * @public * @packageDocumentation * * @see {@link ./dto} para Data Transfer Objects (DTOs) * @see {@link ./enums} para enums utilizados no domínio * @see {@link ./interfaces} para interfaces utilitárias e de resposta * @see {@link ./base} para entidades e contratos base */ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); // ============================================================================ // Data Transfer Objects (DTOs) // ============================================================================ /** * Exporta todos os Data Transfer Objects (DTOs) utilizados para transferência * de dados entre camadas da aplicação. * * @remarks * Os DTOs aqui reexportados definem contratos de entrada/saída entre * serviços, controladores e camadas de persistência. Devem ser tipos * leves e serializáveis, sem lógica de negócio. * * @public * @since 0.1.7-beta-x */ __exportStar(require("./dto"), exports); // ============================================================================ // Enums e Tipos de Domínio // ============================================================================ /** * Exporta enums que representam constantes e valores fixos utilizados no domínio da aplicação. * * @remarks * Os enums reexportados centralizam valores constantes (ex.: status, tipos e ações) * e incluem helpers de validação/asserção/coerção. Preferir usar os helpers * tipados ao lidar com valores externos. * * @public * @since 0.1.7-beta-x */ __exportStar(require("./enums"), exports); // ============================================================================ // Interfaces Utilitárias // ============================================================================ /** * Exporta interfaces utilitárias e de resposta para padronização de contratos entre módulos. * * @remarks * Estas interfaces incluem formatos de resposta padrão, interfaces auxiliares * (p.ex. paginação, metadados) e contratos compartilhados que facilitam a * interoperabilidade entre diferentes módulos da aplicação. * * @public * @since 0.1.7-beta-x */ __exportStar(require("./interfaces"), exports); // ============================================================================ // Entidades e Contratos Base // ============================================================================ /** * Exporta entidades e contratos base para reutilização e padronização de entidades de domínio. * * @remarks * Contém classes/contratos base, tipos de entidade comum e utilitários de * modelagem que devem ser reutilizados por módulos de domínio para manter * consistência estrutural. * * @public * @since 0.1.7-beta-x */ __exportStar(require("./base"), exports); // ============================================================================ // Domínios Específicos // ============================================================================ /** * Exporta tipos canônicos para domínios específicos (ex.: RH). * * @remarks * Inclui catálogos de cargos/funções e estruturas organizacionais, vocabulários e * contratos usados por aplicativos de RH. Não inclui lógica de UI. * * @public * @since 0.1.8 */ __exportStar(require("./domain"), exports); // ============================================================================ // Tipos Transversais (Integrações) // ============================================================================ /** * Exporta tipos transversais usados em integrações (ex.: Microsoft Graph). * * @public * @since 0.1.8 */ __exportStar(require("./transversal"), exports);