export interface Ed25519Keys { privateKey: string; publicSigningKey: string; } /** * @param privateKeyBase58 - string of the private key, if left unspecified, a random private key is generated */ export declare function generateKeys(privateKeyBase58?: string): Ed25519Keys; /** * @param message - message you would like to signed * @param privateKey - string of the public key in base58 * @returns signature that is in base58 */ export declare function signMessage(message: string, privateKey: string): string; /** * @param message - message that was signed * @param publicKey - string of the public key in base58 * @param signature - string in base58 * @returns boolean - true, if signature is valid, else false */ export declare function verifySignature(message: string, publicKey: string, signature: string): boolean; /** * @param privateKey - string of the secret/private key in base58, either on Curve25519 or ED25519 * @param publicKey - string of the public key in base58, either on Curve25519 or scalar multiplication public key based on a secret key * @returns secret share string in hex */ export declare function getSharedSecretHex(privateKey: string, publicKey: string): string; /** * @param message - string in bytes * @param publicKey - string of the public key in base58 - ED25519 * @returns ciphertext string in base64 */ export declare function sealedBox(message: string, publicKey: string): string; /** * @param ciphertext - string in hex * @param publicKey - string of the public key in base58 - ED25519 * @param privateKey - string of the secret/private key in base58 - ED25519 * @returns string of decrytped message */ export declare function sealedBoxOpen(ciphertext: string, publicKey: string, privateKey: string): string; /** * @param publicKey - string of the public key ED25519 in base58 * @returns converted public key on Curve 25519 in base58 */ export declare function getPublicEncryptionKey(publicKey: string): string; /** * @param privateKey - string of the secret/private key ED25519 in base58 * @returns converted secret/private key on Curve 25519 in base58 */ export declare function getPrivateEncryptionKey(privateKey: string): string; /** * @param secretKey - string of the secret/private key ED25519 in base58 * @returns a scalar multiplication public key based on a secret/private key. */ export declare function getXPublicKey(secretKey: string): string; /** * @param masterKey - string of the secret/private key ED25519 in base58 * @param index - subkey id used to derive seed key * @param context - context used to derive the seed key * @returns a new ed25519 signing key */ export declare function deriveIntoED25519Key(masterKey: string, index: number, context: string): string; /** * @param masterKey - string of the secret/private key ED25519 in base58 * @param index - subkey id used to derive seed key * @param context - context used to derive the seed key * @returns a derived key in hex */ export declare function deriveFromED25519Key(masterKey: string, index: number, context: string): string;