UNPKG

@nativescript/core

Version:

A JavaScript library providing an easy to use api for interacting with iOS and Android platform APIs.

64 lines (63 loc) 2.34 kB
type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | BigInt64Array | BigUint64Array | Float32Array | Float64Array; type HashTypes = 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512'; type Hash = HashTypes | { name: HashTypes; }; export interface HmacKeyGenParams { name: 'HMAC'; hash: Hash; length?: number; } export type KeyUsages = 'encrypt' | 'decrypt' | 'sign' | 'verify' | 'deriveKey' | 'deriveBits' | 'wrapKey' | 'unwrapKey'; declare const parent_: unique symbol; declare const native_: unique symbol; declare const algorithm_: unique symbol; declare const usages_: unique symbol; declare const extractable_: unique symbol; declare const type_: unique symbol; declare const privateKey_: unique symbol; declare const publicKey_: unique symbol; export declare class CryptoKey { [parent_]: any; [native_]: any; [algorithm_]: any; [usages_]: any; [extractable_]: any; [type_]: any; get algorithm(): any; get usages(): any; get extractable(): any; get type(): any; static fromNative(key: any): CryptoKey; } export declare class CryptoKeyPair { [native_]: any; [privateKey_]: any; [publicKey_]: any; get privateKey(): any; get publicKey(): any; static fromNative(keyPair: any): CryptoKeyPair; } interface RsaOaepParams { name: 'RSA-OAEP'; label?: TypedArray | ArrayBuffer; } interface RsaHashedKeyGenParams { name: 'RSA-OAEP'; modulusLength: number; publicExponent: Uint8Array; hash: Hash; } export declare class SubtleCrypto { digest(algorithm: 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512', data: TypedArray | ArrayBuffer): Promise<unknown>; encrypt(algorithm: RsaOaepParams, key: CryptoKey, data: TypedArray | ArrayBuffer): Promise<unknown>; decrypt(algorithm: RsaOaepParams, key: CryptoKey, data: TypedArray | ArrayBuffer): Promise<unknown>; sign(algorithm: { name: 'HMAC'; } | 'HMAC', key: CryptoKey, data: TypedArray | ArrayBuffer): Promise<unknown>; verify(algorithm: { name: 'HMAC'; } | 'HMAC', key: CryptoKey, signature: ArrayBuffer, data: ArrayBuffer): Promise<unknown>; generateKey(algorithm: HmacKeyGenParams | RsaHashedKeyGenParams, extractable: boolean, keyUsages: KeyUsages[]): Promise<unknown>; } export {};