import type { AnyServiceLocals, ServiceExpress, ServiceLocals } from '../types.js';
import type { ConfigurationSchema } from '../config/schema.js';
export declare function serviceRepl<SLocals extends AnyServiceLocals = ServiceLocals<ConfigurationSchema>>(app: ServiceExpress<SLocals>, codepath: string | undefined, onExit: () => void): void;
type ReplAny = any;
/**
 * This decorator-like function can be applied to functions and the service will load and expose
 * the function when the repl is engaged.
 *
 * async function myFunction(app: MyService['App'], arg1: string, arg2: number) {
 * }
 * repl$(myFunction);
 *
 * or
 *
 * repl(myFunction, 'some.func.name');
 */
export declare function repl$<S extends ServiceExpress<ReplAny>, T extends (app: S, ...args: ReplAny[]) => ReplAny>(fn: T, name?: string): void;
export {};
