/** * Security watchdog for enforcing URL access policies. */ import { BaseWatchdog, WatchdogConfig } from './base'; import { BrowserSession } from '../session'; import { NavigateToUrlEvent, NavigationCompleteEvent, TabCreatedEvent } from '../events'; export interface SecurityWatchdogConfig extends WatchdogConfig { allowedDomains?: string[]; blockRedirects?: boolean; } export declare class SecurityWatchdog extends BaseWatchdog { static LISTENS_TO: string[]; static EMITS: string[]; protected config: SecurityWatchdogConfig; constructor(browserSession: BrowserSession, config?: SecurityWatchdogConfig); protected onAttached(): void; on_NavigateToUrlEvent(event: NavigateToUrlEvent): Promise; on_NavigationCompleteEvent(event: NavigationCompleteEvent): Promise; on_TabCreatedEvent(event: TabCreatedEvent): Promise; private logGlobWarning; /** * Check if a URL is allowed based on the allowed_domains configuration. */ private isUrlAllowed; private isInternalUrl; private matchesPattern; /** * Get current security configuration. */ getSecurityConfig(): { allowedDomains: string[]; blockRedirects: boolean | undefined; }; /** * Update allowed domains configuration. */ updateAllowedDomains(domains: string[]): void; } //# sourceMappingURL=security.d.ts.map