@eclipse-emfcloud/model-service-theia
Version:
Model service Theia
29 lines • 1.73 kB
TypeScript
import { Container, interfaces } from '@theia/core/shared/inversify';
import { ModelAccessorBusClient, ModelAccessorBusProtocol, ProviderChangeSubscriptionToken } from '../../common';
import { FrontendModelAccessorBusSubscriber } from '../frontend-model-accessor-bus-subscriber';
/**
* All that we need for testing are the subscription-related methods and `get()`.
*/
export declare class FakeModelAccessorBusProtocol implements ModelAccessorBusProtocol {
protected nextSubscriptionId: number;
protected readonly subscriptions: Map<number, ProviderChangeSubscriptionToken>;
protected client: ModelAccessorBusClient | undefined;
protected readonly pendingSubs: Promise<ProviderChangeSubscriptionToken>[];
subscribe(_context: string, accessorId: string): Promise<ProviderChangeSubscriptionToken>;
closeSubscription(token: ProviderChangeSubscriptionToken): void;
/**
* (fake) get function that returns the first parameter given
*
* @param _context not used
* @param _accessorId not used
* @param parameters a list of parameters (can be empty)
* @returns the first parameter given
*/
get<T>(_context: string, _accessorId: string, ...parameters: unknown[]): Promise<T | undefined>;
setClient(client: ModelAccessorBusClient): void;
get pendingSubsReady(): Promise<void>;
protected lookupSubs(accessorId: string): ProviderChangeSubscriptionToken[];
}
export declare function bindFakeModelAccessorBusProtocol(binder: interfaces.Bind | Container): void;
export declare function connectClient(modelAccessorBus: FakeModelAccessorBusProtocol, subscriber: FrontendModelAccessorBusSubscriber): void;
//# sourceMappingURL=fake-model-accessor-bus-protocol.d.ts.map