expo-crypto-universal-web
Version:
Web implementation of expo-crypto-universal
37 lines (33 loc) • 1.41 kB
TypeScript
import { AbstractCryptoModule } from 'expo-crypto-universal';
/**
* A module that provides cryptographic operations using the Web Crypto API.
* This implementation is compatible with both browser and Node.js environments.
*/
export declare class WebCryptoModule extends AbstractCryptoModule {
/**
* Fills the provided Uint8Array with cryptographically strong random values.
* @param array - The Uint8Array to fill with random values.
* @returns The same Uint8Array, filled with random values.
*/
getRandomValues(array: Uint8Array): Uint8Array;
/**
* Computes the SHA-256 hash of the provided data.
* @param data - The data to hash.
* @returns A Promise that resolves to a Uint8Array containing the hash.
*/
sha256Async(data: Uint8Array): Promise<Uint8Array>;
/**
* Computes the SHA-384 hash of the provided data.
* @param data - The data to hash.
* @returns A Promise that resolves to a Uint8Array containing the hash.
*/
sha384Async(data: Uint8Array): Promise<Uint8Array>;
/**
* Computes the SHA-512 hash of the provided data.
* @param data - The data to hash.
* @returns A Promise that resolves to a Uint8Array containing the hash.
*/
sha512Async(data: Uint8Array): Promise<Uint8Array>;
}
export declare const webCryptoModule: WebCryptoModule;
export { }