// Temporary type declarations for Playwright // This file can be removed once @playwright/test is properly installed declare module '@playwright/test' { export interface Page { goto(url: string): Promise; click(selector: string): Promise; fill(selector: string, value: string): Promise; selectOption(selector: string, value: string): Promise; locator(selector: string): Locator; waitForSelector( selector: string, options?: { timeout?: number } ): Promise; setViewportSize(size: { width: number; height: number }): Promise; } export interface Locator { click(): Promise; fill(value: string): Promise; toBeVisible(): Promise; toContainText(text: string | string[]): Promise; toHaveClass(pattern: RegExp): Promise; not: Locator; first(): Locator; toHaveCount(count: number): Promise; } export interface TestFunction { (name: string, fn: ({ page }: { page: Page }) => Promise): void; describe: (name: string, fn: () => void) => void; beforeEach: (fn: ({ page }: { page: Page }) => Promise) => void; extend: (fixtures: any) => TestFunction; } export interface ExpectFunction { (actual: any): { toBeVisible(): Promise; toContainText(text: string | string[]): Promise; toHaveClass(pattern: RegExp): Promise; not: { toBeVisible(): Promise; toHaveClass(pattern: RegExp): Promise; }; toHaveCount(count: number): Promise; }; } export const test: TestFunction; export const expect: ExpectFunction; export interface Config { testDir?: string; fullyParallel?: boolean; forbidOnly?: boolean; retries?: number; workers?: number; reporter?: string; use?: { baseURL?: string; trace?: string; screenshot?: string; video?: string; }; projects?: Array<{ name: string; use: any; }>; webServer?: { command: string; url: string; reuseExistingServer: boolean; timeout: number; }; } export function defineConfig(config: Config): Config; export const devices: { [key: string]: any; }; }