import React, { ReactElement } from 'react'; import { CSQMaskProps } from '../types/types'; type NamableConstructor
= React.JSXElementConstructor
& { displayName?: string; name?: string; }; /** * Extracts React Native version from Platform constants */ export declare const extractReactNativeVersion: (Platform: typeof import("react-native").Platform | undefined) => string | null; /** * Initialization of components */ export declare const initComponents: () => void; /** * Validates if children is valid and it is only one */ export declare const hasOnlyOneChild: (children?: ReactElement) => boolean; /** * Merges two functions, useful when cloning a child and you want to make sure * that the user callback is called * @param internalCallback * @param userCallback * @returns merged callback */ export declare const mergeCallbacks: (internalCallback: (...args: any[]) => void, userCallback?: (...args: any[]) => void) => (...args: any[]) => void; /** * Gets the display name of a React component * @param WrappedComponent - The component to get the display name from * @param defaultName - The default name to use if no display name is found * @returns The display name of the component */ export declare const getComponentDisplayName:
(WrappedComponent: NamableConstructor
, defaultName?: string) => string; /** * Determines HeapIgnore props based on masking configuration * When ignoreTextOnly is true, returns fixed props that capture hierarchy but ignore text * Otherwise, returns props based on explicit configuration with false defaults * @param maskOptions - The CSQMask options * @returns HeapIgnore props configuration */ export declare const getHeapIgnoreProps: (maskOptions?: CSQMaskProps) => { allowInnerHierarchy: boolean; allowProps: boolean; allowInteraction: boolean; allowText: boolean; allowAccessibilityLabel: boolean; }; export {};