/** * React Query Mutation Hook for Creating Campaigns * Provides optimistic updates and cache invalidation */ import { createApiMutation } from '../../../hooks/factories'; import type { CampaignEntity, CreateCampaignDTO } from '@plyaz/types/campaign'; import type { ServiceOptions } from '@plyaz/types/api'; import type { EndpointsList } from '@/api/endpoints'; /** * Hook for creating campaigns * * @param serviceOptions - Service options (apiClient, apiConfig, updateConfigOptions) * @param mutationOptions - React Query mutation options * @returns React Query mutation result * * @example * ```typescript * // Basic usage * const { mutate, isPending } = useCreateCampaign(); * mutate(campaignData); * * // With service options * const { mutate } = useCreateCampaign({ * apiConfig: { timeout: 10000 }, * updateConfigOptions: { strategy: 'temporary' } * }); * * // With mutation options * const { mutate } = useCreateCampaign(undefined, { * onSuccess: (campaign) => navigate(`/campaigns/${campaign.id}`), * onError: (error) => toast.error(error.message) * }); * ``` */ export declare function useCreateCampaign(serviceOptions?: ServiceOptions, mutationOptions?: Parameters>>[1]): ReturnType>>; //# sourceMappingURL=useCreateCampaign.d.ts.map