import type {RequestListener} from 'http'; import type {WaitForOptions} from 'puppeteer-core'; import type {ColorScheme, ExtensionData, News, UserSettings} from '../../src/definitions'; type PathsObject = {[path: string]: string | RequestListener | PathsObject}; type OneStyleExpectation = [selector: string | string[], cssAttributeName: string, expectedValue: string]; type StyleExpectations = OneStyleExpectation[] | OneStyleExpectation; declare global { const loadTestPage: (paths: PathsObject & {cors?: PathsObject}, gotoOptions?: WaitForOptions) => Promise; const corsURL: string; const popupUtils: { click: (selector: string) => Promise; exists: (selector: string) => Promise; saveFile: (name: string, content: string) => Promise; }; const devtoolsUtils: { click: (selector: string) => Promise; exists: (selector: string) => Promise; paste: (fixes: string) => Promise; reset: () => Promise; }; const backgroundUtils: { changeSettings: (settings: Partial) => Promise; collectData: () => Promise; changeChromeStorage: (region: 'local' | 'sync', data: {[key: string]: any}) => Promise; getColorScheme: () => Promise; getChromeStorage: (region: 'local' | 'sync', keys: string[]) => Promise<{[key: string]: any}>; getManifest: () => Promise; setNews: (news: News[] | null) => Promise; onDownload: (callback: (p: {ok: boolean}) => void) => void; emulateColorScheme: (colorScheme: ColorScheme) => Promise; }; const pageUtils: { evaluateScript: (script: () => any) => Promise; }; const emulateColorScheme: (value: ColorScheme) => Promise; const awaitForEvent: (uuid: string) => Promise; const expectPageStyles: (expect: jest.Expect, expectations: StyleExpectations) => Promise; const getColorScheme: () => Promise; const product: 'firefox'; }