import { LiveSheetsClient, SheetRow, SheetMetadata } from './index';
export interface UseLiveSheetsOptions {
    autoConnect?: boolean;
    autoLoadData?: boolean;
    onAuthSuccess?: () => void;
    onAuthError?: (error: Error) => void;
    onDataLoaded?: (data: SheetRow[]) => void;
    backendUrl?: string;
}
export interface UseLiveSheetsReturn {
    isAuthenticated: boolean;
    isConnecting: boolean;
    hasSheet: boolean;
    isSelectingSheet: boolean;
    sheetMetadata: SheetMetadata | null;
    data: SheetRow[];
    isLoading: boolean;
    error: Error | null;
    connect: () => void;
    disconnect: () => void;
    selectSheet: () => Promise<void>;
    refresh: () => Promise<void>;
    client: LiveSheetsClient | null;
}
/**
 * React Hook for LiveSheets integration
 *
 * @example
 * ```tsx
 * import { useLiveSheets } from 'livesheets-sdk/react';
 *
 * function MyComponent() {
 *   const {
 *     isAuthenticated,
 *     data,
 *     connect,
 *     selectSheet
 *   } = useLiveSheets();
 *
 *   if (!isAuthenticated) {
 *     return <button onClick={connect}>Connect Google Sheets</button>;
 *   }
 *
 *   return <div>{data.length} rows loaded</div>;
 * }
 * ```
 */
export declare function useLiveSheets(options?: UseLiveSheetsOptions): UseLiveSheetsReturn;
/**
 * Simple hook for just reading sheet data
 *
 * @example
 * ```tsx
 * const { data, loading, error } = useSheetData();
 * ```
 */
export declare function useSheetData(jwt?: string): {
    data: SheetRow[];
    loading: boolean;
    error: Error | null;
};
export * from './index';
