@appwarden/middleware
Version:
Instantly disable all user interaction with your app deployed on Cloudflare or Vercel
424 lines (419 loc) • 27.5 kB
TypeScript
import { z } from 'zod';
/**
* Zod schema for TanStack Start Cloudflare adapter configuration.
* Validates the config object returned by the configFn.
*/
declare const TanStackStartCloudflareConfigSchema: z.ZodObject<{
/** The slug/path of the lock page to redirect to when the site is locked */
lockPageSlug: z.ZodEffects<z.ZodString, string, string>;
/** The Appwarden API token for authentication */
appwardenApiToken: z.ZodEffects<z.ZodEffects<z.ZodString, string, unknown>, string, unknown>;
/** Optional custom API hostname (defaults to https://api.appwarden.io) */
appwardenApiHostname: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>>;
/** Enable debug logging */
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>>;
/** Optional Content Security Policy configuration */
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;
};
}>>>;
}, "strip", z.ZodTypeAny, {
debug: boolean;
lockPageSlug: string;
appwardenApiToken: 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;
appwardenApiHostname?: string | undefined;
}, {
lockPageSlug: string;
debug?: string | boolean | undefined;
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;
appwardenApiToken?: unknown;
appwardenApiHostname?: string | undefined;
}>;
type TanStackStartCloudflareConfig = z.infer<typeof TanStackStartCloudflareConfigSchema>;
type TanStackStartCloudflareConfigInput = z.input<typeof TanStackStartCloudflareConfigSchema>;
declare function getAppwardenConfiguration(generatedConfig: Record<string, unknown>, config: Partial<TanStackStartCloudflareConfigInput>): TanStackStartCloudflareConfig;
/**
* Configuration function that returns the config.
* This allows dynamic configuration based on environment variables from cloudflare:workers.
* Accepts pre-transformation input types (e.g., string | boolean for debug, string | object for CSP directives).
*/
type TanStackStartConfigFn = () => TanStackStartCloudflareConfigInput | TanStackStartCloudflareConfig;
/**
* The result returned by the `next()` function in TanStack Start request middleware.
*
* Mirrors the internal `RequestServerResult` interface from `@tanstack/start-client-core`
* without importing from an unstable internal package path.
*
* Note: `pathname` remains required here to stay structurally compatible with
* TanStack's `RequestServerResult` type, which expects a non-optional string.
* The adapter itself does not use this property, but other parts of TanStack's
* type system do, so we keep it required on the result while allowing it to be
* optional on the middleware *args* type.
*/
interface TanStackStartNextResult {
request: Request;
pathname: string;
context: unknown;
response: Response;
}
/**
* The `next()` function passed to TanStack Start request middleware.
*
* This mirrors the shape of TanStack's `RequestServerNextFn` from
* `@tanstack/start-client-core` without importing the type directly.
*
* - It accepts an optional options object with an optional `context`.
* - It may return either a `TanStackStartNextResult` or a Promise of one,
* matching TanStack's own union return type
* (`Promise<RequestServerResult> | RequestServerResult`).
* - The adapter itself always calls `next()` with no arguments and awaits it,
* so callers are free to pass TanStack's native `next` implementation
* directly (`next: next`).
*/
interface TanStackStartNextOptions<TServerContext = Record<string, unknown>> {
context?: TServerContext;
}
type TanStackStartNextFnResult = Promise<TanStackStartNextResult> | TanStackStartNextResult;
type TanStackStartNextFn = <TServerContext = Record<string, unknown>>(options?: TanStackStartNextOptions<TServerContext>) => TanStackStartNextFnResult;
/**
* TanStack Start middleware server callback arguments.
*
* Mirrors the official TanStack Start `RequestServerOptions` interface.
*/
interface TanStackStartMiddlewareArgs {
request: Request;
/**
* Optional pathname supplied by TanStack Start. The adapter does not require it,
* so callers do not need to provide it when constructing harness args manually.
*/
pathname?: string;
next: TanStackStartNextFn;
serverFnMeta?: unknown;
}
/**
* TanStack Start middleware function signature.
*
* Mirrors the official TanStack Start `RequestServerFn` type used for
* request middleware server functions.
*
* Note: The middleware either returns TanStackStartNextResult or throws a Response (redirect).
* Thrown values are not part of the return type.
*/
type TanStackStartMiddlewareFunction = (args: TanStackStartMiddlewareArgs) => Promise<TanStackStartNextResult>;
/**
*
* @param configFn - A function that returns the config using env from cloudflare:workers
* @returns A TanStack Start middleware function
*/
declare function createAppwardenMiddleware(configFn: TanStackStartConfigFn): TanStackStartMiddlewareFunction;
export { type TanStackStartCloudflareConfig, type TanStackStartCloudflareConfigInput, type TanStackStartConfigFn, type TanStackStartMiddlewareArgs, type TanStackStartMiddlewareFunction, type TanStackStartNextFn, type TanStackStartNextResult, createAppwardenMiddleware, getAppwardenConfiguration };