import type { DeviceDescriptor } from './types.js';
/**
 * Default viewport for newly-created profiles. Matches Safari's logical
 * resolution on a 14-inch MacBook Pro (M1/M2/M3 Pro/Max) — the most common
 * shape this CLI sees in practice. Shared with the `MacBook Pro` device
 * preset below so both surfaces agree.
 */
export declare const DEFAULT_VIEWPORT: {
    readonly width: 1512;
    readonly height: 982;
    readonly deviceScaleFactor: 2;
};
export declare const DEVICES: Record<string, DeviceDescriptor>;
export declare function getDevice(name: string): DeviceDescriptor | undefined;
export declare function listDevices(): string[];
/**
 * Parse a `--window WxH` value. Returns null when the value is malformed, so
 * callers emit their own actionable error.
 *
 * Shared by `profiles create` and `profiles edit` — one regex, one test, no
 * drift between the two surfaces.
 */
export declare function parseWindowSize(raw: string): {
    width: number;
    height: number;
} | null;
/**
 * Parse a `--position X,Y` value. Negative coordinates are valid — a window may
 * sit on a display left of or above the primary one.
 */
export declare function parseWindowPosition(raw: string): {
    x: number;
    y: number;
} | null;
