import './cloudflare-2PkEr25r.js';
import { z } from 'zod';

interface MiddlewareContext {
    hostname: string;
    request: Request;
    response: Response;
    waitUntil: ExecutionContext["waitUntil"];
}
type Middleware = (context: MiddlewareContext, next: () => MiddlewareNextSchemaType) => MiddlewareNextSchemaType;
declare const MiddlewareNextSchema: z.ZodUnion<[z.ZodVoid, z.ZodNull, z.ZodPromise<z.ZodUnion<[z.ZodVoid, z.ZodNull]>>]>;
type MiddlewareNextSchemaType = z.infer<typeof MiddlewareNextSchema>;

declare const CSPDirectivesSchema: 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;
}>]>;
declare const CSPModeSchema: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"disabled">, z.ZodLiteral<"report-only">, z.ZodLiteral<"enforced">]>>>;
declare const UseCSPInputSchema: z.ZodEffects<z.ZodObject<{
    mode: z.ZodDefault<z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"disabled">, z.ZodLiteral<"report-only">, z.ZodLiteral<"enforced">]>>>;
    directives: z.ZodEffects<z.ZodEffects<z.ZodOptional<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;
    } | 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;
    } | 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;
    } | 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" | undefined;
    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;
}>, {
    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" | undefined;
    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;
}>;
type UseCSPInput = z.infer<typeof UseCSPInputSchema>;

declare const useContentSecurityPolicy: (input: UseCSPInput) => Middleware;

export { CSPDirectivesSchema as C, type Middleware as M, CSPModeSchema as a, useContentSecurityPolicy as u };
