import { ClassTypeWithInstance, InjectionToken, InjectionTokenSchemaType } from "../token/injection-token.mjs"; import { InjectableScope } from "../enums/injectable-scope.enum.mjs"; import { Factorable, FactorableWithArgs } from "../interfaces/factory.interface.mjs"; import { Registry } from "../token/registry.mjs"; //#region src/decorators/factory.decorator.d.mts interface FactoryOptions { scope?: InjectableScope; token?: InjectionToken; registry?: Registry; priority?: number; } declare function Factory(options?: { scope?: InjectableScope; registry?: Registry; priority?: number; }): >>(target: T, context?: ClassDecoratorContext) => T; declare function Factory(options: { scope?: InjectableScope; token: InjectionToken; registry?: Registry; priority?: number; }): R extends undefined ? never : S extends InjectionTokenSchemaType ? >>(target: T, context?: ClassDecoratorContext) => T : S extends undefined ? >>(target: T, context?: ClassDecoratorContext) => T : never; //#endregion export { Factory, FactoryOptions }; //# sourceMappingURL=factory.decorator.d.mts.map