import http from 'node:http'; import express from 'express'; import type { Plugin } from '../types'; import { RegistryOptions } from './domain/options-sanitiser'; export { RegistryOptions }; export default function registry(inputOptions: RegistryOptions): { close: (callback: (err?: Error | undefined | string) => void) => void | http.Server; on: ; requestVersion: string; status: number; error: Error; }; 'component-published': { componentName: string; componentVersion: string; packageJson: import("../types").Component; componentFolder: string; user?: string; }; }>(eventName: T_1, listener: (data: { error: { code: string; message: string; }; start: unknown; 'cache-poll': number; request: import("./domain/events-handler").RequestData; 'component-retrieved': { headers: http.IncomingHttpHeaders; name: string; parameters: http.IncomingHttpHeaders; requestVersion: string; duration: number; }; 'data-provider-error': { name: string; version: string; parameters: Record; requestVersion: string; status: number; error: Error; }; 'component-published': { componentName: string; componentVersion: string; packageJson: import("../types").Component; componentFolder: string; user?: string; }; }[T_1]) => void) => void; register: (plugin: Plugin, callback?: (...args: any[]) => void) => void; start: (callback: (err: unknown, data?: { app: express.Express; server: http.Server; }) => void) => Promise; app: express.Express; };