import { default as z } from 'zod'; import { HttpError } from '../lib/http-error'; export declare const configSchema: z.ZodObject<{ APPWRITE_ENDPOINT: z.ZodString; AI_SERVICE_ENDPOINT: z.ZodString; REALTIME_URI: z.ZodString; APPWRITE_SITES_BASE_URL: z.ZodString; }, z.core.$strip>; export type ImagineTheme = "light" | "dark" | "system"; export type OnErrorCallbackParams = { traceId?: string; message: string; isChatError: boolean; } | null; export type ImagineCallbacks = { onProjectNameChange?: (name: string) => void; onAddDomain?: () => void | Promise; onManageDomains?: (primaryDomain?: string) => void | Promise; onUpgrade?: () => void | Promise; onError?: (params: OnErrorCallbackParams) => void | Promise; }; type ImagineConfigState = { config: z.infer | null; initialized: boolean; theme: ImagineTheme; callbacks: ImagineCallbacks | null; consoleSessionId: string; constructAppwriteSitesPreviewUrl: (projectId: string) => URL; }; type ImagineConfigStore = ImagineConfigState & { setTheme: (theme: ImagineTheme) => void; setError: (error: Error | HttpError | null) => void; }; export declare const imagineConfigStore: { (): ImagineConfigStore; (selector: (state: ImagineConfigStore) => U): U; } & import('zustand').StoreApi & { use: { config: () => { APPWRITE_ENDPOINT: string; AI_SERVICE_ENDPOINT: string; REALTIME_URI: string; APPWRITE_SITES_BASE_URL: string; } | null; initialized: () => boolean; theme: () => ImagineTheme; callbacks: () => ImagineCallbacks | null; consoleSessionId: () => string; constructAppwriteSitesPreviewUrl: () => (projectId: string) => URL; setTheme: () => (theme: ImagineTheme) => void; setError: () => (error: Error | HttpError | null) => void; }; }; export type InitImagineConfigConfig = z.infer; export type InitImagineConfigOptions = { consoleSessionId: string; initialTheme: ImagineTheme; callbacks?: ImagineCallbacks; }; export type InitImagineConfigFn = (config: InitImagineConfigConfig, options: InitImagineConfigOptions) => void; export declare const initImagineConfig: InitImagineConfigFn; export declare const useImagineConfig: () => { APPWRITE_ENDPOINT: string; AI_SERVICE_ENDPOINT: string; REALTIME_URI: string; APPWRITE_SITES_BASE_URL: string; } | null; export declare const changeTheme: (theme: ImagineTheme) => void; export declare const useImagineTheme: () => ImagineTheme; export {}; //# sourceMappingURL=imagine-config.store.d.ts.map