UNPKG

@subscribe.dev/react

Version:

React hooks and components for SubscribeDev - provides context and hooks for managing AI predictions with billing and rate limiting

104 lines (83 loc) 3.17 kB
import { default as default_2 } from 'react'; import { JSX as JSX_2 } from 'react/jsx-runtime'; import { QueryClient } from '@tanstack/react-query'; import { SubscribeDevClient } from '@subscribe.dev/client'; export declare function SignIn(props: SignInProps): JSX_2.Element; export declare function SignInButton(props: SignInButtonProps): JSX_2.Element; export declare interface SignInButtonProps { [key: string]: any; } export declare interface SignInProps { [key: string]: any; } declare interface SubscribeDevContextValue { client: SubscribeDevClient | null; token: string | null; isSignedIn: boolean; queryClient: QueryClient; subscriptionModalUrl: string | null; setSubscriptionModalUrl: (url: string | null) => void; projectToken: string; } export declare function SubscribeDevProvider({ children, projectToken, clerkPublishableKey, baseUrl }: SubscribeDevProviderProps): JSX_2.Element; declare interface SubscribeDevProviderProps { children: default_2.ReactNode; projectToken: string; clerkPublishableKey: string; baseUrl?: string; } export declare function syncSession(): () => Promise<void>; declare type SyncStatus = 'local' | 'syncing' | 'synced' | 'error'; export declare function useClerkAuth(): { token: string | null; isSignedIn: boolean | undefined; }; export declare function UserButton(props: UserButtonProps): JSX_2.Element; export declare interface UserButtonProps { [key: string]: any; } export declare function useStorage(): { get: (key: string) => Promise<string | null>; set: (key: string, value: string) => Promise<void>; remove: (key: string) => Promise<void>; }; export declare function useSubscribeDev(): { client: SubscribeDevClient | null; token: string | null; isSignedIn: boolean; subscribe: () => void; isSubscribed: any; subscriptionStatus: any; subscriptionLoading: boolean; refreshSubscriptionStatus: () => Promise<void>; useStorage: typeof useSubscribeDevSessionStorage; usage: { allocatedCredits: number; usedCredits: number; remainingCredits: number; loading: boolean; error: string | null; refreshUsage: () => Promise<void>; }; }; export declare function useSubscribeDevAuth(): { isSignedIn: boolean; token: string | null; isSubscribed: any; subscribe: () => void; subscriptionStatus: any; subscriptionLoading: boolean; refreshSubscriptionStatus: () => Promise<void>; }; export declare function useSubscribeDevProvider(): SubscribeDevContextValue; declare function useSubscribeDevSessionStorage<T>(key: string, initialValue: T): [T, (value: T) => void, SyncStatus]; export declare function useSubscribeDevStorage<T>(key: string, initialValue: T): [T, (value: T) => void, SyncStatus]; export declare function useUsage(): { allocatedCredits: number; usedCredits: number; remainingCredits: number; loading: boolean; error: string | null; refreshUsage: () => Promise<void>; }; export { }