/** * Label Studio API Client * Provides methods to interact with Label Studio REST API */ export declare class LabelStudioApiClient { private client; private serverUrl; private apiToken; constructor(); private ensureInitialized; /** * Get all projects */ getProjects(): Promise; /** * Get project by ID */ getProject(projectId: number): Promise; /** * Create new project */ createProject(data: { title: string; description?: string; label_config: string; expert_instruction?: string; }): Promise; /** * Update project */ updateProject(projectId: number, data: any): Promise; /** * Delete project */ deleteProject(projectId: number): Promise; /** * Get tasks for a project */ getTasks(projectId: number, params?: { page?: number; page_size?: number; }): Promise; /** * Get single task */ getTask(taskId: number): Promise; /** * Create task */ createTask(projectId: number, data: any): Promise; /** * Import tasks in bulk */ importTasks(projectId: number, tasks: any[]): Promise; /** * Delete task */ deleteTask(taskId: number): Promise; /** * Get annotations for a task */ getAnnotations(taskId: number): Promise; /** * Create annotation */ createAnnotation(taskId: number, annotation: any): Promise; /** * Update annotation */ updateAnnotation(annotationId: number, data: any): Promise; /** * Delete annotation */ deleteAnnotation(annotationId: number): Promise; /** * Get all predictions for a task */ getPredictions(taskId: number): Promise; /** * Get predictions for a project */ getProjectPredictions(projectId: number): Promise; /** * Get single prediction by ID */ getPrediction(predictionId: number): Promise; /** * Create a prediction for a task */ createPrediction(data: { task: number; result: any[]; score?: number; model_version?: string; }): Promise; /** * Create predictions in bulk */ createPredictions(predictions: Array<{ task: number; result: any[]; score?: number; model_version?: string; }>): Promise; /** * Update prediction */ updatePrediction(predictionId: number, data: any): Promise; /** * Delete prediction */ deletePrediction(predictionId: number): Promise; /** * Import predictions for a project * This is useful for bulk importing AI model predictions */ importPredictions(projectId: number, predictions: any[]): Promise; /** * Export annotations */ exportAnnotations(projectId: number, format?: 'JSON' | 'JSON_MIN' | 'CSV' | 'TSV' | 'CONLL2003' | 'COCO' | 'VOC' | 'YOLO'): Promise; /** * Get export files */ getExportFiles(projectId: number): Promise; /** * Get ML backends for project */ getMLBackends(projectId: number): Promise; /** * Add ML backend to project */ addMLBackend(data: { project: number; url: string; title: string; is_interactive?: boolean; }): Promise; /** * Delete ML backend */ deleteMLBackend(mlBackendId: number): Promise; /** * Trigger predictions for tasks */ triggerPredictions(projectId: number, taskIds?: number[]): Promise; /** * Train ML model */ trainModel(mlBackendId: number): Promise; /** * Get project statistics */ getProjectStats(projectId: number): Promise; /** * Get annotator statistics */ getAnnotatorStats(projectId: number): Promise; /** * Create webhook */ createWebhook(data: { project: number; url: string; send_payload?: boolean; send_for_all_actions?: boolean; headers?: { [key: string]: string; }; }): Promise; /** * Get webhooks for project */ getWebhooks(projectId: number): Promise; /** * Delete webhook */ deleteWebhook(webhookId: number): Promise; } export declare const labelStudioApi: LabelStudioApiClient;