import { z } from 'zod';
declare const databaseSettingsInfoSchema: z.ZodObject<{
    connectionTimeout: z.ZodNumber;
    requestTimeout: z.ZodNumber;
    dbReadOnlyUsername: z.ZodOptional<z.ZodString>;
    dbReadOnlyPassword: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    connectionTimeout?: number;
    requestTimeout?: number;
    dbReadOnlyUsername?: string;
    dbReadOnlyPassword?: string;
}, {
    connectionTimeout?: number;
    requestTimeout?: number;
    dbReadOnlyUsername?: string;
    dbReadOnlyPassword?: string;
}>;
declare const configInfoSchema: z.ZodObject<{
    databaseSettings: z.ZodObject<{
        connectionTimeout: z.ZodNumber;
        requestTimeout: z.ZodNumber;
        dbReadOnlyUsername: z.ZodOptional<z.ZodString>;
        dbReadOnlyPassword: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        connectionTimeout?: number;
        requestTimeout?: number;
        dbReadOnlyUsername?: string;
        dbReadOnlyPassword?: string;
    }, {
        connectionTimeout?: number;
        requestTimeout?: number;
        dbReadOnlyUsername?: string;
        dbReadOnlyPassword?: string;
    }>;
    dbHost: z.ZodDefault<z.ZodString>;
    dbDatabase: z.ZodString;
    dbPort: z.ZodDefault<z.ZodNumber>;
    dbUsername: z.ZodString;
    dbPassword: z.ZodString;
    dbReadOnlyUsername: z.ZodOptional<z.ZodString>;
    dbReadOnlyPassword: z.ZodOptional<z.ZodString>;
    dbTrustServerCertificate: z.ZodEffects<z.ZodDefault<z.ZodBoolean>, "Y" | "N", boolean>;
    dbInstanceName: z.ZodOptional<z.ZodString>;
    a2aServerSettings: z.ZodOptional<z.ZodObject<{
        port: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
        entityCapabilities: z.ZodOptional<z.ZodArray<z.ZodObject<{
            entityName: z.ZodOptional<z.ZodString>;
            schemaName: z.ZodOptional<z.ZodString>;
            get: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            create: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            update: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            delete: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            runView: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        }, "strip", z.ZodTypeAny, {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }, {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }>, "many">>;
        agentCapabilities: z.ZodOptional<z.ZodArray<z.ZodObject<{
            agentName: z.ZodOptional<z.ZodString>;
            discover: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            execute: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            monitor: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
            cancel: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        }, "strip", z.ZodTypeAny, {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }, {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }>, "many">>;
        enableA2AServer: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        agentName: z.ZodDefault<z.ZodOptional<z.ZodString>>;
        agentDescription: z.ZodDefault<z.ZodOptional<z.ZodString>>;
        streamingEnabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
        userEmail: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        agentName?: string;
        port?: number;
        entityCapabilities?: {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }[];
        agentCapabilities?: {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }[];
        enableA2AServer?: boolean;
        agentDescription?: string;
        streamingEnabled?: boolean;
        userEmail?: string;
    }, {
        agentName?: string;
        port?: number;
        entityCapabilities?: {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }[];
        agentCapabilities?: {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }[];
        enableA2AServer?: boolean;
        agentDescription?: string;
        streamingEnabled?: boolean;
        userEmail?: string;
    }>>;
    mjCoreSchema: z.ZodString;
}, "strip", z.ZodTypeAny, {
    dbReadOnlyUsername?: string;
    dbReadOnlyPassword?: string;
    databaseSettings?: {
        connectionTimeout?: number;
        requestTimeout?: number;
        dbReadOnlyUsername?: string;
        dbReadOnlyPassword?: string;
    };
    dbHost?: string;
    dbDatabase?: string;
    dbPort?: number;
    dbUsername?: string;
    dbPassword?: string;
    dbTrustServerCertificate?: "Y" | "N";
    dbInstanceName?: string;
    a2aServerSettings?: {
        agentName?: string;
        port?: number;
        entityCapabilities?: {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }[];
        agentCapabilities?: {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }[];
        enableA2AServer?: boolean;
        agentDescription?: string;
        streamingEnabled?: boolean;
        userEmail?: string;
    };
    mjCoreSchema?: string;
}, {
    dbReadOnlyUsername?: string;
    dbReadOnlyPassword?: string;
    databaseSettings?: {
        connectionTimeout?: number;
        requestTimeout?: number;
        dbReadOnlyUsername?: string;
        dbReadOnlyPassword?: string;
    };
    dbHost?: string;
    dbDatabase?: string;
    dbPort?: number;
    dbUsername?: string;
    dbPassword?: string;
    dbTrustServerCertificate?: boolean;
    dbInstanceName?: string;
    a2aServerSettings?: {
        agentName?: string;
        port?: number;
        entityCapabilities?: {
            entityName?: string;
            schemaName?: string;
            get?: boolean;
            create?: boolean;
            update?: boolean;
            delete?: boolean;
            runView?: boolean;
        }[];
        agentCapabilities?: {
            agentName?: string;
            discover?: boolean;
            execute?: boolean;
            monitor?: boolean;
            cancel?: boolean;
        }[];
        enableA2AServer?: boolean;
        agentDescription?: string;
        streamingEnabled?: boolean;
        userEmail?: string;
    };
    mjCoreSchema?: string;
}>;
export type DatabaseSettingsInfo = z.infer<typeof databaseSettingsInfoSchema>;
export type ConfigInfo = z.infer<typeof configInfoSchema>;
export declare const configInfo: ConfigInfo;
export declare const dbUsername: string, dbPassword: string, dbHost: string, dbDatabase: string, dbPort: number, dbTrustServerCertificate: "Y" | "N", dbInstanceName: string, a2aServerSettings: {
    agentName?: string;
    port?: number;
    entityCapabilities?: {
        entityName?: string;
        schemaName?: string;
        get?: boolean;
        create?: boolean;
        update?: boolean;
        delete?: boolean;
        runView?: boolean;
    }[];
    agentCapabilities?: {
        agentName?: string;
        discover?: boolean;
        execute?: boolean;
        monitor?: boolean;
        cancel?: boolean;
    }[];
    enableA2AServer?: boolean;
    agentDescription?: string;
    streamingEnabled?: boolean;
    userEmail?: string;
}, mj_core_schema: string, dbReadOnlyUsername: string, dbReadOnlyPassword: string;
export declare function loadConfig(): ConfigInfo;
export {};
//# sourceMappingURL=config.d.ts.map