diff --git a/node-forge/node-forge-tests.ts b/node-forge/node-forge-tests.ts new file mode 100644 index 0000000000..3882c8bd94 --- /dev/null +++ b/node-forge/node-forge-tests.ts @@ -0,0 +1,7 @@ +/// + +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); diff --git a/node-forge/node-forge.d.ts b/node-forge/node-forge.d.ts new file mode 100644 index 0000000000..8313cdd031 --- /dev/null +++ b/node-forge/node-forge.d.ts @@ -0,0 +1,40 @@ +// Type definitions for node-forge 0.6.42 +// Project: https://github.com/digitalbazaar/forge +// Definitions by: Seth Westphal +// 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; + + } + + } + +}