import { AuthenticationStrategy, ServicePluginContract, ServicePluginDefinition } from '@wix/sdk-types'; import { Emitter } from './nanoevents.js'; export declare const isServicePluginModule: (val: any) => val is ServicePluginDefinition; export type UnknownServicePluginResponse = unknown; type ServicePluginRequestMetadata = { instanceId: string; appExtensionType: string; }; type ServicePluginRequest = { metadata: ServicePluginRequestMetadata; request: unknown; }; export type ServicePluginsClient = Emitter<{ registered: (servicePluginDefinition: ServicePluginDefinition) => void; }> & { getRegisteredServicePlugins(): Map; implementation: ServicePluginContract; }[]>; process(request: { url: string; body: string; }): Promise; processRequest(request: Request): Promise; parseJWT(jwt: string): Promise; parseRequest(request: Request): Promise; executeHandler(servicePluginRequest: ServicePluginRequest, url: string): Promise; }; export declare function servicePluginsModules(authStrategy: AuthenticationStrategy): { initModule>(servicePluginDefinition: T): (implementation: T["__contract"]) => void; client: ServicePluginsClient; }; export {};