import { CommentCreateProps } from './types';
/**
 * ### CommentCreate Component
 *
 * @description
 * This is a **BaseApp** feature.
 *
 * If you believe your changes should be in the BaseApp, please read the **CONTRIBUTING.md** guide.
 *
 * This component reuses the `SocialInput` component, adding a layer of `GraphQL` mutation and `form` setup for creating comments.
 *
 * It integrates the `useCommentCreateMutation` mutation for submitting new comments and leverages `react-hook-form` and Zod for form validation.
 * Additionally, it supports replying to existing comments by utilizing the `useCommentReply` context to track the comment being replied to.
 *
 * ### Extending the Component
 * If you need to customize the form validation schema or the GraphQL query, this component serves as a base.
 * You can copy the structure and replace the query or validation logic to fit your specific requirements.
 *
 * #### Example:
 * ```ts
 * import { useForm } from 'react-hook-form';
 * import { zodResolver } from '@hookform/resolvers/zod';
 * import { myCustomSchema } from './myCustomSchema';
 * import { useMyCustomCreateMutation } from './myCustomMutation';
 * import SocialInput from './SocialInput';
 *
 * const MyCustomCommentCreate = ({ targetObjectId, profileId }) => {
 *   const form = useForm({
 *     resolver: zodResolver(myCustomSchema),
 *     defaultValues: { body: '' },
 *   });
 *   const [commitMutation, isMutationInFlight] = useMyCustomCreateMutation();
 *
 *   const onSubmit = (data) => {
 *     commitMutation({
 *       variables: { input: { body: data.body, targetObjectId, profileId } },
 *       onCompleted: (response) => {
 *         // handle response
 *         form.reset();
 *       },
 *       onError: console.error,
 *     });
 *   };
 *
 *   return (
 *     <SocialInput
 *       form={form}
 *       submit={onSubmit}
 *       isLoading={isMutationInFlight}
 *     />
 *   );
 * };
 * ```
 */
declare const CommentCreate: import("react").ForwardRefExoticComponent<CommentCreateProps & import("react").RefAttributes<HTMLInputElement>>;
export default CommentCreate;
//# sourceMappingURL=index.d.ts.map