/** * React Query Mutation Hook for Generating Documents * Provides mutation state for document generation */ import { createApiMutation } from '../../../hooks/factories'; import type { GenerateDocumentRequest, GenerateDocumentResponse, ServiceOptions } from '@plyaz/types/api'; import type { ErrorResponse } from '@plyaz/types/errors'; import type { EndpointsList } from '@/api/endpoints'; /** * Hook for generating documents * * @param serviceOptions - Service options (apiClient, apiConfig, updateConfigOptions) * @param mutationOptions - React Query mutation options * @returns React Query mutation result * * @example * ```typescript * const { mutate, isPending, data } = useGenerateDocument(); * * const handleGenerate = () => { * mutate({ * templateId: 'invoices/standard', * templateData: { invoiceNumber: 'INV-001', total: 100 }, * outputFormat: 'pdf', * }, { * onSuccess: (result) => { * // Convert base64 to blob and download * const blob = new Blob([ * Uint8Array.from(atob(result.buffer), c => c.charCodeAt(0)) * ], { type: 'application/pdf' }); * const url = URL.createObjectURL(blob); * window.open(url); * } * }); * }; * ``` */ export declare function useGenerateDocument(serviceOptions?: ServiceOptions, mutationOptions?: Parameters>>[1]): ReturnType>>; //# sourceMappingURL=useGenerateDocument.d.ts.map