@visionfi/desktop-sdk
Version:
Desktop SDK for VisionFI Cloud Run services with Azure AD authentication
65 lines (64 loc) • 2.29 kB
TypeScript
/**
* VisionFI Desktop Client
* Copyright (c) 2024-2025 VisionFI. All Rights Reserved.
*/
import { EventEmitter } from 'eventemitter3';
import { PackageInfo, CreatePackageOptions, CreatePackageResponse, ListPackagesOptions, ListPackagesResponse, AnalyzeDocumentOptions, AnalysisJob, AnalysisResult } from '@visionfi/core';
import { VisionFIDesktopConfig, ConnectionStatus, UploadProgress } from './types.js';
import { PackageClient, AdminClient } from './clients/index.js';
/**
* Desktop client for VisionFI Cloud Run services
* Provides Azure AD authentication and desktop-specific features
*/
export declare class VisionFIDesktop extends EventEmitter {
private config;
private apiClient;
private connectionStatus;
readonly packages: PackageClient;
readonly admin: AdminClient;
constructor(config: VisionFIDesktopConfig);
/**
* Connect to the Cloud Run service
*/
connect(): Promise<void>;
/**
* Disconnect from the service
*/
disconnect(): Promise<void>;
/**
* Get current connection status
*/
getConnectionStatus(): ConnectionStatus;
/**
* Create a new package
* @deprecated Use client.packages.create() instead
*/
createPackage(options: CreatePackageOptions): Promise<CreatePackageResponse>;
/**
* List packages with optional filtering
* @deprecated Use client.packages.list() instead
*/
listPackages(options?: ListPackagesOptions): Promise<ListPackagesResponse>;
/**
* Get a specific package by ID
* @deprecated Use client.packages.get() instead
*/
getPackage(packageId: string): Promise<PackageInfo>;
/**
* Analyze a document with upload progress tracking
*/
analyzeDocument(fileBuffer: Buffer, options: AnalyzeDocumentOptions, onProgress?: (progress: UploadProgress) => void): Promise<AnalysisJob>;
/**
* Get analysis results
*/
getResults(jobUuid: string, pollInterval?: number, maxAttempts?: number): Promise<AnalysisResult>;
/**
* Get available product types
* @deprecated Use client.admin.getProductTypes() instead
*/
getProductTypes(): Promise<import("@visionfi/core").ProductTypesResponse>;
/**
* Handle errors consistently
*/
private handleError;
}