The ECDSA algorithm is explained very well here: https://cryptobook.nakov.com/digital-signatures/ecdsa-sign-verify-messages

interface ECDSA {
    derivePublicKey: (privateKeyBytes: number[]) => number[];
    sign: (messageHash: number[], privateKeyBytes: number[]) => number[];
    verify: (
        signature: number[],
        messageHash: number[],
        publicKeyByes: number[],
    ) => boolean;
}

Properties

derivePublicKey: (privateKeyBytes: number[]) => number[]
sign: (messageHash: number[], privateKeyBytes: number[]) => number[]
verify: (
    signature: number[],
    messageHash: number[],
    publicKeyByes: number[],
) => boolean