solver-sdk
Version:
SDK для интеграции с Code Solver Backend API
64 lines • 2.4 kB
TypeScript
import { HttpClient } from '../utils/http-client.js';
/**
* API для работы с файловой системой через WebSocket
*/
export declare class FilesystemApi {
/** HTTP клиент */
private readonly httpClient;
/** WebSocket клиент */
private wsClient;
/** Родительский SDK */
private parentSdk;
/** Активный ID проекта */
private activeProjectId;
/**
* Создает новый API для работы с файловой системой
* @param httpClient HTTP клиент
*/
constructor(httpClient: HttpClient);
/**
* Устанавливает родительский SDK
* @param sdk Родительский SDK
*/
setParent(sdk: any): void;
/**
* Подключается к WebSocket для файловой системы
* @param {string} projectId ID проекта
* @returns {Promise<boolean>} Результат подключения
*/
connectWebSocket(projectId: string): Promise<boolean>;
/**
* Подключается к проекту через WebSocket (альтернативный синтаксис)
* @param projectId ID проекта
* @returns Результат подключения
*/
connectToProject(projectId: string): Promise<boolean>;
/**
* Отключается от WebSocket
* @returns {Promise<void>}
*/
disconnectWebSocket(): Promise<void>;
/**
* Проверяет, подключен ли WebSocket
* @returns {boolean} Состояние подключения
*/
isWebSocketConnected(): boolean;
/**
* Получает активный ID проекта
* @returns ID проекта или null
*/
getActiveProjectId(): string | null;
/**
* Подписывается на событие через WebSocket
* @param event Название события
* @param callback Функция обратного вызова
*/
on(event: string, callback: Function): void;
/**
* Отправляет событие через WebSocket
* @param event Название события
* @param data Данные для отправки
*/
emitSocketEvent(event: string, data: any): void;
}
//# sourceMappingURL=filesystem-api.d.ts.map