import type { Key, PublicNonces, SignatureOutput } from "../types";
import type { HashFunction } from "../core/types";
import { Schnorrkel } from "./Schnorrkel";
export declare class SchnorrSigner extends Schnorrkel {
    #private;
    constructor(_privKey: Uint8Array);
    getAddress(): string;
    getPubKey(): Key;
    getPubNonces(): PublicNonces;
    generatePubNonces(): PublicNonces;
    restorePubNonces(kPrivateKey: Key, kTwoPrivateKey: Key): PublicNonces;
    hasNonces(): boolean;
    signMultiSigMsg(msg: string, publicKeys: Key[], publicNonces: PublicNonces[]): SignatureOutput;
    signMultiSigHash(hash: string, publicKeys: Key[], publicNonces: PublicNonces[]): SignatureOutput;
    signMessage(msg: string, hashFn?: HashFunction): SignatureOutput;
    signHash(hash: string): SignatureOutput;
}
