/**
* AgentKitProvider — React context provider that wraps the app to enable AgentKit.
*
* This is the main integration point for developers. Wrap your app with this
* provider and the library handles everything: element introspection, command
* server, and action execution.
*
* Usage:
* ```tsx
* import { AgentKitProvider } from 'react-native-agentkit';
*
* function App() {
* return (
*
*
*
* );
* }
* ```
*/
import React from 'react';
import type { ElementInfo, ElementHandlers } from './types';
export interface AgentKitContextValue {
/** Whether the bridge server is currently running */
isRunning: boolean;
/** Whether the relay transport is connected */
isRelayConnected: boolean;
/** Number of registered elements */
elementCount: number;
/** Manually register an element */
registerElement: (id: string, info: Omit, ref: React.RefObject, handlers?: ElementHandlers) => string;
/** Manually unregister an element */
unregisterElement: (id: string) => void;
/** Force a re-scan of the component tree */
rescan: () => void;
}
export declare const AgentKitContext: React.Context;
export interface AgentKitProviderProps {
children: React.ReactNode;
/** WebSocket server port (default: 8347) */
port?: number;
/** Enable debug logging (default: false) */
debug?: boolean;
/** Element scan interval in ms (default: 1000) */
scanInterval?: number;
/** Include non-interactive elements in scans (default: false) */
includeNonInteractive?: boolean;
/** Auto-include screen state in command responses (default: true) */
includeScreenState?: boolean;
/** Disable the bridge entirely (e.g. in production) */
enabled?: boolean;
/** Cloud relay server URL for production (e.g. "ws://relay.example.com:8347") */
relayUrl?: string;
/** Channel ID for relay pairing (default: "default") */
channelId?: string;
/** Shared secret for relay channel authentication */
channelSecret?: string;
/** Navigation container ref for back navigation support */
navigationRef?: React.RefObject;
}
export declare function getNavigationRef(): React.RefObject | null;
export declare function AgentKitProvider({ children, port, debug, scanInterval, includeNonInteractive, includeScreenState, enabled, relayUrl, channelId, channelSecret, navigationRef, }: AgentKitProviderProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=AgentKitProvider.d.ts.map