import { PropsWithChildren } from 'react';
import { FingerprintJsProAgentParams } from './types.mjs';
import '@fingerprintjs/fingerprintjs-pro-spa';

/**
 * Provides the FingerprintJsProContext to its child components.
 *
 * @example
 * ```jsx
 * <FingerprintJsProProvider
 *     apiKey: 'your-fpjs-public-api-key'
 *     requestOptions: { timeout: 5000 }  // Optional: Set a custom timeout in milliseconds
 * >
 *   <MyApp />
 * </FingerprintJsProProvider>
 * ```
 * @group Hooks approach
 */
declare function FingerprintJsProProvider({ children, ...fingerprintJsProAgentParams }: PropsWithChildren<FingerprintJsProAgentParams>): JSX.Element;

export { FingerprintJsProProvider };
