import { IStrategy, ExecutionContext, Slot, AvailabilityResult, BookResult, NotificationEvent, SecurityQuestionSolver } from '../common/interfaces'; import { PlaywrightService } from '../services/playwright.service'; import { AvailabilityDetectorService } from '../services/availability-detector.service'; import { NotifierService } from '../services/notifier.service'; export declare class UruguayInscripcionDePartidasExtrangerasRegistroCivilStrategy implements IStrategy { private readonly playwrightService; private readonly availabilityDetector; private readonly notifierService; readonly id = "UruguayInscripcionDePartidasExtrangerasRegistroCivil"; readonly name = "Inscripci\u00F3n de Partidas Extranjeras - Registro Civil Uruguay"; readonly version = "1.0.0"; private readonly logger; private readonly tramiteUrl; private readonly baseUrl; private storedGenaiSolver; private readonly detectionConfig; constructor(playwrightService: PlaywrightService, availabilityDetector: AvailabilityDetectorService, notifierService: NotifierService); bootstrap(ctx: ExecutionContext): Promise; fillForms(ctx: ExecutionContext, userData: Record): Promise; solveSecurityCheck(ctx: ExecutionContext, solver: SecurityQuestionSolver): Promise; reachCalendar(ctx: ExecutionContext): Promise; private isWithinTimeWindow; pollAvailability(ctx: ExecutionContext): Promise; book(ctx: ExecutionContext, slot: Slot, userData: Record): Promise; notify(ctx: ExecutionContext, event: NotificationEvent): Promise; validateUserData(userData: Record): Promise; getRequiredFields(): string[]; private fillTitularData; private fillSolicitanteData; private ensureCualquierHorario; private selectBoxLocation; private selectDate; private selectTime; private confirmBooking; private extractConfirmationDetails; }