/**
 * Create web crypto params for ECDSA.
 *
 * @param {Curves} curve
 * @returns {{name: 'ECDSA', namedCurve: 'P-256' | 'P-384' | 'P-521', hash: 'SHA-256' | 'SHA-384' | 'SHA-512'}}
 */
export function createEcdsaParams(curve: Curves): {
    name: "ECDSA";
    namedCurve: "P-256" | "P-384" | "P-521";
    hash: "SHA-256" | "SHA-384" | "SHA-512";
};
/**
 * ECDSA signer for ES256, ES384, and ES512 using WebCrypto
 *
 * @implements {ISigner}
 */
export class ECDSASigner extends DID implements ISigner {
    /**
     * Generate a new signer
     *
     * @param {Curves} curve
     */
    static generate(curve: Curves): Promise<ECDSASigner>;
    /**
     * Import a signer from a JWK
     *
     * @param {import('iso-did/types').ECJWKPrivate} jwk
     * @param {import('iso-did/types').VerifiableDID} [did]
     */
    static importJwk(jwk: import("iso-did/types").ECJWKPrivate, did?: import("iso-did/types").VerifiableDID): Promise<ECDSASigner>;
    /**
     * Import a signer from a CryptoKeyPair
     *
     * @param {CryptoKeyPair} key
     * @param {import('iso-did/types').VerifiableDID} [did]
     */
    static import(key: CryptoKeyPair, did?: import("iso-did/types").VerifiableDID): Promise<ECDSASigner>;
    /**
     * @param {import('iso-did/types').VerifiableDID} did
     * @param {CryptoKeyPair} keypair
     */
    constructor(did: import("iso-did/types").VerifiableDID, keypair: CryptoKeyPair);
    /** @type {import('../types.js').SignatureType} */
    signatureType: import("../types.js").SignatureType;
    curve: "P-256" | "P-384" | "P-521";
    /**
     * Sign a message
     *
     * @param {Uint8Array} message
     */
    sign(message: Uint8Array): Promise<Uint8Array<ArrayBufferLike>>;
    /**
     * Export the signer as a CryptoKeyPair
     *
     * @returns {CryptoKeyPair}
     */
    export(): CryptoKeyPair;
    #private;
}
export type ISigner = import("../types.js").ISigner<CryptoKeyPair>;
export type Curves = Extract<import("iso-did/types").KeyType, "P-256" | "P-384" | "P-521">;
export type SignatureTypes = Extract<import("../types.js").SignatureType, "ES256" | "ES384" | "ES512">;
import { DID } from 'iso-did';
//# sourceMappingURL=ecdsa.d.ts.map