export interface Certificate { status: true | false, subject: { commonName: string, organization: string[], organizationalUnit: string[], locality: string[], country: string[], }, issuer: { commonName: string, organization: string[], organizationalUnit: string[], locality: string[], country: string[], }, aia: { issuingCertificateURL: string, ocspServer: string, }, validationType: 'DV' | 'OV' | 'EV', signatureAlgorithm: string, publicKeyAlgorithm: string, serialNumber: number, notAfter: Date, /** - 0: KeyUsageCRLSign - 1: KeyUsageCertificateSign - 2: KeyUsageContentCommitment - 3: KeyUsageDataEncipherment - 4: KeyUsageDecipherOnly - 5: KeyUsageDigitalSignature - 6: KeyUsageEncipherOnly - 7: KeyUsageKeyAgreement - 8: KeyUsageKeyEncipherment */ keyUsage: number[], keyUsageAsText: ['CRL Signing', 'Certificate Signing', 'Content Commitment', 'Data Encipherment', 'Decipher Only', 'Digital Signature', 'Encipher Only', 'Key Agreement', 'Key Encipherment'], /** - 0: Any/All Usage - 1: TLS Web Server Auth - 2: TLS Web Client Auth - 3: Code Signing - 4: Email Protection (S/MIME) */ extendedKeyUsage: number[], extendedKeyUsageAsText: ['All/Any Usages', 'TLS Web Server Authentication', 'TLS Web Client Authentication', 'Code Signing', 'E-mail Protection (S/MIME)'], san: string, emailAddresses: string, fingerprint: string, }