/******************************************************************************** * Copyright (c) 2022-2023 STMicroelectronics and others. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0 which is available at * https://www.eclipse.org/legal/epl-2.0, or the MIT License which is * available at https://opensource.org/licenses/MIT. * * SPDX-License-Identifier: EPL-2.0 OR MIT *******************************************************************************/ import { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; import WebSocket from 'isomorphic-ws'; import URI from 'urijs'; import { ServerConfiguration, SubscriptionOptions } from './model-server-client-api-v1'; import { Format, ModelServerClientApiV2, ModelUpdateResult, PatchOrCommand } from './model-server-client-api-v2'; import { MessageDataMapper, Model, ModelServerMessage } from './model-server-message'; import { Diagnostic } from './model/diagnostic'; import { SubscriptionListener } from './subscription-listener'; import { AnyObject, TypeGuard } from './utils/type-util'; /** * A client to interact with a model server. */ export declare class ModelServerClientV2 implements ModelServerClientApiV2 { protected restClient: AxiosInstance; protected openSockets: Map; protected _baseUrl: URI; protected defaultFormat: Format; initialize(baseUrl: URI, defaultFormat?: Format): void | Promise; protected getAxiosConfig(baseURL: URI): AxiosRequestConfig | undefined; get(modeluri: URI, format?: Format): Promise; get(modeluri: URI, typeGuard: TypeGuard, format?: Format): Promise; getAll(): Promise; getAll(typeGuard: TypeGuard): Promise[]>; getAll(format: Format): Promise[]>; getModelUris(): Promise; getElementById(modeluri: URI, elementid: string, format?: Format): Promise; getElementById(modeluri: URI, elementid: string, typeGuard: TypeGuard): Promise; getElementByName(modeluri: URI, elementname: string, format?: Format): Promise; getElementByName(modeluri: URI, elementname: string, typeGuard: TypeGuard, format?: Format): Promise; create(modeluri: URI, model: AnyObject | string, format?: Format): Promise; create(modeluri: URI, model: AnyObject | string, typeGuard: TypeGuard, format?: Format): Promise; update(modeluri: URI, model: AnyObject | string, format?: Format): Promise; update(modeluri: URI, model: string | string, typeGuard: TypeGuard, format?: Format): Promise; delete(modeluri: URI): Promise; close(modeluri: URI): Promise; save(modeluri: URI): Promise; saveAll(): Promise; validate(modeluri: URI): Promise; getValidationConstraints(modeluri: URI): Promise; getTypeSchema(modeluri: URI): Promise; getUiSchema(schemaname: string): Promise; configureServer(configuration: ServerConfiguration): Promise; ping(): Promise; edit(modeluri: URI, patchOrCommand: PatchOrCommand, format?: string): Promise; undo(modeluri: URI): Promise; redo(modeluri: URI): Promise; send(modeluri: URI, message: ModelServerMessage): void; subscribe(modeluri: URI, listener: SubscriptionListener, options?: SubscriptionOptions): SubscriptionListener; unsubscribe(modeluri: URI): void; protected createSubscriptionPath(modeluri: URI, options: SubscriptionOptions): URI; protected doSubscribe(listener: SubscriptionListener, modeluri: URI, path: URI): void; protected isSocketOpen(modeluri: URI): boolean; protected process(request: Promise>, mapper: MessageDataMapper): Promise; } //# sourceMappingURL=model-server-client-v2.d.ts.map