UNPKG

@citrineos/util

Version:

The OCPP util module which supplies helpful utilities like cache and queue connectors, etc.

37 lines (36 loc) 1.65 kB
import { IChargingStationCertificateAuthorityClient } from './interface'; import { SystemConfig } from '@citrineos/base'; import { Client } from 'acme-client'; import { ILogObj, Logger } from 'tslog'; export declare class Acme implements IChargingStationCertificateAuthorityClient { private readonly _directoryUrl; private readonly _email; private readonly _preferredChain; private _securityCertChainKeyMap; private _client; private _logger; constructor(config: SystemConfig, logger?: Logger<ILogObj>, client?: Client); /** * Get LetsEncrypt Root CA certificate, ISRG Root X1. * @return {Promise<string>} The CA certificate pem. */ getRootCACertificate(): Promise<string>; /** * Retrieves a signed certificate based on the provided CSR. * The returned certificate will be signed by Let's Encrypt, ISRG Root X1. * which is listed in https://ccadb.my.salesforce-sites.com/mozilla/CAAIdentifiersReport * * @param {string} csrString - The certificate signing request. * @return {Promise<string>} The signed certificate. */ signCertificateByExternalCA(csrString: string): Promise<string>; /** * Get sub CA from the certificate chain. * Use it to sign certificate based on the CSR string. * * @param {string} csrString - The Certificate Signing Request (CSR) string. * @return {Promise<string>} - The signed certificate followed by sub CA in PEM format. */ getCertificateChain(csrString: string): Promise<string>; updateCertificateChainKeyMap(serverId: string, certificateChain: string, privateKey: string): void; }