@digitalsingularity/agent-ui-chat-components
Version:
Reusable UI components for agent chat and management interfaces
40 lines (39 loc) • 1.61 kB
TypeScript
import React from 'react';
import { type AiAgent, type AiAgentDocument } from '../lib/useAgentManagement';
import { type AgentsSettingsUIComponents } from './AgentsSettings';
export interface AgentFormModalProps {
isOpen: boolean;
onClose: () => void;
title: string;
description: string;
agentData: Partial<AiAgent>;
setAgentData: React.Dispatch<React.SetStateAction<any>>;
documents: File[];
setDocuments: React.Dispatch<React.SetStateAction<File[]>>;
handleFileChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
removeFile: (index: number) => void;
isEditMode: boolean;
agentDocuments?: AiAgentDocument[] | null;
isLoadingDocuments: boolean;
handleDeleteDocument: (documentId: number) => void;
deleteDocumentMutation: any;
personalityOptions: string[];
customTag: string;
setCustomTag: React.Dispatch<React.SetStateAction<string>>;
handleAddTag: () => void;
handleRemoveTag: (tagToRemove: string) => void;
handleSelectTag: (tag: string) => void;
avatarFile?: File | null;
setAvatarFile: React.Dispatch<React.SetStateAction<File | null>>;
handleAvatarChange: (e: React.ChangeEvent<HTMLInputElement>) => void;
handleGenerateAvatar: () => void;
isGeneratingAvatar?: boolean;
avatarPrompt: string;
setAvatarPrompt: React.Dispatch<React.SetStateAction<string>>;
showSharingOption?: boolean;
onSubmit: () => void;
isSubmitting: boolean;
submitButtonText: string;
uiComponents: AgentsSettingsUIComponents;
}
export declare const AgentFormModal: React.FC<AgentFormModalProps>;