<?php
declare(strict_types=1);
require __DIR__ . '/bootstrap.php';

use Acbr\Configuration;
use Acbr\Emitter;

$emitter = null;
$exitCode = 0;
try {
    $document = acbrExampleDocument();
    $emitter = new Emitter(
        new Configuration('11222333000181', 'CE', modelo: 55, ambiente: 2),
        timeoutMs: 10000,
    );
    $result = $emitter->gerarXml($document);
    acbrExamplePrint($result);
    if (!$result->sucesso()) {
        $exitCode = 1;
    } else {
        $xml = $result->xml(); // Acesso explícito; não imprima conteúdo em logs.
        acbrExamplePrint(['ambiente' => 'HOMOLOGACAO', 'xmlBytes' => strlen($xml ?? ''), 'semValorFiscal' => true]);
    }
} catch (Throwable $error) {
    acbrExampleError($error);
    $exitCode = 1;
} finally {
    $emitter?->fechar();
}
exit($exitCode);
