import { Injector } from "../injection/injector"; import { Type } from "../type"; import { AppServiceInfoRegistry } from "./appServiceInfoRegistry"; import { Priority } from "./appServiceMetadata"; /** * Marks a class as being an application service. Its closest base registered as service contract is * considered to be its contract. * * @export * @param {number|Priority} [overridePriority=Priority.Normal] Optional. The override priority. * @param {number|Priority} [processingPriority=Priority.Normal] Optional. The processing priority. * @param {string} [serviceName] Optional. The service name. * @returns A function. */ export declare function AppService({ overridePriority, processingPriority, serviceName, provider, registry }?: { overridePriority?: number | Priority; processingPriority?: number | Priority; serviceName?: string; provider?: ((c: Injector) => any) | {}; registry?: AppServiceInfoRegistry; }): (type: Type) => void;