/// <reference types="node" />
import { PrivateApiClient } from '@dfns/private-api-client';
import { DfnsSigner } from './types';
export declare class SigningGroup implements DfnsSigner {
    protected publicKeyId: string;
    protected orgId: string;
    protected publicKey: Buffer;
    protected privateApiUrl: string;
    protected api: PrivateApiClient;
    protected headers: Record<string, string>;
    protected constructor();
    static builder(): SigningGroup;
    setOrgId(orgId: string): SigningGroup;
    setPublicKeyId(publicKeyId: string): SigningGroup;
    setPrivateApiUrl(privateApiUrl: string): SigningGroup;
    buildClient(): SigningGroup;
    build(): Promise<SigningGroup>;
    protected checkRequiredParameters(): void;
    protected resolvePrivateApiUrl(): string;
    protected init(): Promise<void>;
    getPublicKey(): Buffer;
    protected checkInitializedAndRequiredParameters(): void;
    protected checkClientInitialized(): void;
    protected checkPublicKeyInitialized(): void;
    protected getPublicKeyAsync(): Promise<Buffer>;
    sign(hash: Buffer): Promise<import("@dfns/private-api-client").SignersCoordinatorSignResponse>;
}
export declare class SigningGroupNotInitializedError extends Error {
    constructor(message?: string);
}
export declare function createSigner({ orgId, publicKeyId }: {
    orgId: string;
    publicKeyId: string;
}): Promise<SigningGroup>;
