Add some basic node-forge definitions with tests.

This commit is contained in:
Seth Westphal
2016-08-15 15:41:37 -05:00
parent ff84f05542
commit 3db7dcac3d
2 changed files with 47 additions and 0 deletions

View File

@@ -0,0 +1,7 @@
/// <reference path="node-forge.d.ts" />
import * as forge from "node-forge";
let keypair = forge.pki.rsa.generateKeyPair({bits: 512});
let privateKeyPem = forge.pki.privateKeyToPem(keypair.privateKey);
let publicKeyPem = forge.pki.publicKeyToPem(keypair.publicKey);

40
node-forge/node-forge.d.ts vendored Normal file
View File

@@ -0,0 +1,40 @@
// Type definitions for node-forge 0.6.42
// Project: https://github.com/digitalbazaar/forge
// Definitions by: Seth Westphal <https://github.com/westy92>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
declare module "node-forge" {
export namespace pki {
export type PEM = string;
export type Key = any;
export interface KeyPair {
publicKey: Key;
privateKey: Key;
}
export function privateKeyToPem(key: Key, maxline?: number): PEM;
export function publicKeyToPem(key: Key, maxline?: number): PEM;
export namespace rsa {
export interface GenerateKeyPairOptions {
bits?: number;
e?: number;
workerScript?: string;
workers?: number;
workLoad?: number;
prng?: any;
algorithm?: string;
}
export function generateKeyPair(bits?: number, e?: number, callback?: (err: Error, keypair: KeyPair) => void): KeyPair;
export function generateKeyPair(options?: GenerateKeyPairOptions, callback?: (err: Error, keypair: KeyPair) => void): KeyPair;
}
}
}