import type { AutoFirmaClientOptions, AutoScriptApi, CertificateResult, CheckTimeOptions, ExtraParameters, SaveOptions, SignatureClient, SignOptions, SignResult, SignBatchOptions, SignBatchResult } from "./types.js"; /** * Cliente moderno y fino sobre la API oficial AutoScript. */ export declare class AutoFirmaClient implements SignatureClient { private readonly autoScript; constructor(options?: AutoFirmaClientOptions); /** * Solicita a AutoScript que prepare o abra AutoFirma. */ initialize(): void; /** * Firma los datos proporcionados. */ sign(options: SignOptions): Promise; /** * Firma un lote local. Los parámetros del lote son comunes; un documento * puede traer los suyos, que AutoFirma usa en lugar de los comunes. */ signBatch(options: SignBatchOptions): Promise; /** * Añade una firma al mismo nivel cuando AutoScript expone la operación. */ coSign(options: SignOptions): Promise; /** * Contrafirma cuando AutoScript expone la operación. */ counterSign(options: SignOptions): Promise; /** * Abre la selección de certificado sin iniciar una firma. */ selectCertificate(parameters?: ExtraParameters): Promise; /** * Pide a AutoFirma que guarde datos en un fichero elegido por la persona * usuaria. */ saveDataToFile(options: SaveOptions): Promise; /** * Comprueba la sincronía del reloj del equipo contra un servidor. * * AutoScript lo implementa con una petición XHR **síncrona** que bloquea el * hilo principal (`xhr.open('GET', url, false)`) hasta obtener respuesta. * Si no se indica `checkUrl`, la petición se envía contra * `document.URL + '/' + Math.random()`: una URL inventada contra el propio * origen de la página, un acceso de red no documentado en ningún otro sitio * y que este método no evita ni controla, pese a que esta librería no hace * ningún acceso de red propio. * * El único efecto observable de un desfase es un `alert()` nativo; AutoScript * captura y silencia cualquier error (por ejemplo, que la petición falle). * Por eso la promesa devuelta nunca informa del resultado de la * comprobación: se resuelve siempre que la operación exista, haya o no * desfase y haya o no error de red. * * Con `checkType: "CT_OBLIGATORY"` y un desfase detectado, AutoScript marca * un estado interno (`severeTimeDelay`) que hace que su función de carga * (`cargarAppAfirma`, a la que invoca `initialize()`) registre un aviso y * retorne sin hacer nada la siguiente vez que se ejecute. El orden de * llamadas importa y no está documentado: invocar * `checkTime({ checkType: "CT_OBLIGATORY" })` antes de `initialize()` puede * convertir `initialize()` en un no-op silencioso; invocarlo después de * `initialize()` no afecta a una carga que ya se ha iniciado. * * Si no se indica `maxMillis`, se reenvía tal cual: AutoScript aplica * entonces su propio valor por defecto (300000 ms, 5 minutos) en vez de uno * impuesto aquí. */ checkTime(options?: CheckTimeOptions): Promise; /** * Devuelve el objeto oficial para casos que el wrapper todavía no cubra. */ get raw(): AutoScriptApi; /** * Valida que exista la operación opcional antes de ejecutarla. */ private executeRequired; /** * Rechazo homogéneo para operaciones ausentes en la versión fijada. */ private unsupported; /** * Normaliza datos y parámetros antes de delegar en AutoScript. */ private execute; /** Evita pisar callbacks nativos; libera también tras cancelaciones y errores. */ private withOperation; }