UNPKG

@anpdgovbr/shared-types

Version:

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

39 lines 1.25 kB
/** * Tipos utilitários para árvores genéricas. * Úteis para domínios que modelam árvores (RH, orgs, categorias, etc.). * * @fileoverview * Utilitários de tipagem para representar nós de uma estrutura em árvore. * Os tipos são intencionados a ser leves e reutilizáveis em múltiplos domínios. * * @public */ export interface TreeNode<T> { /** * Identificador único do nó dentro da árvore. * * Deve ser suficiente para diferenciar nós irmãos e permitir buscas/associações. */ id: string; /** * Payload associado a este nó. * * @typeParam T - Tipo dos dados armazenados no nó (p.ex. informações de cargo, categoria, metadata). * Pode ser undefined quando o nó atua apenas como marcador estrutural. */ data?: T; /** * Identificador do nó pai. * * Pode ser undefined para nós raiz. Usado para reconstruir hierarquias a partir de listas planas. */ parentId?: string; /** * Filhos diretos deste nó. * * Opcional para permitir representações tanto em forma plana (lista com parentId) * quanto em forma de árvore aninhada. */ children?: TreeNode<T>[]; } //# sourceMappingURL=tree.interface.d.ts.map