import path from 'node:path';
import { config } from '../core/config/index.js';
import { getMessages } from '../core/messages/index.js';
import { gerarSnapshotDoConteudo } from './index.js';
import { ensureDir } from '../shared/helpers/index.js';
import { lerEstado, salvarEstado } from '../shared/persistence/index.js';
const { log } = getMessages();
const DESTINO_PADRAO = path.join(config.STATE_DIR, 'integridade.json');
export async function salvarRegistros(fileEntries, destino = DESTINO_PADRAO) {
    const registros = [];
    for (const { relPath, content } of fileEntries) {
        if (!relPath || typeof content !== 'string' || !content.trim())
            continue;
        const assinatura = await gerarSnapshotDoConteudo(content);
        registros.push({ arquivo: relPath, assinatura });
    }
    await ensureDir(destino);
    await salvarEstado(destino, registros);
    log.sucesso(`??? Registro de integridade salvo em: ${destino}`);
}
export async function carregarRegistros(caminho = DESTINO_PADRAO) {
    try {
        return await lerEstado(caminho);
    }
    catch {
        log.aviso(`?? Nenhum registro encontrado em ${caminho}`);
        return [];
    }
}
//# sourceMappingURL=records.js.map