import type { MessageBus } from "./MessageBus.js"; import type { Operation } from "./Operation.js"; /** * A registry of well-known operations. */ export declare abstract class OperationRegistry { protected readonly _messages: MessageBus; /** * Operation name prefix that will be added to all operations in this * registry. */ protected abstract readonly _prefix: string; /** * Creates a registry. * * @param messages The message bus to use. */ constructor(messages: MessageBus); /** * Returns the operation corresponding to the given unqualified name. * * @param name The name of the operation without the common prefix * associated with this registry. */ protected _get(name: string): Operation; }