import { ClassValue } from 'clsx';

declare function cn(...inputs: ClassValue[]): string;

declare function uuid(): string;

interface UseDebounceReturn<T> {
    debouncedValue: T;
    cancel: () => void;
    isPending: () => boolean;
}
declare function useDebounce<T>(value: T, delay?: number): UseDebounceReturn<T>;

declare function useNetwork(): {
    isOnline: boolean;
};

export { cn, useDebounce, useNetwork, uuid };
