import { z } from 'zod'; import { type FirefoxUserPrefs } from './prefs.js'; export declare const launchInputSchema: z.ZodObject<{ headless: z.ZodOptional; configPath: z.ZodOptional; configJson: z.ZodOptional; prefsPath: z.ZodOptional; prefsJson: z.ZodOptional; fingerprintPath: z.ZodOptional; fingerprintJson: z.ZodOptional; fingerprint: z.ZodOptional]>>; region: z.ZodOptional; geolocation: z.ZodOptional; timezone: z.ZodOptional; region: z.ZodOptional; webrtcIpv4: z.ZodOptional; webrtcIpv6: z.ZodOptional; }, "strip", z.ZodTypeAny, { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; }, { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; }>>; screenProfile: z.ZodOptional; screen: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; availWidth: z.ZodOptional; availHeight: z.ZodOptional; availTop: z.ZodOptional; availLeft: z.ZodOptional; colorDepth: z.ZodOptional; pixelDepth: z.ZodOptional; devicePixelRatio: z.ZodOptional; }, "strip", z.ZodTypeAny, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; }, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; }>]>>; windowProfile: z.ZodOptional; window: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; innerWidth: z.ZodOptional; innerHeight: z.ZodOptional; outerWidth: z.ZodOptional; outerHeight: z.ZodOptional; screenX: z.ZodOptional; screenY: z.ZodOptional; devicePixelRatio: z.ZodOptional; historyLength: z.ZodOptional; }, "strip", z.ZodTypeAny, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; }, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; }>]>>; fonts: z.ZodOptional>; fontSpacingSeed: z.ZodOptional; blockImages: z.ZodOptional; blockWebRtc: z.ZodOptional; blockWebGl: z.ZodOptional; disableCoop: z.ZodOptional; }, "strip", z.ZodTypeAny, { region?: string | undefined; locales?: string | string[] | undefined; geolocation?: { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; } | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; }, { region?: string | undefined; locales?: string | string[] | undefined; geolocation?: { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; } | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; }>>; preset: z.ZodOptional>; proxy: z.ZodOptional; locale: z.ZodOptional; locales: z.ZodOptional]>>; region: z.ZodOptional; timezone: z.ZodOptional; screenProfile: z.ZodOptional; screen: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; availWidth: z.ZodOptional; availHeight: z.ZodOptional; availTop: z.ZodOptional; availLeft: z.ZodOptional; colorDepth: z.ZodOptional; pixelDepth: z.ZodOptional; devicePixelRatio: z.ZodOptional; }, "strip", z.ZodTypeAny, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; }, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; }>]>>; windowProfile: z.ZodOptional; window: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; innerWidth: z.ZodOptional; innerHeight: z.ZodOptional; outerWidth: z.ZodOptional; outerHeight: z.ZodOptional; screenX: z.ZodOptional; screenY: z.ZodOptional; devicePixelRatio: z.ZodOptional; historyLength: z.ZodOptional; }, "strip", z.ZodTypeAny, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; }, { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; }>]>>; fonts: z.ZodOptional>; fontSpacingSeed: z.ZodOptional; blockImages: z.ZodOptional; blockWebRtc: z.ZodOptional; blockWebGl: z.ZodOptional; disableCoop: z.ZodOptional; width: z.ZodOptional; height: z.ZodOptional; browser: z.ZodOptional; }, "strip", z.ZodTypeAny, { width?: number | undefined; height?: number | undefined; timezone?: string | undefined; region?: string | undefined; locales?: string | string[] | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; locale?: string | undefined; headless?: boolean | undefined; configPath?: string | undefined; configJson?: string | undefined; prefsPath?: string | undefined; prefsJson?: string | undefined; fingerprintPath?: string | undefined; fingerprintJson?: string | undefined; fingerprint?: { region?: string | undefined; locales?: string | string[] | undefined; geolocation?: { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; } | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; } | undefined; preset?: string[] | undefined; proxy?: string | undefined; browser?: string | undefined; }, { width?: number | undefined; height?: number | undefined; timezone?: string | undefined; region?: string | undefined; locales?: string | string[] | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; locale?: string | undefined; headless?: boolean | undefined; configPath?: string | undefined; configJson?: string | undefined; prefsPath?: string | undefined; prefsJson?: string | undefined; fingerprintPath?: string | undefined; fingerprintJson?: string | undefined; fingerprint?: { region?: string | undefined; locales?: string | string[] | undefined; geolocation?: { latitude: number; longitude: number; accuracy?: number | undefined; timezone?: string | undefined; region?: string | undefined; webrtcIpv4?: string | undefined; webrtcIpv6?: string | undefined; } | undefined; screenProfile?: string | undefined; screen?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; availWidth?: number | undefined; availHeight?: number | undefined; availTop?: number | undefined; availLeft?: number | undefined; colorDepth?: number | undefined; pixelDepth?: number | undefined; devicePixelRatio?: number | undefined; } | undefined; windowProfile?: string | undefined; window?: string | { profile?: string | undefined; width?: number | undefined; height?: number | undefined; devicePixelRatio?: number | undefined; innerWidth?: number | undefined; innerHeight?: number | undefined; outerWidth?: number | undefined; outerHeight?: number | undefined; screenX?: number | undefined; screenY?: number | undefined; historyLength?: number | undefined; } | undefined; fonts?: string[] | undefined; fontSpacingSeed?: number | undefined; blockImages?: boolean | undefined; blockWebRtc?: boolean | undefined; blockWebGl?: boolean | undefined; disableCoop?: boolean | undefined; } | undefined; preset?: string[] | undefined; proxy?: string | undefined; browser?: string | undefined; }>; export type LaunchInput = z.infer; export interface ProxySettings { server: string; } export interface ResolvedLaunchConfig { headless: boolean; browser?: string | undefined; presetNames: string[]; camouConfig: Record; firefoxUserPrefs: FirefoxUserPrefs; proxy?: ProxySettings | undefined; locale?: string | undefined; timezoneId?: string | undefined; viewport?: { width: number; height: number; } | undefined; } export declare function loadJsonObjectFile(filePath: string, label: string): Promise>; export declare function parseJsonObjectString(raw: string, label: string): Record; export declare function hasLaunchFingerprintHelpers(input: LaunchInput): boolean; export declare function resolveJsonObjectInput(pathValue: string | undefined, jsonValue: string | undefined, label: string): Promise>; export declare function parseProxyString(proxy?: string): ProxySettings | undefined; export declare function validateLocale(locale?: string): string | undefined; export declare function validateTimezone(timezone?: string): string | undefined; export declare function resolveLaunchConfig(input: LaunchInput): Promise;