mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-08-12 04:50:18 +00:00
fix types of node crypto module
This commit is contained in:
Vendored
+75
-30
@@ -2142,6 +2142,35 @@ declare module "tls" {
|
||||
}
|
||||
|
||||
declare module "crypto" {
|
||||
export interface Certificate {
|
||||
exportChallenge(spkac: string | Buffer): Buffer;
|
||||
exportPublicKey(spkac: string | Buffer): Buffer;
|
||||
verifySpkac(spkac: Buffer): boolean;
|
||||
}
|
||||
export var Certificate: {
|
||||
new (): Certificate;
|
||||
(): Certificate;
|
||||
}
|
||||
|
||||
export function createECDH(curve_name: string): ECDH;
|
||||
export interface ECDH {
|
||||
generateKeys(): Buffer;
|
||||
generateKeys(encoding: "latin1" | "hex" | "base64"): string;
|
||||
generateKeys(encoding: "latin1" | "hex" | "base64", format: "compressed" | "uncompressed" | "hybrid"): string;
|
||||
computeSecret(other_public_key: Buffer): Buffer;
|
||||
computeSecret(other_public_key: string, input_encoding: "latin1" | "hex" | "base64"): Buffer;
|
||||
computeSecret(other_public_key: string, input_encoding: "latin1" | "hex" | "base64", output_encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPrivateKey(): Buffer;
|
||||
getPrivateKey(encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPublicKey(): Buffer;
|
||||
getPublicKey(encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPublicKey(encoding: "latin1" | "hex" | "base64", format: "compressed" | "uncompressed" | "hybrid"): string;
|
||||
setPrivateKey(private_key: Buffer): void;
|
||||
setPrivateKey(private_key: string, encoding: "latin1" | "hex" | "base64"): void;
|
||||
}
|
||||
|
||||
export var fips: boolean;
|
||||
|
||||
export interface CredentialDetails {
|
||||
pfx: string;
|
||||
key: string;
|
||||
@@ -2154,19 +2183,18 @@ declare module "crypto" {
|
||||
export interface Credentials { context?: any; }
|
||||
export function createCredentials(details: CredentialDetails): Credentials;
|
||||
export function createHash(algorithm: string): Hash;
|
||||
export function createHmac(algorithm: string, key: string): Hmac;
|
||||
export function createHmac(algorithm: string, key: Buffer): Hmac;
|
||||
export interface Hash {
|
||||
update(data: any, input_encoding?: string): Hash;
|
||||
digest(encoding: 'buffer'): Buffer;
|
||||
digest(encoding: string): any;
|
||||
export function createHmac(algorithm: string, key: string | Buffer): Hmac;
|
||||
export interface Hash extends NodeJS.ReadWriteStream {
|
||||
update(data: string | Buffer): Hash;
|
||||
update(data: string | Buffer, input_encoding: "utf8" | "ascii" | "latin1"): Hash;
|
||||
digest(): Buffer;
|
||||
digest(encoding: "latin1" | "hex" | "base64"): string;
|
||||
}
|
||||
export interface Hmac extends NodeJS.ReadWriteStream {
|
||||
update(data: any, input_encoding?: string): Hmac;
|
||||
digest(encoding: 'buffer'): Buffer;
|
||||
digest(encoding: string): any;
|
||||
update(data: string | Buffer): Hmac;
|
||||
update(data: string | Buffer, input_encoding: "utf8" | "ascii" | "latin1"): Hmac;
|
||||
digest(): Buffer;
|
||||
digest(encoding: "latin1" | "hex" | "base64"): string;
|
||||
}
|
||||
export function createCipher(algorithm: string, password: any): Cipher;
|
||||
export function createCipheriv(algorithm: string, key: any, iv: any): Cipher;
|
||||
@@ -2177,8 +2205,9 @@ declare module "crypto" {
|
||||
update(data: string, input_encoding: "utf8" | "ascii" | "binary", output_encoding: "binary" | "base64" | "hex"): string;
|
||||
final(): Buffer;
|
||||
final(output_encoding: string): string;
|
||||
setAutoPadding(auto_padding: boolean): void;
|
||||
setAutoPadding(auto_padding?: boolean): void;
|
||||
getAuthTag(): Buffer;
|
||||
setAAD(buffer: Buffer): void;
|
||||
}
|
||||
export function createDecipher(algorithm: string, password: any): Decipher;
|
||||
export function createDecipheriv(algorithm: string, key: any, iv: any): Decipher;
|
||||
@@ -2189,37 +2218,51 @@ declare module "crypto" {
|
||||
update(data: string, input_encoding: "binary" | "base64" | "hex", output_encoding: "utf8" | "ascii" | "binary"): string;
|
||||
final(): Buffer;
|
||||
final(output_encoding: string): string;
|
||||
setAutoPadding(auto_padding: boolean): void;
|
||||
setAutoPadding(auto_padding?: boolean): void;
|
||||
setAuthTag(tag: Buffer): void;
|
||||
setAAD(buffer: Buffer): void;
|
||||
}
|
||||
export function createSign(algorithm: string): Signer;
|
||||
export interface Signer extends NodeJS.WritableStream {
|
||||
update(data: any): void;
|
||||
sign(private_key: string): Buffer;
|
||||
sign(private_key: string, output_format: 'latin1' | 'hex' | 'base64'): string;
|
||||
update(data: string | Buffer): Signer;
|
||||
update(data: string | Buffer, input_encoding: "utf8" | "ascii" | "latin1"): Signer;
|
||||
sign(private_key: string | { key: string; passphrase: string }): Buffer;
|
||||
sign(private_key: string | { key: string; passphrase: string }, output_format: "latin1" | "hex" | "base64"): string;
|
||||
}
|
||||
export function createVerify(algorith: string): Verify;
|
||||
export interface Verify extends NodeJS.WritableStream {
|
||||
update(data: any): void;
|
||||
update(data: string | Buffer): Verify;
|
||||
update(data: string | Buffer, input_encoding: "utf8" | "ascii" | "latin1"): Verify;
|
||||
verify(object: string, signature: Buffer): boolean;
|
||||
verify(object: string, signature: string, signature_format: 'latin1' | 'hex' | 'base64'): boolean;
|
||||
verify(object: string, signature: string, signature_format: string): boolean;
|
||||
}
|
||||
export function createDiffieHellman(prime_length: number): DiffieHellman;
|
||||
export function createDiffieHellman(prime: number, encoding?: string): DiffieHellman;
|
||||
export function createDiffieHellman(prime_length: number, generator?: number): DiffieHellman;
|
||||
export function createDiffieHellman(prime: Buffer): DiffieHellman;
|
||||
export function createDiffieHellman(prime: string, prime_encoding: "latin1" | "hex" | "base64"): DiffieHellman;
|
||||
export function createDiffieHellman(prime: string, prime_encoding: "latin1" | "hex" | "base64", generator: number | Buffer): DiffieHellman;
|
||||
export function createDiffieHellman(prime: string, prime_encoding: "latin1" | "hex" | "base64", generator: string, generator_encoding: "latin1" | "hex" | "base64"): DiffieHellman;
|
||||
export interface DiffieHellman {
|
||||
generateKeys(encoding?: string): string;
|
||||
computeSecret(other_public_key: string, input_encoding?: string, output_encoding?: string): string;
|
||||
getPrime(encoding?: string): string;
|
||||
getGenerator(encoding: string): string;
|
||||
getPublicKey(encoding?: string): string;
|
||||
getPrivateKey(encoding?: string): string;
|
||||
setPublicKey(public_key: string, encoding?: string): void;
|
||||
setPrivateKey(public_key: string, encoding?: string): void;
|
||||
generateKeys(): Buffer;
|
||||
generateKeys(encoding: "latin1" | "hex" | "base64"): string;
|
||||
computeSecret(other_public_key: Buffer): Buffer;
|
||||
computeSecret(other_public_key: string, input_encoding: "latin1" | "hex" | "base64"): Buffer;
|
||||
computeSecret(other_public_key: string, input_encoding: "latin1" | "hex" | "base64", output_encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPrime(): Buffer;
|
||||
getPrime(encoding: "latin1" | "hex" | "base64"): string;
|
||||
getGenerator(): Buffer;
|
||||
getGenerator(encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPublicKey(): Buffer;
|
||||
getPublicKey(encoding: "latin1" | "hex" | "base64"): string;
|
||||
getPrivateKey(): Buffer;
|
||||
getPrivateKey(encoding: "latin1" | "hex" | "base64"): string;
|
||||
setPublicKey(public_key: Buffer): void;
|
||||
setPublicKey(public_key: string, encoding: string): void;
|
||||
setPrivateKey(private_key: Buffer): void;
|
||||
setPrivateKey(private_key: string, encoding: string): void;
|
||||
verifyError: number;
|
||||
}
|
||||
export function getDiffieHellman(group_name: string): DiffieHellman;
|
||||
export function pbkdf2(password: string | Buffer, salt: string | Buffer, iterations: number, keylen: number, callback: (err: Error, derivedKey: Buffer) => any): void;
|
||||
export function pbkdf2(password: string | Buffer, salt: string | Buffer, iterations: number, keylen: number, digest: string, callback: (err: Error, derivedKey: Buffer) => any): void;
|
||||
export function pbkdf2Sync(password: string | Buffer, salt: string | Buffer, iterations: number, keylen: number): Buffer;
|
||||
export function pbkdf2Sync(password: string | Buffer, salt: string | Buffer, iterations: number, keylen: number, digest: string): Buffer;
|
||||
export function randomBytes(size: number): Buffer;
|
||||
export function randomBytes(size: number, callback: (err: Error, buf: Buffer) => void): void;
|
||||
@@ -2227,15 +2270,17 @@ declare module "crypto" {
|
||||
export function pseudoRandomBytes(size: number, callback: (err: Error, buf: Buffer) => void): void;
|
||||
export interface RsaPublicKey {
|
||||
key: string;
|
||||
padding?: any;
|
||||
padding?: number;
|
||||
}
|
||||
export interface RsaPrivateKey {
|
||||
key: string;
|
||||
passphrase?: string,
|
||||
padding?: any;
|
||||
padding?: number;
|
||||
}
|
||||
export function publicEncrypt(public_key: string | RsaPublicKey, buffer: Buffer): Buffer
|
||||
export function privateDecrypt(private_key: string | RsaPrivateKey, buffer: Buffer): Buffer
|
||||
export function privateEncrypt(private_key: string | RsaPrivateKey, buffer: Buffer): Buffer
|
||||
export function publicDecrypt(public_key: string | RsaPublicKey, buffer: Buffer): Buffer
|
||||
export function getCiphers(): string[];
|
||||
export function getCurves(): string[];
|
||||
export function getHashes(): string[];
|
||||
|
||||
Reference in New Issue
Block a user