diff --git a/password-hash/password-hash-tests.ts b/password-hash/password-hash-tests.ts new file mode 100644 index 000000000..a36db4e8b --- /dev/null +++ b/password-hash/password-hash-tests.ts @@ -0,0 +1,18 @@ +/// +'use strict'; + +import {generate, verify, isHashed} from 'password-hash'; + +let password = 'raw-password'; +let hashed: string; + +hashed = generate(password); +hashed = generate(password, {algorithm: 'sha256'}); +hashed = generate(password, {saltLength: 10}); +hashed = generate(password, {iterations: 11}); +hashed = generate(password, {algorithm: 'sha512', saltLength: 9, iterations: 11}); + +let isOk: boolean; + +isOk = verify(password, hashed); +isOk = isHashed(password); diff --git a/password-hash/password-hash.d.ts b/password-hash/password-hash.d.ts new file mode 100644 index 000000000..d2a90abdb --- /dev/null +++ b/password-hash/password-hash.d.ts @@ -0,0 +1,16 @@ +// Type definitions for password-hash 1.2.x +// Project: https://github.com/davidwood/node-password-hash +// Definitions by: TANAKA Koichi +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare module 'password-hash' { + export function generate(password: string, options?: Options): string; + export function verify(password: string, hashedPassword: string): boolean; + export function isHashed(password: string): boolean; + + export interface Options { + algorithm?: string; + saltLength?: number; + iterations?: number; + } +}