import { default as Long } from 'long'; import { TlPublicKey } from '../../tl/binary/rsa-keys.js'; import { ICryptoProvider } from './abstract.js'; /** * Parse PEM-encoded RSA public key information into modulus and exponent * and compute its fingerprint as defined by MTProto. * * @param crypto Crypto provider * @param key PEM-encoded RSA public key * @param old Whether this is an "old" key */ export declare function parsePublicKey(crypto: ICryptoProvider, key: string, old?: boolean): TlPublicKey; /** * Add public key to the global index. * * @param crypto Crypto provider * @param key PEM-encoded RSA public key * @param old Whether this is an "old" key */ export declare function addPublicKey(crypto: ICryptoProvider, key: string, old?: boolean): void; /** * Get public key by its fingerprint. * * @param fingerprints Fingerprints to match. The first one to match is returned. * @param allowOld Whether to allow "old" keys */ export declare function findKeyByFingerprints(fingerprints: (string | Long)[], allowOld?: boolean): TlPublicKey | null;