type CheckComponent = "audioBaseLatency" | "canvas" | "document" | "essentialApis" | "fonts" | "fontPreferences" | "forcedColors" | "hardware" | "iframe" | "invertedColors" | "navigation" | "navigator" | "plugins" | "prototype" | "recaptcha" | "screen" | "screenMeta" | "storage" | "timezone" | "turnstile" | "userAgent" | "webDriver" | "webgl"; type AnalyzeMode = "public" | "debug"; interface ComponentEntry { duration: number; value: any; } interface DebugInfo { integrityCodes: (string | number)[]; iframeComparisons: number; environmentFlag: boolean | null; errors: number[]; } interface AnalyzeResult { visitorId: string; referrer: "direct" | "internal" | "external" | "file" | "localhost"; visitor: "human" | "suspicious" | "bot"; risk: { score: number; level: "low" | "medium" | "high" | "critical"; }; confidence: number; components: Partial>; debug?: DebugInfo; } interface PluginResult { codes?: (string | number)[]; value?: unknown; duration?: number; } interface PluginContext { integritychecks: (string | number)[]; errors: number[]; } type PluginFn = (context?: PluginContext) => PluginResult | Promise; interface Plugin { name: string; fn: PluginFn; } interface RecaptchaOptions { siteKey: string; action?: string; endpoint: string; threshold?: number; referrer?: "direct" | "internal" | "external"; saveTokens?: boolean; } interface TurnstileOptions { siteKey: string; endpoint: string; referrer?: "direct" | "internal" | "external"; appearance?: "always" | "execute" | "interaction-only"; } interface HardwareOptions { referrer?: "direct" | "internal" | "external"; } interface AnalyzeOptions { mode?: AnalyzeMode; plugins?: Plugin[]; } declare function analyze(): AnalyzeResult; declare function analyze(mode: AnalyzeMode): AnalyzeResult; declare function analyze(options: AnalyzeOptions): Promise; declare function recaptchaPlugin(options: RecaptchaOptions): Plugin; declare function turnstilePlugin(options: TurnstileOptions): Plugin; declare function hardwarePlugin(options?: HardwareOptions): Plugin; declare const detector: { grecaptcha: typeof recaptchaPlugin; turnstile: typeof turnstilePlugin; hardware: typeof hardwarePlugin; }; export { analyze, detector }; export type { AnalyzeOptions, AnalyzeResult, HardwareOptions, Plugin, PluginResult, RecaptchaOptions, TurnstileOptions };