import type { CallbackSignerInterface, JsCallbackSignerConfig, NeonCallbackSignerHandle, NeonLocalSignerHandle, LocalSignerInterface, SigningAlg } from "./types.d.ts";
export declare class LocalSigner implements LocalSignerInterface {
    private localSigner;
    constructor(localSigner: NeonLocalSignerHandle);
    static newSigner(certificate: Buffer, privateKey: Buffer, algorithm: SigningAlg, tsaUrl?: string): LocalSigner;
    sign(data: Buffer): Buffer;
    alg(): SigningAlg;
    certs(): Array<Buffer>;
    reserveSize(): number;
    timeAuthorityUrl(): string | undefined;
    getHandle(): NeonLocalSignerHandle;
}
export declare class CallbackSigner implements CallbackSignerInterface {
    private callbackSigner;
    constructor(callbackSigner: NeonCallbackSignerHandle);
    getHandle(): NeonCallbackSignerHandle;
    static newSigner(config: JsCallbackSignerConfig, callback: (data: Buffer) => Promise<Buffer>): CallbackSigner;
    sign(data: Buffer): Promise<Buffer>;
    alg(): SigningAlg;
    certs(): Array<Buffer>;
    reserveSize(): number;
    timeAuthorityUrl(): string | undefined;
    directCoseHandling(): boolean;
}
