@ai-growth/nextjs
Version:
Seamlessly integrate Sanity CMS with Next.js applications for automated blog routing and rendering
33 lines • 1.16 kB
TypeScript
import { type ContentFetchOptions } from '../utils';
import type { CmsContent } from '../types';
export interface UseCmsContentOptions extends ContentFetchOptions {
contentType?: string;
initialData?: CmsContent | null;
enabled?: boolean;
suspense?: boolean;
staleTime?: number;
cacheTime?: number;
refetchOnWindowFocus?: boolean;
refetchOnReconnect?: boolean;
onSuccess?: (data: CmsContent) => void;
onError?: (error: Error) => void;
}
export interface UseCmsContentResult {
content: CmsContent | null;
isLoading: boolean;
isError: boolean;
error: Error | null;
isFetching: boolean;
isStale: boolean;
refetch: () => Promise<void>;
reset: () => void;
}
/**
* React hook for fetching CMS content by slug with comprehensive state management
*/
export declare function useCmsContent(slug: string | null, options?: UseCmsContentOptions): UseCmsContentResult;
/**
* React hook for fetching CMS content by ID
*/
export declare function useCmsContentById(id: string | null, options?: Omit<UseCmsContentOptions, 'contentType'>): UseCmsContentResult;
//# sourceMappingURL=useCmsContent.d.ts.map