@accelerated-software-development/caddy-api-client - v0.4.3
    Preparing search index...

    Variable serverSchemaConst

    serverSchema: ZodObject<
        {
            automatic_https: ZodOptional<
                ZodObject<
                    {
                        disable: ZodOptional<ZodBoolean>;
                        disable_certificates: ZodOptional<ZodBoolean>;
                        disable_redirects: ZodOptional<ZodBoolean>;
                        ignore_loaded_certificates: ZodOptional<ZodBoolean>;
                        skip: ZodOptional<ZodArray<ZodString, "many">>;
                        skip_certificates: ZodOptional<ZodArray<ZodString, "many">>;
                    },
                    "strip",
                    ZodTypeAny,
                    {
                        disable?: boolean;
                        disable_certificates?: boolean;
                        disable_redirects?: boolean;
                        ignore_loaded_certificates?: boolean;
                        skip?: string[];
                        skip_certificates?: string[];
                    },
                    {
                        disable?: boolean;
                        disable_certificates?: boolean;
                        disable_redirects?: boolean;
                        ignore_loaded_certificates?: boolean;
                        skip?: string[];
                        skip_certificates?: string[];
                    },
                >,
            >;
            client_ip_headers: ZodOptional<ZodArray<ZodString, "many">>;
            enable_full_duplex: ZodOptional<ZodBoolean>;
            errors: ZodOptional<
                ZodObject<
                    {
                        routes: ZodOptional<
                            ZodArray<
                                ZodObject<
                                    {
                                        group: ZodOptional<ZodString>;
                                        handle: ZodOptional<ZodArray<(...), (...)>>;
                                        match: ZodOptional<ZodArray<(...), (...)>>;
                                        terminal: ZodOptional<ZodBoolean>;
                                    },
                                    "strip",
                                    ZodTypeAny,
                                    {
                                        group?: string;
                                        handle?: (...)[];
                                        match?: (...)[];
                                        terminal?: boolean;
                                    },
                                    {
                                        group?: string;
                                        handle?: (...)[];
                                        match?: (...)[];
                                        terminal?: boolean;
                                    },
                                >,
                                "many",
                            >,
                        >;
                    },
                    "strip",
                    ZodTypeAny,
                    {
                        routes?: {
                            group?: string;
                            handle?: unknown[];
                            match?: any[];
                            terminal?: boolean;
                        }[];
                    },
                    {
                        routes?: {
                            group?: string;
                            handle?: unknown[];
                            match?: any[];
                            terminal?: boolean;
                        }[];
                    },
                >,
            >;
            idle_timeout: ZodOptional<ZodAny>;
            keepalive_count: ZodOptional<ZodNumber>;
            keepalive_idle: ZodOptional<ZodAny>;
            keepalive_interval: ZodOptional<ZodAny>;
            listen: ZodOptional<ZodArray<ZodString, "many">>;
            listen_protocols: ZodOptional<
                ZodArray<ZodArray<ZodString, "many">, "many">,
            >;
            listener_wrappers: ZodOptional<ZodArray<ZodUnknown, "many">>;
            logs: ZodOptional<
                ZodObject<
                    {
                        default_logger_name: ZodOptional<ZodString>;
                        logger_names: ZodOptional<
                            ZodRecord<ZodString, ZodArray<ZodString, "many">>,
                        >;
                        should_log_credentials: ZodOptional<ZodBoolean>;
                        skip_hosts: ZodOptional<ZodArray<ZodString, "many">>;
                        skip_unmapped_hosts: ZodOptional<ZodBoolean>;
                        trace: ZodOptional<ZodBoolean>;
                    },
                    "strip",
                    ZodTypeAny,
                    {
                        default_logger_name?: string;
                        logger_names?: Record<string, string[]>;
                        should_log_credentials?: boolean;
                        skip_hosts?: string[];
                        skip_unmapped_hosts?: boolean;
                        trace?: boolean;
                    },
                    {
                        default_logger_name?: string;
                        logger_names?: Record<string, string[]>;
                        should_log_credentials?: boolean;
                        skip_hosts?: string[];
                        skip_unmapped_hosts?: boolean;
                        trace?: boolean;
                    },
                >,
            >;
            max_header_bytes: ZodOptional<ZodNumber>;
            metrics: ZodOptional<
                ZodObject<
                    {
                        allow_catch_all_hosts: ZodOptional<ZodBoolean>;
                        per_host: ZodOptional<ZodBoolean>;
                    },
                    "strip",
                    ZodTypeAny,
                    { allow_catch_all_hosts?: boolean; per_host?: boolean },
                    { allow_catch_all_hosts?: boolean; per_host?: boolean },
                >,
            >;
            named_routes: ZodOptional<
                ZodRecord<
                    ZodString,
                    ZodUnion<
                        [
                            ZodObject<
                                {
                                    group: ZodOptional<ZodString>;
                                    handle: ZodOptional<ZodArray<ZodUnknown, "many">>;
                                    match: ZodOptional<ZodArray<ZodAny, "many">>;
                                    terminal: ZodOptional<ZodBoolean>;
                                },
                                "strip",
                                ZodTypeAny,
                                {
                                    group?: string;
                                    handle?: unknown[];
                                    match?: any[];
                                    terminal?: boolean;
                                },
                                {
                                    group?: string;
                                    handle?: unknown[];
                                    match?: any[];
                                    terminal?: boolean;
                                },
                            >,
                            ZodUndefined,
                        ],
                    >,
                >,
            >;
            protocols: ZodOptional<ZodArray<ZodString, "many">>;
            read_header_timeout: ZodOptional<ZodAny>;
            read_timeout: ZodOptional<ZodAny>;
            routes: ZodOptional<
                ZodArray<
                    ZodObject<
                        {
                            group: ZodOptional<ZodString>;
                            handle: ZodOptional<ZodArray<ZodUnknown, "many">>;
                            match: ZodOptional<ZodArray<ZodAny, "many">>;
                            terminal: ZodOptional<ZodBoolean>;
                        },
                        "strip",
                        ZodTypeAny,
                        {
                            group?: string;
                            handle?: unknown[];
                            match?: any[];
                            terminal?: boolean;
                        },
                        {
                            group?: string;
                            handle?: unknown[];
                            match?: any[];
                            terminal?: boolean;
                        },
                    >,
                    "many",
                >,
            >;
            strict_sni_host: ZodOptional<ZodBoolean>;
            tls_connection_policies: ZodOptional<ZodAny>;
            trusted_proxies: ZodOptional<ZodUnknown>;
            trusted_proxies_strict: ZodOptional<ZodNumber>;
            trusted_proxies_unix: ZodOptional<ZodBoolean>;
            write_timeout: ZodOptional<ZodAny>;
        },
        "strip",
        ZodTypeAny,
        {
            automatic_https?: {
                disable?: boolean;
                disable_certificates?: boolean;
                disable_redirects?: boolean;
                ignore_loaded_certificates?: boolean;
                skip?: string[];
                skip_certificates?: string[];
            };
            client_ip_headers?: string[];
            enable_full_duplex?: boolean;
            errors?: {
                routes?: {
                    group?: string;
                    handle?: unknown[];
                    match?: any[];
                    terminal?: boolean;
                }[];
            };
            idle_timeout?: any;
            keepalive_count?: number;
            keepalive_idle?: any;
            keepalive_interval?: any;
            listen?: string[];
            listen_protocols?: string[][];
            listener_wrappers?: unknown[];
            logs?: {
                default_logger_name?: string;
                logger_names?: Record<string, string[]>;
                should_log_credentials?: boolean;
                skip_hosts?: string[];
                skip_unmapped_hosts?: boolean;
                trace?: boolean;
            };
            max_header_bytes?: number;
            metrics?: { allow_catch_all_hosts?: boolean; per_host?: boolean };
            named_routes?: Record<
                string,
                | {
                    group?: string;
                    handle?: unknown[];
                    match?: any[];
                    terminal?: boolean;
                }
                | undefined,
            >;
            protocols?: string[];
            read_header_timeout?: any;
            read_timeout?: any;
            routes?: {
                group?: string;
                handle?: unknown[];
                match?: any[];
                terminal?: boolean;
            }[];
            strict_sni_host?: boolean;
            tls_connection_policies?: any;
            trusted_proxies?: unknown;
            trusted_proxies_strict?: number;
            trusted_proxies_unix?: boolean;
            write_timeout?: any;
        },
        {
            automatic_https?: {
                disable?: boolean;
                disable_certificates?: boolean;
                disable_redirects?: boolean;
                ignore_loaded_certificates?: boolean;
                skip?: string[];
                skip_certificates?: string[];
            };
            client_ip_headers?: string[];
            enable_full_duplex?: boolean;
            errors?: {
                routes?: {
                    group?: string;
                    handle?: unknown[];
                    match?: any[];
                    terminal?: boolean;
                }[];
            };
            idle_timeout?: any;
            keepalive_count?: number;
            keepalive_idle?: any;
            keepalive_interval?: any;
            listen?: string[];
            listen_protocols?: string[][];
            listener_wrappers?: unknown[];
            logs?: {
                default_logger_name?: string;
                logger_names?: Record<string, string[]>;
                should_log_credentials?: boolean;
                skip_hosts?: string[];
                skip_unmapped_hosts?: boolean;
                trace?: boolean;
            };
            max_header_bytes?: number;
            metrics?: { allow_catch_all_hosts?: boolean; per_host?: boolean };
            named_routes?: Record<
                string,
                | {
                    group?: string;
                    handle?: unknown[];
                    match?: any[];
                    terminal?: boolean;
                }
                | undefined,
            >;
            protocols?: string[];
            read_header_timeout?: any;
            read_timeout?: any;
            routes?: {
                group?: string;
                handle?: unknown[];
                match?: any[];
                terminal?: boolean;
            }[];
            strict_sni_host?: boolean;
            tls_connection_policies?: any;
            trusted_proxies?: unknown;
            trusted_proxies_strict?: number;
            trusted_proxies_unix?: boolean;
            write_timeout?: any;
        },
    > = ...

    Re-export generated Caddy schemas for convenience. These schemas are generated from the Caddy Go source code and provide low-level validation for Caddy JSON configuration.

    For full list of generated schemas, see ./caddy-types.ts