UNPKG

@theia/core

Version:

Theia is a cloud & desktop IDE framework implemented in TypeScript.

27 lines 1.52 kB
import { Event, RpcProxy, Channel, RpcProxyFactory } from '../../common'; import { ServiceConnectionProvider } from '../../browser/messaging/service-connection-provider'; import { ILogger } from '../../common/logger'; import { ConnectionSource } from '../../browser/messaging/connection-source'; export declare class FrontendOnlyConnectionSource implements ConnectionSource { onConnectionDidOpen: Event<Channel>; } /** * Proxy factory for services without a frontend-only implementation. There is no backend, * so no channel will ever open and requests would otherwise be queued forever, blocking * any caller that awaits the result, e.g. during application startup. * Instead, requests fail immediately and notifications (fire-and-forget) resolve silently. */ export declare class FrontendOnlyRpcProxyFactory<T extends object> extends RpcProxyFactory<T> { protected readonly path: string; constructor(path: string, target?: object); get(target: T, p: PropertyKey, receiver: unknown): unknown; } export declare class FrontendOnlyServiceConnectionProvider extends ServiceConnectionProvider { protected readonly logger: ILogger; onSocketDidOpen: Event<any>; onSocketDidClose: Event<any>; onIncomingMessageActivity: Event<any>; createProxy<T extends object>(path: string, target?: object): RpcProxy<T>; listen(path: string, handler: ServiceConnectionProvider.ConnectionHandler, reconnect: boolean): void; } //# sourceMappingURL=frontend-only-service-connection-provider.d.ts.map