nested-keys-union
é um tipo de utilitário TypeScript que gera um tipo de união que representa todas as chaves aninhadas possíveis dentro de uma determinada estrutura de objeto aninhado. Ele oferece suporte a arrays, objetos e tipos primitivos, permitindo navegar e trabalhar facilmente com estruturas profundamente aninhadas.
npm install nested-keys-union --save-dev
yarn add -D nested-keys-union
pnpm add nested-keys-union --save-dev
import { NestedKeys } from 'nested-keys-union' ;
// Example object with nested structure
const exampleObject = {
name : 'John Doe' ,
age : 30 ,
address : {
city : 'Example City' ,
postalCode : '12345' ,
contacts : [
{ type : 'email' , value : '[email protected]' } ,
{ type : 'phone' , value : '555-1234' } ,
] ,
} ;
} ;
// Get the union type of all nested keys
type AllNestedKeys = NestedKeys < typeof exampleObject > ;
// Usage example
const nestedKey : AllNestedKeys = 'address.contacts.0.value' ;
Neste exemplo, NestedKeys
é usado para obter um tipo de união AllNestedKeys
que representa todas as chaves possíveis dentro da estrutura exampleObject
. O tipo resultante AllNestedKeys
pode ser usado para garantir a segurança do tipo ao trabalhar com chaves aninhadas.
Contribuições são bem-vindas! Sinta-se à vontade para abrir problemas ou enviar solicitações pull para aprimorar a funcionalidade ou documentação.
Este projeto está licenciado sob a licença MIT - consulte o arquivo LICENSE.md para obter detalhes.