hunk.code_window: "use client";
   import { useFeatureIsOn } from "@growthbook/growthbook-react";
   import { useTranslation } from "react-i18next";
   import { PiPaperclipFill } from "react-icons/pi";
   import Button from "@/lib/components/ui/Button";
   import { useKnowledgeToFeedContext } from "@/lib/context/KnowledgeToFeedProvider/hooks/useKnowledgeToFeedContext";
  
hunk.labels: keep replace keep keep keep keep keep
hunk.file_path: frontend/app/chat/[chatId]/components/ActionsBar/components/ChatInput/index.tsx
hunk.type: replace
file: import { useAxios } from "@/lib/hooks";
  
  import {
    addBrainSubscriptions,
    createBrain,
    deleteBrain,
    getBrain,
    getBrainDocuments,
    getBrains,
    getBrainUsers,
    getDefaultBrain,
    getPublicBrains,
    setAsDefaultBrain,
    Subscription,
    updateBrain,
    updateBrainAccess,
  } from "./brain";
  import {
    CreateBrainInput,
    SubscriptionUpdatableProperties,
    UpdateBrainInput,
  } from "./types";
  
  // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
  export const useBrainApi = () => {
    const { axiosInstance } = useAxios();
  
    return {
      getBrainDocuments: async (brainId: string) =>
        getBrainDocuments(brainId, axiosInstance),
      createBrain: async (brain: CreateBrainInput) =>
        createBrain(brain, axiosInstance),
      deleteBrain: async (id: string) => deleteBrain(id, axiosInstance),
      getDefaultBrain: async () => getDefaultBrain(axiosInstance),
      getBrains: async () => getBrains(axiosInstance),
      getBrain: async (id: string) => getBrain(id, axiosInstance),
      addBrainSubscriptions: async (
        brainId: string,
        subscriptions: Subscription[]
      ) => addBrainSubscriptions(brainId, subscriptions, axiosInstance),
      getBrainUsers: async (brainId: string) =>
        getBrainUsers(brainId, axiosInstance),
      updateBrainAccess: async (
        brainId: string,
        userEmail: string,
        subscription: SubscriptionUpdatableProperties
      ) => updateBrainAccess(brainId, userEmail, subscription, axiosInstance),
      setAsDefaultBrain: async (brainId: string) =>
        setAsDefaultBrain(brainId, axiosInstance),
      updateBrain: async (brainId: string, brain: UpdateBrainInput) =>
        updateBrain(brainId, brain, axiosInstance),
      getPublicBrains: async () => getPublicBrains(axiosInstance),
    };
  };
  