import { z } from 'zod';
export declare const SignatureAlgorithmSchema: z.ZodEnum<{
    SHA256withRSA: "SHA256withRSA";
    SHA256withECDSA: "SHA256withECDSA";
}>;
export declare const CountryNameSchema: z.ZodEnum<{
    US: "US";
}>;
export type SignatureAlgorithm = z.infer<typeof SignatureAlgorithmSchema>;
export type CountryName = z.infer<typeof CountryNameSchema>;
export declare const CertificateSchema: z.ZodObject<{
    tenantId: z.ZodOptional<z.ZodNumber>;
    tenant: z.ZodOptional<z.ZodObject<{
        id: z.ZodOptional<z.ZodNumber>;
        name: z.ZodString;
        url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        countryCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        partyId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        serverProfileOCPI: z.ZodOptional<z.ZodNullable<z.ZodObject<{
            credentialsRole: z.ZodObject<{
                role: z.ZodEnum<{
                    CPO: "CPO";
                    EMSP: "EMSP";
                    HUB: "HUB";
                    NAP: "NAP";
                    NSP: "NSP";
                    SCSP: "SCSP";
                }>;
                businessDetails: z.ZodObject<{
                    name: z.ZodString;
                    website: z.ZodOptional<z.ZodString>;
                    logo: z.ZodOptional<z.ZodObject<{
                        url: z.ZodString;
                        type: z.ZodString;
                        category: z.ZodString;
                        width: z.ZodOptional<z.ZodNumber>;
                        height: z.ZodOptional<z.ZodNumber>;
                    }, z.core.$strip>>;
                }, z.core.$strip>;
            }, z.core.$strip>;
            versionDetails: z.ZodArray<z.ZodObject<{
                version: z.ZodEnum<{
                    "2.2.1": "2.2.1";
                }>;
                versionDetailsUrl: z.ZodOptional<z.ZodString>;
            }, z.core.$strip>>;
            versionEndpoints: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
                identifier: z.ZodString;
                url: z.ZodString;
            }, z.core.$strip>>>;
        }, z.core.$strip>>>;
        isUserTenant: z.ZodDefault<z.ZodBoolean>;
        maxChargingStations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        updatedAt: z.ZodOptional<z.ZodDate>;
        createdAt: z.ZodOptional<z.ZodDate>;
    }, z.core.$strip>>;
    updatedAt: z.ZodOptional<z.ZodDate>;
    createdAt: z.ZodOptional<z.ZodDate>;
    id: z.ZodOptional<z.ZodNumber>;
    serialNumber: z.ZodNumber;
    issuerName: z.ZodString;
    organizationName: z.ZodString;
    commonName: z.ZodString;
    keyLength: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    validBefore: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
    signatureAlgorithm: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        SHA256withRSA: "SHA256withRSA";
        SHA256withECDSA: "SHA256withECDSA";
    }>>>;
    countryName: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        US: "US";
    }>>>;
    isCA: z.ZodOptional<z.ZodBoolean>;
    pathLen: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    certificateFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    certificateFileHash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    privateKeyFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    signedBy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, z.core.$strip>;
export declare const CertificateProps: {
    id: "id";
    tenant: "tenant";
    serialNumber: "serialNumber";
    tenantId: "tenantId";
    updatedAt: "updatedAt";
    createdAt: "createdAt";
    issuerName: "issuerName";
    organizationName: "organizationName";
    commonName: "commonName";
    keyLength: "keyLength";
    validBefore: "validBefore";
    signatureAlgorithm: "signatureAlgorithm";
    countryName: "countryName";
    isCA: "isCA";
    pathLen: "pathLen";
    certificateFileId: "certificateFileId";
    certificateFileHash: "certificateFileHash";
    privateKeyFileId: "privateKeyFileId";
    signedBy: "signedBy";
};
export type CertificateDto = z.infer<typeof CertificateSchema>;
export declare const CertificateCreateSchema: z.ZodObject<{
    serialNumber: z.ZodNumber;
    tenantId: z.ZodOptional<z.ZodNumber>;
    issuerName: z.ZodString;
    organizationName: z.ZodString;
    commonName: z.ZodString;
    keyLength: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    validBefore: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
    signatureAlgorithm: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        SHA256withRSA: "SHA256withRSA";
        SHA256withECDSA: "SHA256withECDSA";
    }>>>;
    countryName: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
        US: "US";
    }>>>;
    isCA: z.ZodOptional<z.ZodBoolean>;
    pathLen: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    certificateFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    certificateFileHash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    privateKeyFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    signedBy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
}, z.core.$strip>;
export type CertificateCreate = z.infer<typeof CertificateCreateSchema>;
export declare const certificateSchemas: {
    Certificate: z.ZodObject<{
        tenantId: z.ZodOptional<z.ZodNumber>;
        tenant: z.ZodOptional<z.ZodObject<{
            id: z.ZodOptional<z.ZodNumber>;
            name: z.ZodString;
            url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            countryCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            partyId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            serverProfileOCPI: z.ZodOptional<z.ZodNullable<z.ZodObject<{
                credentialsRole: z.ZodObject<{
                    role: z.ZodEnum<{
                        CPO: "CPO";
                        EMSP: "EMSP";
                        HUB: "HUB";
                        NAP: "NAP";
                        NSP: "NSP";
                        SCSP: "SCSP";
                    }>;
                    businessDetails: z.ZodObject<{
                        name: z.ZodString;
                        website: z.ZodOptional<z.ZodString>;
                        logo: z.ZodOptional<z.ZodObject<{
                            url: z.ZodString;
                            type: z.ZodString;
                            category: z.ZodString;
                            width: z.ZodOptional<z.ZodNumber>;
                            height: z.ZodOptional<z.ZodNumber>;
                        }, z.core.$strip>>;
                    }, z.core.$strip>;
                }, z.core.$strip>;
                versionDetails: z.ZodArray<z.ZodObject<{
                    version: z.ZodEnum<{
                        "2.2.1": "2.2.1";
                    }>;
                    versionDetailsUrl: z.ZodOptional<z.ZodString>;
                }, z.core.$strip>>;
                versionEndpoints: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodObject<{
                    identifier: z.ZodString;
                    url: z.ZodString;
                }, z.core.$strip>>>;
            }, z.core.$strip>>>;
            isUserTenant: z.ZodDefault<z.ZodBoolean>;
            maxChargingStations: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
            updatedAt: z.ZodOptional<z.ZodDate>;
            createdAt: z.ZodOptional<z.ZodDate>;
        }, z.core.$strip>>;
        updatedAt: z.ZodOptional<z.ZodDate>;
        createdAt: z.ZodOptional<z.ZodDate>;
        id: z.ZodOptional<z.ZodNumber>;
        serialNumber: z.ZodNumber;
        issuerName: z.ZodString;
        organizationName: z.ZodString;
        commonName: z.ZodString;
        keyLength: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        validBefore: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
        signatureAlgorithm: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            SHA256withRSA: "SHA256withRSA";
            SHA256withECDSA: "SHA256withECDSA";
        }>>>;
        countryName: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            US: "US";
        }>>>;
        isCA: z.ZodOptional<z.ZodBoolean>;
        pathLen: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        certificateFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        certificateFileHash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        privateKeyFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        signedBy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    }, z.core.$strip>;
    CertificateCreate: z.ZodObject<{
        serialNumber: z.ZodNumber;
        tenantId: z.ZodOptional<z.ZodNumber>;
        issuerName: z.ZodString;
        organizationName: z.ZodString;
        commonName: z.ZodString;
        keyLength: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        validBefore: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
        signatureAlgorithm: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            SHA256withRSA: "SHA256withRSA";
            SHA256withECDSA: "SHA256withECDSA";
        }>>>;
        countryName: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
            US: "US";
        }>>>;
        isCA: z.ZodOptional<z.ZodBoolean>;
        pathLen: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
        certificateFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        certificateFileHash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        privateKeyFileId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        signedBy: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    }, z.core.$strip>;
};
