@revrag-ai/embed-react-native
Version:
A powerful React Native library for integrating AI-powered voice agents into mobile applications. Features real-time voice communication, intelligent speech processing, customizable UI components, and comprehensive event handling for building conversation
62 lines • 1.77 kB
TypeScript
/**
* @file index.d.ts
* @description TypeScript declarations for the Onwid React Native library.
*/
import { ConnectionState, Room } from 'livekit-client';
import { type RefObject } from 'react';
export declare function OnwidButton(): JSX.Element;
export interface UseInitializeProps {
apiKey: string;
embedUrl?: string;
}
export interface UseInitializeReturn {
isInitialized: boolean;
error: string | null;
}
export interface UseVoiceAgentReturn {
initializeVoiceAgent: () => Promise<void>;
isLoading: boolean;
error: string | null;
tokenDetails: TokenDetails | null;
endCall: () => Promise<void>;
room: Room;
roomRef: RefObject<Room>;
isMicMuted: boolean;
muteMic: () => void;
unmuteMic: () => void;
connectionState: ConnectionState;
cleanup: () => void;
}
export declare const useInitialize: (props: UseInitializeProps) => UseInitializeReturn;
export declare const useVoiceAgent: () => UseVoiceAgentReturn;
export interface ApiResponse<T> {
success: boolean;
data?: T;
error?: string;
}
export interface RegisterRequest {
apiKey: string;
embedUrl?: string;
}
export interface TokenDetails {
token: string;
expiresAt: number;
apiKey: string;
config: Record<string, unknown>;
server_url: string;
}
export interface UpdateDataRequest {
eventKey: string;
data: Record<string, unknown>;
}
export declare enum EventKeys {
USER_DATA = "user_data",
SCREEN_STATE = "state_data"
}
export declare class OnWid {
Event(eventKey: string, data: any): Promise<void>;
on(eventKey: EventKeys, callback: (data: any) => void): void;
}
export declare const onwid: OnWid;
export declare const registerAgent: any;
//# sourceMappingURL=index.types.d.ts.map