/**
 * Native Design Inspector
 *
 * Pure TypeScript functions that map flattened React Native styles to the
 * web SDK's ExtendedComputedStyles format. No react-native imports — works
 * with already-flattened style objects from the registry.
 *
 * Key differences from web:
 * - No `window.getComputedStyle()` — styles are declarative objects
 * - No hover/active states — uses pressed/focused/disabled
 * - No pseudo-elements (::before/::after)
 * - No CSS grid, cursor, visibility, transitions, background-image
 * - RN default flexDirection is 'column' (not 'row')
 * - Shadows differ: iOS uses shadow* props, Android uses elevation
 * - Numeric values → "Npx" strings
 */
import type { ExtendedComputedStyles, ElementDesignData, StateStyles, ResponsiveSnapshot } from './design-types';
import type { NativeLayout } from '../core/types';
/**
 * Map a flattened React Native style object to ExtendedComputedStyles.
 *
 * Rules:
 * - Numeric values → "Npx"
 * - String values → pass through
 * - textDecorationLine → textDecoration
 * - RN shadow props → boxShadow string
 * - CSS-only properties (cursor, visibility, grid*, etc.) → empty string
 */
export declare function mapNativeStyleToExtended(rnStyle: Record<string, unknown> | undefined | null): ExtendedComputedStyles;
/**
 * Produce ElementDesignData for a single native element.
 */
export declare function getNativeElementDesignData(id: string, label: string | undefined, type: string, rnStyle: Record<string, unknown> | undefined | null, layout: NativeLayout | null): ElementDesignData;
/**
 * Produce StateStyles[] for default/pressed/focused/disabled.
 * Only includes states that have actual overrides or the default state.
 */
export declare function captureNativeStateVariations(baseStyle: Record<string, unknown> | undefined | null, stateStyles?: {
    pressed?: Record<string, unknown>;
    focused?: Record<string, unknown>;
    disabled?: Record<string, unknown>;
}): StateStyles[];
/**
 * Capture a responsive snapshot.
 *
 * Platform limitation: RN cannot constrain screen width at runtime.
 * This returns a single snapshot at the current device dimensions.
 */
export declare function captureNativeResponsiveSnapshot(elements: Array<{
    id: string;
    label?: string;
    type: string;
    flatStyle?: Record<string, unknown>;
    layout: NativeLayout | null;
}>, screenDimensions: {
    width: number;
    height: number;
}): ResponsiveSnapshot[];
//# sourceMappingURL=design-inspector-native.d.ts.map