import type { ForYouContentPreset } from '../api/forYouFetch'; import type { ArtGeneratorExample, ArtGeneratorCollectionCategory, ArtGeneratorStyle } from '../../ArtGenerator'; export interface ArtGeneratorHookConfig { generateBaseUrl: string; apiBaseUrl?: string; apiUrl?: string; examplesTags?: string | string[]; collectionsTags?: string | string[]; examplesContents?: ForYouContentPreset[]; collectionsContents?: ForYouContentPreset[]; locale?: string; website_id?: string; pollInterval?: number; maxPollTime?: number; userId?: number; userLogin?: number; wid?: string; } export interface UseArtGeneratorOptions { config?: Partial; styles?: ArtGeneratorStyle[]; examples?: ArtGeneratorExample[]; collections?: ArtGeneratorCollectionCategory[]; onGenerationComplete?: (imageUrl: string, prompt: string) => void; onDownload?: (imageUrl: string) => void; onError?: (error: string) => void; } export declare function useArtGenerator({ config, styles, examples: examplesProp, collections: collectionsProp, onGenerationComplete, onDownload, onError, }?: UseArtGeneratorOptions): { examples: ArtGeneratorExample[]; collections: ArtGeneratorCollectionCategory[]; styles: ArtGeneratorStyle[]; loadingExamples: boolean; loadingCollections: boolean; prompt: string; setPrompt: import("react").Dispatch>; selectedStyle: ArtGeneratorStyle; setSelectedStyle: import("react").Dispatch>; isGenerating: boolean; generatedImageUrl: string | null; progressPercent: number | null; queuePosition: number | null; genError: string | null; generate: (userPrompt: string, style: ArtGeneratorStyle) => Promise; reset: () => void; download: (imageUrl: string) => Promise; }; //# sourceMappingURL=useArtGenerator.d.ts.map