import type { tDeclaracao } from "../types"; /** * Tipo para declaração formatada. * * A estrutura é idêntica a tDeclaracao, mas os valores dos campos * estão formatados para leitura humana ao invés do formato DIMOB raw. */ export type tDeclaracaoFormatada = { Header: Record; R01: Record; R02: Array>; R03: Array>; R04: Array>; T09: Record; }; /** * Formata uma declaração DIMOB para formato legível (valores convertidos). * * Converte valores do formato DIMOB raw para formato legível: * - Datas: DDMMYYYY → DD/MM/YYYY * - Moeda: centavos string → número decimal * - Números: string com zeros → integer * * Preserva toda a estrutura e metadados dos campos, alterando apenas * a propriedade `valor` de cada campo. * * @param declaracao - Declaração DIMOB com valores raw * @returns Objeto formatado com valores legíveis */ export declare const formatarDeclaracaoParaLeitura: (declaracao: tDeclaracao) => tDeclaracaoFormatada; /** * Serializa uma declaração DIMOB para string JSON legível. * * Combina formatarDeclaracaoParaLeitura() com JSON.stringify() * para gerar JSON formatado e legível. Os valores são convertidos * do formato DIMOB raw para formato legível (datas, moeda, números). * * @param declaracao - Declaração DIMOB a serializar * @param pretty - Se true, usa indentação de 2 espaços (padrão: true) * @returns String JSON da declaração formatada */ export declare const serializarDeclaracaoParaJSON: (declaracao: tDeclaracao, pretty?: boolean) => string; //# sourceMappingURL=json.d.ts.map