import { Inverted } from '../../libs/invert/index.js';

declare namespace OIDs {
    type Key = keyof typeof keys;
    type Value = keyof typeof values;
    const keys: {
        readonly commonName: "2.5.4.3";
        readonly serialNumber: "2.5.4.5";
        readonly countryName: "2.5.4.6";
        readonly localityName: "2.5.4.7";
        readonly stateOrProvinceName: "2.5.4.8";
        readonly streetAddress: "2.5.4.9";
        readonly organizationName: "2.5.4.10";
        readonly organizationalUnitName: "2.5.4.11";
        readonly emailAddress: "1.2.840.113549.1.9.1";
        readonly sha256WithRSAEncryption: "1.2.840.113549.1.1.11";
        readonly rsaEncryption: "1.2.840.113549.1.1.1";
        readonly domainComponent: "0.9.2342.19200300.100.1.25";
        readonly userId: "0.9.2342.19200300.100.1.1";
        readonly subjectAltName: "2.5.29.17";
    };
    const values: Inverted<{
        readonly commonName: "2.5.4.3";
        readonly serialNumber: "2.5.4.5";
        readonly countryName: "2.5.4.6";
        readonly localityName: "2.5.4.7";
        readonly stateOrProvinceName: "2.5.4.8";
        readonly streetAddress: "2.5.4.9";
        readonly organizationName: "2.5.4.10";
        readonly organizationalUnitName: "2.5.4.11";
        readonly emailAddress: "1.2.840.113549.1.9.1";
        readonly sha256WithRSAEncryption: "1.2.840.113549.1.1.11";
        readonly rsaEncryption: "1.2.840.113549.1.1.1";
        readonly domainComponent: "0.9.2342.19200300.100.1.25";
        readonly userId: "0.9.2342.19200300.100.1.1";
        readonly subjectAltName: "2.5.29.17";
    }>;
}

export { OIDs };
