import type { Page } from '@playwright/test'; /** * MP-07 SP-C lift — generic login-flow template-method. * * A `fdp-e2e-helpers@v2.0`-ban a `FDPLoginFlowHelper` ezt fogja extends-eli * az FDP-auth-service-specifikus URL + form-key-k impl-jével. * * Template-method (Gang of Four pattern): a `login()` definiált flow-t fut, * a subclass csak a "step-konfigurációt" (selectors + success-route) adja. */ export interface DyE2E_LoginFlowResult { success: boolean; /** Időtartam ms-ben. */ durationMs: number; /** Opcionális token-extrakció eredménye. */ authState?: { token?: string; refreshToken?: string; [extra: string]: unknown; }; /** Hiba, ha success === false. */ error?: string; } export declare abstract class DyE2E_LoginFlowHelper_Base { /** A login form gyökér-eleme — a fill-ek scope-ját adja. */ abstract loginFormSelector: string; /** Az email/username input testId-je. */ abstract emailInputTestId: string; /** A password input testId-je. */ abstract passwordInputTestId: string; /** A submit button testId-je. */ abstract submitButtonTestId: string; /** A success-route regex-e (pl. `/dashboard`). A `waitForURL` ezzel megy. */ abstract successRouteRegex: RegExp; /** Login-route ahova navigálunk (default: `/login`). */ loginRoute: string; /** Timeout ms-ben (default 15000). */ loginTimeoutMs: number; /** * Hook: a sikeres login után a sub-class kiolvashatja a tokent (pl. * `localStorage` vagy cookies). Default: üres token. */ protected extractAuthState(_page: Page): Promise; /** * Template-method: fill + submit + wait-for-success-route + extract-token. * * NEM dob hibára — `DyE2E_LoginFlowResult.success: false`-szel jelzi. */ login(page: Page, email: string, password: string): Promise; } //# sourceMappingURL=login-flow-helper.base.d.ts.map