import { z } from 'zod';
declare const FileStorageConfigSchema: z.ZodObject<{
    accessKeyId: z.ZodOptional<z.ZodString>;
    secretAccessKey: z.ZodOptional<z.ZodString>;
    url: z.ZodURL;
    publicUrl: z.ZodOptional<z.ZodURL>;
    bucket: z.ZodString;
    region: z.ZodOptional<z.ZodString>;
    maximumWidthForSmallImages: z.ZodNumber;
    maximumWidthForMediumImages: z.ZodNumber;
    s3ForcePathStyle: z.ZodBoolean;
    s3SeparateDeleteOperations: z.ZodBoolean;
}, z.core.$strict>;
declare const MailerTransportSchema: z.ZodObject<{
    host: z.ZodString;
    port: z.ZodNumber;
    auth: z.ZodObject<{
        user: z.ZodString;
        pass: z.ZodString;
    }, z.core.$strict>;
}, z.core.$strict>;
declare const TeamsConfigSchema: z.ZodObject<{
    global: z.ZodArray<z.ZodObject<{
        displayName: z.ZodString;
        role: z.ZodString;
    }, z.core.$strict>>;
    nonGlobal: z.ZodArray<z.ZodObject<{
        displayName: z.ZodString;
        role: z.ZodString;
    }, z.core.$strict>>;
}, z.core.$strict>;
declare const AdminUserSchema: z.ZodObject<{
    username: z.ZodString;
    password: z.ZodString;
    email: z.ZodEmail;
    givenNames: z.ZodOptional<z.ZodString>;
    surname: z.ZodOptional<z.ZodString>;
}, z.core.$strict>;
export declare const ConfigSchema: z.ZodObject<{
    db: z.ZodObject<{
        host: z.ZodString;
        port: z.ZodNumber;
        database: z.ZodString;
        user: z.ZodString;
        password: z.ZodString;
        allowSelfSignedCertificates: z.ZodOptional<z.ZodBoolean>;
        caCert: z.ZodOptional<z.ZodString>;
    }, z.core.$strict>;
    subscriptionsDb: z.ZodOptional<z.ZodObject<{
        host: z.ZodOptional<z.ZodString>;
        port: z.ZodOptional<z.ZodNumber>;
        database: z.ZodOptional<z.ZodString>;
        user: z.ZodOptional<z.ZodString>;
        password: z.ZodOptional<z.ZodString>;
        allowSelfSignedCertificates: z.ZodOptional<z.ZodBoolean>;
        caCert: z.ZodOptional<z.ZodString>;
    }, z.core.$strict>>;
    jobQueueDb: z.ZodOptional<z.ZodObject<{
        host: z.ZodOptional<z.ZodString>;
        port: z.ZodOptional<z.ZodNumber>;
        database: z.ZodOptional<z.ZodString>;
        user: z.ZodOptional<z.ZodString>;
        password: z.ZodOptional<z.ZodString>;
        allowSelfSignedCertificates: z.ZodOptional<z.ZodBoolean>;
        caCert: z.ZodOptional<z.ZodString>;
    }, z.core.$strict>>;
    acquireConnectionTimeout: z.ZodOptional<z.ZodNumber>;
    adminUser: z.ZodUnion<readonly [z.ZodObject<{
        username: z.ZodString;
        password: z.ZodString;
        email: z.ZodEmail;
        givenNames: z.ZodOptional<z.ZodString>;
        surname: z.ZodOptional<z.ZodString>;
    }, z.core.$strict>, z.ZodLiteral<false>]>;
    clientUrl: z.ZodOptional<z.ZodURL>;
    components: z.ZodArray<z.ZodString>;
    corsOrigin: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
    fileStorage: z.ZodUnion<readonly [z.ZodObject<{
        accessKeyId: z.ZodOptional<z.ZodString>;
        secretAccessKey: z.ZodOptional<z.ZodString>;
        url: z.ZodURL;
        publicUrl: z.ZodOptional<z.ZodURL>;
        bucket: z.ZodString;
        region: z.ZodOptional<z.ZodString>;
        maximumWidthForSmallImages: z.ZodNumber;
        maximumWidthForMediumImages: z.ZodNumber;
        s3ForcePathStyle: z.ZodBoolean;
        s3SeparateDeleteOperations: z.ZodBoolean;
    }, z.core.$strict>, z.ZodLiteral<false>]>;
    mailer: z.ZodUnion<readonly [z.ZodObject<{
        from: z.ZodString;
        transport: z.ZodObject<{
            host: z.ZodString;
            port: z.ZodNumber;
            auth: z.ZodObject<{
                user: z.ZodString;
                pass: z.ZodString;
            }, z.core.$strict>;
        }, z.core.$strict>;
    }, z.core.$strict>, z.ZodLiteral<false>]>;
    passwordResetRedirect: z.ZodString;
    port: z.ZodNumber;
    secret: z.ZodString;
    sentry: z.ZodUnion<readonly [z.ZodObject<{
        dsn: z.ZodString;
        environment: z.ZodString;
    }, z.core.$strict>, z.ZodLiteral<false>]>;
    serverUrl: z.ZodURL;
    staticFolders: z.ZodArray<z.ZodObject<{
        folderPath: z.ZodString;
        mountPoint: z.ZodString;
    }, z.core.$strict>>;
    suppressLoggerInTestEnv: z.ZodBoolean;
    teams: z.ZodObject<{
        global: z.ZodArray<z.ZodObject<{
            displayName: z.ZodString;
            role: z.ZodString;
        }, z.core.$strict>>;
        nonGlobal: z.ZodArray<z.ZodObject<{
            displayName: z.ZodString;
            role: z.ZodString;
        }, z.core.$strict>>;
    }, z.core.$strict>;
    tokenExpiresIn: z.ZodNumber;
    useGraphQLServer: z.ZodBoolean;
    integrations: z.ZodOptional<z.ZodArray<z.ZodObject<{
        name: z.ZodString;
        clientId: z.ZodString;
        redirectUri: z.ZodURL;
        tokenUrl: z.ZodURL;
    }, z.core.$strict>>>;
}, z.core.$strict>;
export type Teams = z.infer<typeof TeamsConfigSchema>;
export type MailerTransport = z.infer<typeof MailerTransportSchema>;
export type FileStorageConfig = z.infer<typeof FileStorageConfigSchema>;
export type ConfigType = z.infer<typeof ConfigSchema>;
export type AdminUser = z.infer<typeof AdminUserSchema>;
export {};
//# sourceMappingURL=configSchema.d.ts.map