UNPKG

@appwarden/middleware

Version:

Instantly disable all user interaction with your app deployed on Cloudflare or Vercel

789 lines (785 loc) 59.6 kB
export { B as Bindings, C as CSPDirectivesSchema, a as CSPModeSchema, M as Middleware } from './use-content-security-policy-Dwdcwp33.js'; import { z } from 'zod'; declare const LOCKDOWN_TEST_EXPIRY_MS: number; declare const APPWARDEN_HEARTBEAT_ROUTE = "/_appwarden/heartbeat"; declare const HEARTBEAT_CONTRACT_VERSION: 1; declare const HEARTBEAT_VERSION_MAX_LENGTH = 128; /** * Maximum number of public heartbeat config errors. * Prevents unbounded response sizes. */ declare const HEARTBEAT_CONFIG_ERROR_MAX_COUNT = 10; /** * Maximum path depth for public heartbeat config errors. * Prevents deeply nested paths from being exposed. */ declare const HEARTBEAT_CONFIG_ERROR_MAX_PATH_DEPTH = 10; /** * Maximum length for public heartbeat config error codes. * Keeps error codes within the contract bounds. */ declare const HEARTBEAT_CONFIG_ERROR_MAX_CODE_LENGTH = 100; /** * Maximum length for public heartbeat config error messages. * Prevents excessively long messages from being exposed. */ declare const HEARTBEAT_CONFIG_ERROR_MAX_MESSAGE_LENGTH = 500; declare const HEARTBEAT_CONFIG_ERRORS_MAX_SERIALIZED_BYTES: number; declare const HEARTBEAT_RESPONSE_BODY_MAX_SERIALIZED_BYTES: number; /** * Maximum length for individual public heartbeat config error path segments. * Prevents excessively long path segments from being exposed. */ declare const HEARTBEAT_CONFIG_ERROR_MAX_PATH_SEGMENT_LENGTH = 100; declare const APPWARDEN_CACHE_KEY: "appwarden-lock"; declare const APPWARDEN_MIDDLEWARE_USER_AGENT_PREFIX = "Appwarden/"; declare const APPWARDEN_MIDDLEWARE_USER_AGENT: string; declare const HEARTBEAT_SERVICE_VALUES: readonly ["cloudflare", "cloudflare-astro", "cloudflare-react-router", "cloudflare-tanstack-start", "cloudflare-nextjs", "vercel"]; /** * Service identifiers for different middleware adapters. * These are hardcoded per adapter bundle. */ declare const HEARTBEAT_SERVICES: { readonly CLOUDFLARE: "cloudflare"; readonly CLOUDFLARE_ASTRO: "cloudflare-astro"; readonly CLOUDFLARE_REACT_ROUTER: "cloudflare-react-router"; readonly CLOUDFLARE_TANSTACK_START: "cloudflare-tanstack-start"; readonly CLOUDFLARE_NEXTJS: "cloudflare-nextjs"; readonly VERCEL: "vercel"; }; /** * Service identifiers for different middleware adapters. * These are hardcoded per adapter bundle. */ type HeartbeatService = (typeof HEARTBEAT_SERVICE_VALUES)[number]; /** * Schema for validating heartbeat config errors. * Ensures errors are bounded and sanitized. */ declare const HeartbeatConfigErrorSchema: z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; code: z.ZodString; message: z.ZodString; }, "strict", z.ZodTypeAny, { code: string; path: (string | number)[]; message: string; }, { code: string; path: (string | number)[]; message: string; }>; type HeartbeatConfigError = z.infer<typeof HeartbeatConfigErrorSchema>; /** * Schema for validating the heartbeat response body. */ declare const HeartbeatResponseBodySchema: z.ZodEffects<z.ZodObject<{ app: z.ZodLiteral<"appwarden">; kind: z.ZodLiteral<"heartbeat">; status: z.ZodLiteral<"ok">; contractVersion: z.ZodLiteral<1>; service: z.ZodEnum<["cloudflare", "cloudflare-astro", "cloudflare-react-router", "cloudflare-tanstack-start", "cloudflare-nextjs", "vercel"]>; version: z.ZodString; configErrors: z.ZodEffects<z.ZodArray<z.ZodObject<{ path: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; code: z.ZodString; message: z.ZodString; }, "strict", z.ZodTypeAny, { code: string; path: (string | number)[]; message: string; }, { code: string; path: (string | number)[]; message: string; }>, "many">, { code: string; path: (string | number)[]; message: string; }[], { code: string; path: (string | number)[]; message: string; }[]>; }, "strict", z.ZodTypeAny, { status: "ok"; app: "appwarden"; kind: "heartbeat"; contractVersion: 1; service: "cloudflare" | "cloudflare-astro" | "cloudflare-react-router" | "cloudflare-tanstack-start" | "cloudflare-nextjs" | "vercel"; version: string; configErrors: { code: string; path: (string | number)[]; message: string; }[]; }, { status: "ok"; app: "appwarden"; kind: "heartbeat"; contractVersion: 1; service: "cloudflare" | "cloudflare-astro" | "cloudflare-react-router" | "cloudflare-tanstack-start" | "cloudflare-nextjs" | "vercel"; version: string; configErrors: { code: string; path: (string | number)[]; message: string; }[]; }>, { status: "ok"; app: "appwarden"; kind: "heartbeat"; contractVersion: 1; service: "cloudflare" | "cloudflare-astro" | "cloudflare-react-router" | "cloudflare-tanstack-start" | "cloudflare-nextjs" | "vercel"; version: string; configErrors: { code: string; path: (string | number)[]; message: string; }[]; }, { status: "ok"; app: "appwarden"; kind: "heartbeat"; contractVersion: 1; service: "cloudflare" | "cloudflare-astro" | "cloudflare-react-router" | "cloudflare-tanstack-start" | "cloudflare-nextjs" | "vercel"; version: string; configErrors: { code: string; path: (string | number)[]; message: string; }[]; }>; type HeartbeatResponseBody = z.infer<typeof HeartbeatResponseBodySchema>; declare function validateHeartbeatResponseBody(value: unknown): HeartbeatResponseBody; /** * Extracts the Edge Config ID from a valid Edge Config URL * @param value The Edge Config URL * @returns The Edge Config ID or undefined if the URL is invalid */ declare const getEdgeConfigId: (value?: string) => string | undefined; /** * Checks if a URL is a valid cache URL (less strict validation) */ declare const isCacheUrl: { /** * Checks if a URL is a valid Edge Config URL (hostname check only) * @param value The URL to check * @returns True if the URL is a valid Edge Config URL, false otherwise */ edgeConfig: (value?: string) => boolean; /** * Checks if a URL is a valid Upstash URL (hostname check only) * @param value The URL to check * @returns True if the URL is a valid Upstash URL, false otherwise */ upstash: (value?: string) => boolean; }; /** * Performs strict validation of cache URLs */ declare const isValidCacheUrl: { /** * Strictly validates an Edge Config URL * @param value The URL to validate * @returns True if the URL is a valid Edge Config URL, false otherwise */ edgeConfig: (value?: string) => boolean; /** * Strictly validates an Upstash URL * @param value The URL to validate * @returns The password if the URL is valid, false otherwise */ upstash: (value?: string) => string | boolean; }; declare const UseAppwardenInputSchema: z.ZodObject<{ debug: z.ZodDefault<z.ZodEffects<z.ZodEffects<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, boolean | "true" | "false", string | boolean | undefined>, boolean, string | boolean | undefined>>; lockPageSlug: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>; contentSecurityPolicy: z.ZodOptional<z.ZodLazy<z.ZodObject<{ mode: z.ZodUnion<[z.ZodLiteral<"disabled">, z.ZodLiteral<"report-only">, z.ZodLiteral<"enforced">]>; directives: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodObject<{ "default-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "script-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "style-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "img-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "connect-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "font-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "object-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "media-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "frame-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; sandbox: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "report-uri": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "child-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "form-action": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "frame-ancestors": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "plugin-types": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "base-uri": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "report-to": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "worker-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "manifest-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "prefetch-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "navigate-to": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "require-sri-for": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "block-all-mixed-content": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "upgrade-insecure-requests": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "trusted-types": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "require-trusted-types-for": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; }, "strip", z.ZodTypeAny, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>]>, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; } | undefined, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>; }, "strip", z.ZodTypeAny, { mode: "disabled" | "report-only" | "enforced"; directives?: { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; } | undefined; }, { mode: "disabled" | "report-only" | "enforced"; directives: string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }; }>>>; multidomainConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{ lockPageSlug: z.ZodEffects<z.ZodString, string, string>; contentSecurityPolicy: z.ZodOptional<z.ZodLazy<z.ZodObject<{ mode: z.ZodUnion<[z.ZodLiteral<"disabled">, z.ZodLiteral<"report-only">, z.ZodLiteral<"enforced">]>; directives: z.ZodEffects<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodObject<{ "default-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "script-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "style-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "img-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "connect-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "font-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "object-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "media-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "frame-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; sandbox: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "report-uri": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "child-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "form-action": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "frame-ancestors": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "plugin-types": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "base-uri": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "report-to": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "worker-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "manifest-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "prefetch-src": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "navigate-to": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "require-sri-for": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "block-all-mixed-content": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "upgrade-insecure-requests": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "trusted-types": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; "require-trusted-types-for": z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodString, z.ZodBoolean]>>; }, "strip", z.ZodTypeAny, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>]>, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>, { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; } | undefined, string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }>; }, "strip", z.ZodTypeAny, { mode: "disabled" | "report-only" | "enforced"; directives?: { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; } | undefined; }, { mode: "disabled" | "report-only" | "enforced"; directives: string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }; }>>>; debug: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodBoolean]>>, boolean | "true" | "false", string | boolean | undefined>, boolean, string | boolean | undefined>>; }, "strip", z.ZodTypeAny, { lockPageSlug: string; contentSecurityPolicy?: { mode: "disabled" | "report-only" | "enforced"; directives?: { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; } | undefined; } | undefined; debug?: boolean | undefined; }, { lockPageSlug: string; contentSecurityPolicy?: { mode: "disabled" | "report-only" | "enforced"; directives: string | { "default-src"?: string | boolean | string[] | undefined; "script-src"?: string | boolean | string[] | undefined; "style-src"?: string | boolean | string[] | undefined; "img-src"?: string | boolean | string[] | undefined; "connect-src"?: string | boolean | string[] | undefined; "font-src"?: string | boolean | string[] | undefined; "object-src"?: string | boolean | string[] | undefined; "media-src"?: string | boolean | string[] | undefined; "frame-src"?: string | boolean | string[] | undefined; sandbox?: string | boolean | string[] | undefined; "report-uri"?: string | boolean | string[] | undefined; "child-src"?: string | boolean | string[] | undefined; "form-action"?: string | boolean | string[] | undefined; "frame-ancestors"?: string | boolean | string[] | undefined; "plugin-types"?: string | boolean | string[] | undefined; "base-uri"?: string | boolean | string[] | undefined; "report-to"?: string | boolean | string[] | undefined; "worker-src"?: string | boolean | string[] | undefined; "manifest-src"?: string | boolean | string[] | undefined; "prefetch-src"?: string | boolean | string[] | undefined; "navigate-to"?: string | boolean | string[] | undefined; "require-sri-for"?: string | boolean | string[] | undefined; "block-all-mixed-content"?: string | boolean | string[] | undefined; "upgrade-insecure-requests"?: string | boolean | string[] | undefined; "trusted-types"?: string | boolean | string[] | undefined; "require-trusted-types-for"?: string | boolean | string[] | undefined; }; } | undefined; debug?: string | boolean | undefined; }>>>; appwardenApiToken: z.ZodEffects<z.ZodEffects<z.ZodString, string, unknown>, string, unknown>; appwardenApiHostname: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>>; }, "strip", z.ZodTypeAny, { debug: boolean; appwardenApiToken: string; lockPageSlug?: string | undefined; contentSecurityPolicy?: { mode: "disabled" | "report-only" | "enforced"; directives?: { "