import { S as StorageAdapter, c as RateLimiter } from '../types-Xk5M26Sz.js'; import { BotGuardConfig, BotMode } from '../bot/index.js'; import { CsrfGuardConfig } from '../csrf/index.js'; import { G as GuardLike } from '../guard-runner-DbY4QoSh.js'; interface PresetInput { storage: StorageAdapter; prefix?: string; } interface ApiPresetInput extends PresetInput { limit?: number; window?: `${number}${"s" | "m" | "h" | "d"}`; } type BotPresetConfig = Omit & { mode?: BotMode; }; type CsrfPresetConfig = Omit; interface ApiShieldInput extends ApiPresetInput { bot?: BotPresetConfig | false; csrf?: CsrfPresetConfig; csrfSecret?: string; } interface AuthShieldInput extends ApiPresetInput { bot?: BotPresetConfig | false; csrf?: CsrfPresetConfig; csrfSecret: string; } interface PageShieldInput extends ApiPresetInput { bot?: BotPresetConfig | false; } declare const presets: { api(input: ApiPresetInput): RateLimiter; auth(input: ApiPresetInput): RateLimiter; page(input: ApiPresetInput): RateLimiter; apiShield(input: ApiShieldInput): GuardLike; authShield(input: AuthShieldInput): GuardLike; pageShield(input: PageShieldInput): GuardLike; }; export { type ApiPresetInput, type ApiShieldInput, type AuthShieldInput, type PageShieldInput, type PresetInput, presets };