Variable configSchemaConst
configSchema: ZodObject<
{
admin: ZodOptional<
ZodObject<
{
config: ZodOptional<
ZodObject<
{
load: ZodOptional<ZodUnknown>;
load_delay: ZodOptional<ZodUnion<[(...), (...)]>>;
persist: ZodOptional<ZodBoolean>;
},
"strip",
ZodTypeAny,
{ load?: unknown; load_delay?: string
| number; persist?: boolean },
{ load?: unknown; load_delay?: string | number; persist?: boolean },
>,
>;
disabled: ZodOptional<ZodBoolean>;
enforce_origin: ZodOptional<ZodBoolean>;
identity: ZodOptional<
ZodObject<
{
identifiers: ZodOptional<ZodArray<ZodString, "many">>;
issuers: ZodOptional<ZodArray<ZodUnknown, "many">>;
},
"strip",
ZodTypeAny,
{ identifiers?: string[]; issuers?: unknown[] },
{ identifiers?: string[]; issuers?: unknown[] },
>,
>;
listen: ZodOptional<ZodString>;
origins: ZodOptional<ZodArray<ZodString, "many">>;
remote: ZodOptional<
ZodObject<
{
access_control: ZodOptional<ZodArray<ZodUnion<(...)>, "many">>;
listen: ZodOptional<ZodString>;
},
"strip",
ZodTypeAny,
{ access_control?: ((...) | (...))[]; listen?: string },
{ access_control?: ((...) | (...))[]; listen?: string },
>,
>;
},
"strip",
ZodTypeAny,
{
config?: {
load?: unknown;
load_delay?: string
| number;
persist?: boolean;
};
disabled?: boolean;
enforce_origin?: boolean;
identity?: { identifiers?: string[]; issuers?: unknown[] };
listen?: string;
origins?: string[];
remote?: {
access_control?: (
{ permissions?: ...; public_keys?: ... }
| undefined
)[];
listen?: string;
};
},
{
config?: {
load?: unknown;
load_delay?: string
| number;
persist?: boolean;
};
disabled?: boolean;
enforce_origin?: boolean;
identity?: { identifiers?: string[]; issuers?: unknown[] };
listen?: string;
origins?: string[];
remote?: {
access_control?: (
{ permissions?: ...; public_keys?: ... }
| undefined
)[];
listen?: string;
};
},
>,
>;
apps: ZodOptional<ZodRecord<ZodString, ZodUnknown>>;
logging: ZodOptional<
ZodObject<
{
logs: ZodOptional<
ZodRecord<
ZodString,
ZodUnion<
[
ZodObject<
{ BaseLog: ...; exclude: ...; include: ... },
"strip",
ZodTypeAny,
{ BaseLog?: ...; exclude?: ...; include?: ... },
{ BaseLog?: ...; exclude?: ...; include?: ... },
>,
ZodUndefined,
],
>,
>,
>;
sink: ZodOptional<
ZodObject<
{
BaseLog: ZodObject<
{
core: ZodOptional<(...)>;
encoder: ZodOptional<(...)>;
level: ZodOptional<(...)>;
sampling: ZodOptional<(...)>;
with_caller: ZodOptional<(...)>;
with_caller_skip: ZodOptional<(...)>;
with_stacktrace: ZodOptional<(...)>;
writer: ZodOptional<(...)>;
},
"strip",
ZodTypeAny,
{
core?: unknown;
encoder?: unknown;
level?: (...)
| (...);
sampling?: (...) | (...);
with_caller?: (...) | (...) | (...);
with_caller_skip?: (...) | (...);
with_stacktrace?: (...) | (...);
writer?: unknown;
},
{
core?: unknown;
encoder?: unknown;
level?: (...)
| (...);
sampling?: (...) | (...);
with_caller?: (...) | (...) | (...);
with_caller_skip?: (...) | (...);
with_stacktrace?: (...) | (...);
writer?: unknown;
},
>;
},
"strip",
ZodTypeAny,
{
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: { first?: ...; interval?: ...; thereafter?: ... };
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
},
{
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: { first?: ...; interval?: ...; thereafter?: ... };
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
},
>,
>;
},
"strip",
ZodTypeAny,
{
logs?: Record<
string,
| {
BaseLog?: {
core?: ...;
encoder?: ...;
level?: ...;
sampling?: ...;
with_caller?: ...;
with_caller_skip?: ...;
with_stacktrace?: ...;
writer?: ...;
};
exclude?: (...)[];
include?: (...)[];
}
| undefined,
>;
sink?: {
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: {
first?: (...)
| (...);
interval?: (...) | (...) | (...);
thereafter?: (...) | (...);
};
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
};
},
{
logs?: Record<
string,
| {
BaseLog?: {
core?: ...;
encoder?: ...;
level?: ...;
sampling?: ...;
with_caller?: ...;
with_caller_skip?: ...;
with_stacktrace?: ...;
writer?: ...;
};
exclude?: (...)[];
include?: (...)[];
}
| undefined,
>;
sink?: {
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: {
first?: (...)
| (...);
interval?: (...) | (...) | (...);
thereafter?: (...) | (...);
};
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
};
},
>,
>;
storage: ZodOptional<ZodUnknown>;
},
"strip",
ZodTypeAny,
{
admin?: {
config?: {
load?: unknown;
load_delay?: string
| number;
persist?: boolean;
};
disabled?: boolean;
enforce_origin?: boolean;
identity?: { identifiers?: string[]; issuers?: unknown[] };
listen?: string;
origins?: string[];
remote?: {
access_control?: (
| { permissions?: (...)
| (...); public_keys?: (...) | (...) }
| undefined
)[];
listen?: string;
};
};
apps?: Record<string, unknown>;
logging?: {
logs?: Record<
string,
| {
BaseLog?: {
core?: unknown;
encoder?: unknown;
level?: (...)
| (...);
sampling?: (...) | (...);
with_caller?: (...) | (...) | (...);
with_caller_skip?: (...) | (...);
with_stacktrace?: (...) | (...);
writer?: unknown;
};
exclude?: string[];
include?: string[];
}
| undefined,
>;
sink?: {
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: {
first?: number;
interval?: string
| number;
thereafter?: number;
};
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
};
};
storage?: unknown;
},
{
admin?: {
config?: {
load?: unknown;
load_delay?: string
| number;
persist?: boolean;
};
disabled?: boolean;
enforce_origin?: boolean;
identity?: { identifiers?: string[]; issuers?: unknown[] };
listen?: string;
origins?: string[];
remote?: {
access_control?: (
| { permissions?: (...)
| (...); public_keys?: (...) | (...) }
| undefined
)[];
listen?: string;
};
};
apps?: Record<string, unknown>;
logging?: {
logs?: Record<
string,
| {
BaseLog?: {
core?: unknown;
encoder?: unknown;
level?: (...)
| (...);
sampling?: (...) | (...);
with_caller?: (...) | (...) | (...);
with_caller_skip?: (...) | (...);
with_stacktrace?: (...) | (...);
writer?: unknown;
};
exclude?: string[];
include?: string[];
}
| undefined,
>;
sink?: {
BaseLog: {
core?: unknown;
encoder?: unknown;
level?: string;
sampling?: {
first?: number;
interval?: string
| number;
thereafter?: number;
};
with_caller?: boolean;
with_caller_skip?: number;
with_stacktrace?: string;
writer?: unknown;
};
};
};
storage?: unknown;
},
> = ...
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