import type { ReactNode } from 'react';
import { stop, identify, getSessionId, isRecording, getStatus, pause, resume } from './index';
import type { SDKConfig } from './types/events';
/**
* React provider that initializes SupaStory session recording.
*
* Place this at the root of your app (e.g., layout or App component).
* Recording starts automatically and stops when the component unmounts.
*
* @example
* ```tsx
* import { SupaStoryProvider } from '@supastory/capture-sdk/react';
*
* export default function RootLayout({ children }) {
* return (
*
* {children}
*
* );
* }
* ```
*/
export declare function SupaStoryProvider({ children, config, }: {
children: ReactNode;
config: SDKConfig;
}): ReactNode;
/**
* Convenience hook to access SupaStory SDK methods from any React component.
*
* The SDK must be initialized (via `SupaStoryProvider` or `init()`) before
* calling these methods.
*
* @example
* ```tsx
* import { useSupaStory } from '@supastory/capture-sdk/react';
*
* function LoginButton() {
* const { identify } = useSupaStory();
*
* const handleLogin = (user) => {
* identify(user.id, { email: user.email });
* };
*
* return ;
* }
* ```
*/
export declare function useSupaStory(): {
identify: typeof identify;
getSessionId: typeof getSessionId;
isRecording: typeof isRecording;
getStatus: typeof getStatus;
pause: typeof pause;
resume: typeof resume;
stop: typeof stop;
};