import type { Application } from "express";
import { IWebServiceEndpoint } from "./i-web-service-endpoint";
import { ICactusPlugin } from "../i-cactus-plugin";
import type { Server as SocketIoServer } from "socket.io";
export interface IPluginWebService extends ICactusPlugin {
    getOrCreateWebServices(): Promise<IWebServiceEndpoint[]>;
    registerWebServices(expressApp: Application, wsApi: SocketIoServer): Promise<IWebServiceEndpoint[]>;
    shutdown(): Promise<void>;
    getOpenApiSpec(): unknown;
}
export declare function isIPluginWebService(x: unknown): x is IPluginWebService;
