/** All supported key types */ declare enum KeyType { ED25519 = 0, SECP256K1 = 1, MLDSA65 = 2 } type CurveType = 'ed25519' | 'ED25519' | 'secp256k1' | 'SECP256K1' | 'ml-dsa-65' | 'ML-DSA-65'; type KeyPairString = `ed25519:${string}` | `secp256k1:${string}` | `ml-dsa-65:${string}`; declare class ED25519PublicKey { keyType: KeyType; data: Uint8Array; } declare class SECP256K1PublicKey { keyType: KeyType; data: Uint8Array; } declare class MLDSA65PublicKey { keyType: KeyType; data: Uint8Array; } /** * DUPLICATED FROM @near-js/types - REPLACE WITH IMPORTED REFERENCE AND DELETE * This ends up being necessary for Wallet Selector dependencies with * outdated peer dependencies and should only be temporary */ declare abstract class Enum { abstract enum: string; constructor(properties: any); } /** * PublicKey representation that has type and bytes of the key. */ declare class PublicKey extends Enum { enum: string; ed25519Key?: ED25519PublicKey; secp256k1Key?: SECP256K1PublicKey; mlDsa65Key?: MLDSA65PublicKey; constructor(publicKey: { keyType: KeyType; data: Uint8Array; }); /** * Creates a PublicKey instance from a string or an existing PublicKey instance. * @param value The string or PublicKey instance to create a PublicKey from. * @returns {PublicKey} The PublicKey instance. */ static from(value: string | PublicKey): PublicKey; /** * Creates a PublicKey instance from an encoded key string. * @param encodedKey The encoded key string. * @returns {PublicKey} The PublicKey instance created from the encoded key string. */ static fromString(encodedKey: string): PublicKey; /** * Returns a string representation of the public key. * @returns {string} The string representation of the public key. */ toString(): string; /** * Verifies a message signature using the public key. * @param message The message to be verified. * @param signature The signature to be verified. * @returns {boolean} `true` if the signature is valid, otherwise `false`. */ verify(message: Uint8Array, signature: Uint8Array): boolean; get keyPair(): ED25519PublicKey | SECP256K1PublicKey | MLDSA65PublicKey | undefined; get keyType(): KeyType; get data(): Uint8Array; } declare function keyToImplicitAddress(publicKey: string | PublicKey): string; export { type CurveType as C, type KeyPairString as K, PublicKey as P, KeyType as a, keyToImplicitAddress as k };