70 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			70 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import { pki } from 'node-forge'
 | 
						|
 | 
						|
declare interface SelfsignedOptions {
 | 
						|
  /**
 | 
						|
   * The number of days before expiration
 | 
						|
   *
 | 
						|
   * @default 365 */
 | 
						|
  days?: number
 | 
						|
 | 
						|
  /**
 | 
						|
   * The date before which the certificate should not be valid
 | 
						|
   *
 | 
						|
   * @default now */
 | 
						|
  notBeforeDate?: Date
 | 
						|
 | 
						|
  /**
 | 
						|
   * the size for the private key in bits
 | 
						|
   * @default 1024
 | 
						|
   */
 | 
						|
  keySize?: number
 | 
						|
  /**
 | 
						|
   * additional extensions for the certificate
 | 
						|
   */
 | 
						|
  extensions?: any[];
 | 
						|
  /**
 | 
						|
   * The signature algorithm sha256 or sha1
 | 
						|
   * @default "sha1"
 | 
						|
   */
 | 
						|
  algorithm?: string
 | 
						|
  /**
 | 
						|
   * include PKCS#7 as part of the output
 | 
						|
   * @default false
 | 
						|
   */
 | 
						|
  pkcs7?: boolean
 | 
						|
  /**
 | 
						|
   * generate client cert signed by the original key
 | 
						|
   * @default false
 | 
						|
   */
 | 
						|
  clientCertificate?: boolean
 | 
						|
  /**
 | 
						|
   * client certificate's common name
 | 
						|
   * @default "John Doe jdoe123"
 | 
						|
   */
 | 
						|
  clientCertificateCN?: string
 | 
						|
  /**
 | 
						|
   * the size for the client private key in bits
 | 
						|
   * @default 1024
 | 
						|
   */
 | 
						|
   clientCertificateKeySize?: number
 | 
						|
}
 | 
						|
 | 
						|
declare interface GenerateResult {
 | 
						|
  private: string
 | 
						|
  public: string
 | 
						|
  cert: string
 | 
						|
  fingerprint: string
 | 
						|
}
 | 
						|
 | 
						|
declare function generate(
 | 
						|
  attrs?: pki.CertificateField[],
 | 
						|
  opts?: SelfsignedOptions
 | 
						|
): GenerateResult
 | 
						|
 | 
						|
declare function generate(
 | 
						|
  attrs?: pki.CertificateField[],
 | 
						|
  opts?: SelfsignedOptions,
 | 
						|
  /** Optional callback, if not provided the generation is synchronous */
 | 
						|
  done?: (err: undefined | Error, result: GenerateResult) => any
 | 
						|
): void
 |