@navios/di 0.1.7 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts ADDED
@@ -0,0 +1,435 @@
1
+ import { AnyZodObject, ZodOptional, ZodRecord, ZodType, z } from "zod";
2
+
3
+ //#region src/injection-token.d.mts
4
+ type ClassType = new (...args: any[]) => any;
5
+ type ClassTypeWithArgument<Arg> = new (arg: Arg) => any;
6
+ type ClassTypeWithOptionalArgument<Arg> = new (arg?: Arg) => any;
7
+ type ClassTypeWithInstance<T> = new (...args: any[]) => T;
8
+ type ClassTypeWithInstanceAndArgument<T, Arg> = new (arg: Arg) => T;
9
+ type ClassTypeWithInstanceAndOptionalArgument<T, Arg> = new (arg?: Arg) => T;
10
+ declare const Optional: unique symbol;
11
+ declare const Required: unique symbol;
12
+ type BaseInjectionTokenSchemaType = AnyZodObject | ZodRecord;
13
+ type OptionalInjectionTokenSchemaType = ZodOptional<AnyZodObject> | ZodOptional<ZodRecord>;
14
+ type InjectionTokenSchemaType = BaseInjectionTokenSchemaType | OptionalInjectionTokenSchemaType;
15
+ declare class InjectionToken<T, S extends InjectionTokenSchemaType | unknown = unknown, Required extends boolean = (S extends ZodOptional<AnyZodObject> ? false : S extends ZodOptional<ZodRecord> ? false : S extends AnyZodObject ? true : S extends ZodRecord ? true : false)> {
16
+ readonly name: string | symbol | ClassType;
17
+ readonly schema: AnyZodObject | undefined;
18
+ id: `${string}-${string}-${string}-${string}-${string}`;
19
+ private formattedName;
20
+ constructor(name: string | symbol | ClassType, schema: AnyZodObject | undefined);
21
+ static create<T extends ClassType>(name: T): InjectionToken<InstanceType<T>, undefined>;
22
+ static create<T extends ClassType, Schema extends InjectionTokenSchemaType>(name: T, schema: Schema): Schema['_def']['typeName'] extends 'ZodOptional' ? InjectionToken<InstanceType<T>, Schema, false> : InjectionToken<InstanceType<T>, Schema, true>;
23
+ static create<T>(name: string | symbol): InjectionToken<T, undefined>;
24
+ static create<T, Schema extends InjectionTokenSchemaType>(name: string | any, schema: Schema): InjectionToken<T, Schema>;
25
+ static bound<T, S extends InjectionTokenSchemaType>(token: InjectionToken<T, S>, value: z.input<S>): BoundInjectionToken<T, S>;
26
+ static factory<T, S extends InjectionTokenSchemaType>(token: InjectionToken<T, S>, factory: () => Promise<z.input<S>>): FactoryInjectionToken<T, S>;
27
+ static refineType<T>(token: BoundInjectionToken<any, any>): BoundInjectionToken<T, any>;
28
+ toString(): string;
29
+ }
30
+ declare class BoundInjectionToken<T, S extends InjectionTokenSchemaType> {
31
+ readonly token: InjectionToken<T, S>;
32
+ readonly value: z.input<S>;
33
+ id: string;
34
+ name: string | symbol | ClassType;
35
+ schema: InjectionTokenSchemaType;
36
+ constructor(token: InjectionToken<T, S>, value: z.input<S>);
37
+ toString(): string;
38
+ }
39
+ declare class FactoryInjectionToken<T, S extends InjectionTokenSchemaType> {
40
+ readonly token: InjectionToken<T, S>;
41
+ readonly factory: () => Promise<z.input<S>>;
42
+ value?: z.input<S>;
43
+ resolved: boolean;
44
+ id: string;
45
+ name: string | symbol | ClassType;
46
+ schema: InjectionTokenSchemaType;
47
+ constructor(token: InjectionToken<T, S>, factory: () => Promise<z.input<S>>);
48
+ resolve(): Promise<z.input<S>>;
49
+ toString(): string;
50
+ }
51
+
52
+ //#endregion
53
+ //#region src/service-locator-event-bus.d.mts
54
+ //# sourceMappingURL=injection-token.d.mts.map
55
+ declare class ServiceLocatorEventBus {
56
+ private readonly logger;
57
+ private listeners;
58
+ constructor(logger?: Console | null);
59
+ on<Event extends string | `pre:${string}` | `post:${string}`>(ns: string, event: Event, listener: (event: Event) => void): () => void;
60
+ emit(key: string, event: string): Promise<PromiseSettledResult<any>[] | undefined>;
61
+ }
62
+
63
+ //#endregion
64
+ //#region src/enums/injectable-scope.enum.d.mts
65
+ //# sourceMappingURL=service-locator-event-bus.d.mts.map
66
+ declare enum InjectableScope {
67
+ /**
68
+ * Singleton scope: The instance is created once and shared across the application.
69
+ */
70
+ Singleton = "Singleton",
71
+ /**
72
+ * Instance scope: A new instance is created for each injection.
73
+ */
74
+ Instance = "Instance",
75
+ }
76
+
77
+ //#endregion
78
+ //#region src/enums/injectable-type.enum.d.mts
79
+ //# sourceMappingURL=injectable-scope.enum.d.mts.map
80
+ declare enum InjectableType {
81
+ Class = "Class",
82
+ Factory = "Factory",
83
+ }
84
+
85
+ //#endregion
86
+ //#region src/registry.d.mts
87
+ //# sourceMappingURL=injectable-type.enum.d.mts.map
88
+ type InjectionFactory<T = unknown, Args = unknown> = (ctx: FactoryContext, args: Args) => Promise<T>;
89
+ type FactoryRecord<Instance = any, Schema = any> = {
90
+ scope: InjectableScope;
91
+ originalToken: InjectionToken<Instance, Schema>;
92
+ factory: InjectionFactory<Instance, Schema extends AnyZodObject ? z.input<Schema> : unknown>;
93
+ };
94
+ declare class Registry {
95
+ private readonly parent?;
96
+ private readonly factories;
97
+ constructor(parent?: Registry | undefined);
98
+ has(token: InjectionToken<any, any>): boolean;
99
+ get<Instance, Schema>(token: InjectionToken<Instance, Schema>): FactoryRecord<Instance, Schema>;
100
+ set<Instance, Schema>(token: InjectionToken<Instance, Schema>, factory: InjectionFactory, scope: InjectableScope): void;
101
+ delete(token: InjectionToken<any, any>): void;
102
+ }
103
+ declare const globalRegistry: Registry;
104
+
105
+ //#endregion
106
+ //#region src/errors/errors.enum.d.mts
107
+ //# sourceMappingURL=registry.d.mts.map
108
+ declare enum ErrorsEnum {
109
+ InstanceExpired = "InstanceExpired",
110
+ InstanceNotFound = "InstanceNotFound",
111
+ InstanceDestroying = "InstanceDestroying",
112
+ UnknownError = "UnknownError",
113
+ FactoryNotFound = "FactoryNotFound",
114
+ FactoryTokenNotResolved = "FactoryTokenNotResolved",
115
+ }
116
+
117
+ //#endregion
118
+ //#region src/errors/factory-not-found.d.mts
119
+ //# sourceMappingURL=errors.enum.d.mts.map
120
+ declare class FactoryNotFound extends Error {
121
+ name: string;
122
+ code: ErrorsEnum;
123
+ constructor(name: string);
124
+ }
125
+
126
+ //#endregion
127
+ //#region src/errors/factory-token-not-resolved.d.mts
128
+ //# sourceMappingURL=factory-not-found.d.mts.map
129
+ declare class FactoryTokenNotResolved extends Error {
130
+ code: ErrorsEnum;
131
+ constructor(name: string | symbol | ClassType);
132
+ }
133
+
134
+ //#endregion
135
+ //#region src/errors/instance-destroying.d.mts
136
+ //# sourceMappingURL=factory-token-not-resolved.d.mts.map
137
+ declare class InstanceDestroying extends Error {
138
+ name: string;
139
+ code: ErrorsEnum;
140
+ constructor(name: string);
141
+ }
142
+
143
+ //#endregion
144
+ //#region src/errors/instance-expired.d.mts
145
+ //# sourceMappingURL=instance-destroying.d.mts.map
146
+ declare class InstanceExpired extends Error {
147
+ name: string;
148
+ code: ErrorsEnum;
149
+ constructor(name: string);
150
+ }
151
+
152
+ //#endregion
153
+ //#region src/errors/instance-not-found.d.mts
154
+ //# sourceMappingURL=instance-expired.d.mts.map
155
+ declare class InstanceNotFound extends Error {
156
+ name: string;
157
+ code: ErrorsEnum;
158
+ constructor(name: string);
159
+ }
160
+
161
+ //#endregion
162
+ //#region src/errors/unknown-error.d.mts
163
+ //# sourceMappingURL=instance-not-found.d.mts.map
164
+ declare class UnknownError extends Error {
165
+ code: ErrorsEnum;
166
+ parent?: Error;
167
+ constructor(message: string | Error);
168
+ }
169
+
170
+ //#endregion
171
+ //#region src/service-locator.d.mts
172
+ //# sourceMappingURL=unknown-error.d.mts.map
173
+ declare class ServiceLocator {
174
+ private readonly registry;
175
+ private readonly logger;
176
+ private readonly eventBus;
177
+ private readonly manager;
178
+ constructor(registry?: Registry, logger?: Console | null);
179
+ getEventBus(): ServiceLocatorEventBus;
180
+ storeInstance<Instance>(instance: Instance, token: BoundInjectionToken<Instance, any>): void;
181
+ storeInstance<Instance>(instance: Instance, token: FactoryInjectionToken<Instance, any>): void;
182
+ storeInstance<Instance>(instance: Instance, token: InjectionToken<Instance, undefined>): void;
183
+ storeInstance<Instance, Schema extends AnyZodObject | ZodOptional<AnyZodObject>>(instance: Instance, token: InjectionToken<Instance, Schema>, args: z.input<Schema>): void;
184
+ removeInstance<Instance>(token: BoundInjectionToken<Instance, any>): void;
185
+ removeInstance<Instance>(token: FactoryInjectionToken<Instance, any>): void;
186
+ removeInstance<Instance>(token: InjectionToken<Instance, undefined>): void;
187
+ removeInstance<Instance, Schema extends BaseInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args: z.input<Schema>): void;
188
+ removeInstance<Instance, Schema extends OptionalInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args?: z.input<Schema>): void;
189
+ private resolveTokenArgs;
190
+ getInstanceIdentifier<Instance, Schema extends BaseInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args: z.input<Schema>): string;
191
+ getInstanceIdentifier<Instance, Schema extends OptionalInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args?: z.input<Schema>): string;
192
+ getInstanceIdentifier<Instance>(token: InjectionToken<Instance, undefined>): string;
193
+ getInstanceIdentifier<Instance>(token: BoundInjectionToken<Instance, any>): string;
194
+ getInstanceIdentifier<Instance>(token: FactoryInjectionToken<Instance, any>): string;
195
+ getInstance<Instance, Schema extends BaseInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args: z.input<Schema>): Promise<[undefined, Instance] | [UnknownError | FactoryNotFound]>;
196
+ getInstance<Instance, Schema extends OptionalInjectionTokenSchemaType>(token: InjectionToken<Instance, Schema>, args?: z.input<Schema>): Promise<[undefined, Instance] | [UnknownError | FactoryNotFound]>;
197
+ getInstance<Instance>(token: InjectionToken<Instance, undefined>): Promise<[undefined, Instance] | [UnknownError | FactoryNotFound]>;
198
+ getInstance<Instance>(token: BoundInjectionToken<Instance, any>): Promise<[undefined, Instance] | [UnknownError | FactoryNotFound]>;
199
+ getInstance<Instance>(token: FactoryInjectionToken<Instance, any>): Promise<[undefined, Instance] | [UnknownError | FactoryNotFound]>;
200
+ getOrThrowInstance<Instance, Schema extends InjectionTokenSchemaType | undefined>(token: InjectionToken<Instance, Schema>, args: Schema extends AnyZodObject ? z.input<Schema> : Schema extends ZodOptional<AnyZodObject> ? z.input<Schema> | undefined : undefined): Promise<Instance>;
201
+ private notifyListeners;
202
+ private createInstance;
203
+ private resolveInstance;
204
+ private createFactoryContext;
205
+ getSyncInstance<Instance, Schema extends InjectionTokenSchemaType | undefined>(token: InjectionToken<Instance, Schema>, args: Schema extends AnyZodObject ? z.input<Schema> : Schema extends ZodOptional<AnyZodObject> ? z.input<Schema> | undefined : undefined): Instance | null;
206
+ invalidate(service: string, round?: number): Promise<any>;
207
+ ready(): Promise<null>;
208
+ makeInstanceName(token: InjectionToken<any, any> | BoundInjectionToken<any, any> | FactoryInjectionToken<any, any>, args: any): string;
209
+ }
210
+
211
+ //#endregion
212
+ //#region src/utils/get-injectors.d.mts
213
+ //# sourceMappingURL=service-locator.d.mts.map
214
+ interface CreateInjectorsOptions {
215
+ baseLocator: ServiceLocator;
216
+ }
217
+ type Join<TElements, TSeparator extends string> = TElements extends Readonly<[infer First, ...infer Rest]> ? Rest extends ReadonlyArray<string> ? First extends string ? `${First}${Rest extends [] ? '' : TSeparator}${Join<Rest, TSeparator>}` : never : never : '';
218
+ type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends ((k: infer I) => void) ? I : never;
219
+ type UnionToOvlds<U> = UnionToIntersection<U extends any ? (f: U) => void : never>;
220
+ type PopUnion<U> = UnionToOvlds<U> extends ((a: infer A) => void) ? A : never;
221
+ type IsUnion<T> = [T] extends [UnionToIntersection<T>] ? false : true;
222
+ type UnionToArray<T, A extends unknown[] = []> = IsUnion<T> extends true ? UnionToArray<Exclude<T, PopUnion<T>>, [PopUnion<T>, ...A]> : [T, ...A];
223
+ interface Injectors {
224
+ inject<T extends ClassType>(token: T): Promise<InstanceType<T>>;
225
+ inject<T, S extends InjectionTokenSchemaType>(token: InjectionToken<T, S>, args: z.input<S>): Promise<T>;
226
+ inject<T, S extends InjectionTokenSchemaType, R extends boolean>(token: InjectionToken<T, S, R>): R extends false ? Promise<T> : S extends ZodType<infer Type> ? `Error: Your token requires args: ${Join<UnionToArray<keyof Type>, ', '>}` : 'Error: Your token requires args';
227
+ inject<T>(token: InjectionToken<T, undefined>): Promise<T>;
228
+ inject<T>(token: BoundInjectionToken<T, any>): Promise<T>;
229
+ inject<T>(token: FactoryInjectionToken<T, any>): Promise<T>;
230
+ syncInject<T extends ClassType>(token: T): InstanceType<T>;
231
+ syncInject<T, S extends InjectionTokenSchemaType>(token: InjectionToken<T, S>, args: z.input<S>): T;
232
+ syncInject<T, S extends InjectionTokenSchemaType, R extends boolean>(token: InjectionToken<T, S, R>): R extends false ? T : S extends ZodType<infer Type> ? `Error: Your token requires args: ${Join<UnionToArray<keyof Type>, ', '>}` : 'Error: Your token requires args';
233
+ syncInject<T>(token: InjectionToken<T, undefined>): T;
234
+ syncInject<T>(token: BoundInjectionToken<T, any>): T;
235
+ syncInject<T>(token: FactoryInjectionToken<T, any>): T;
236
+ wrapSyncInit(cb: () => any): () => [any, Promise<any>[]];
237
+ provideServiceLocator(locator: ServiceLocator): ServiceLocator;
238
+ }
239
+ declare const InjectorsBase: Map<ServiceLocator, Injectors>;
240
+ declare function getInjectors({
241
+ baseLocator
242
+ }: CreateInjectorsOptions): Injectors;
243
+
244
+ //#endregion
245
+ //#region src/utils/get-injectable-token.d.mts
246
+ declare function getInjectableToken<R>(target: ClassType): R extends {
247
+ create(...args: any[]): infer V;
248
+ } ? InjectionToken<V> : InjectionToken<R>;
249
+
250
+ //#endregion
251
+ //#region src/factory-context.d.mts
252
+ //# sourceMappingURL=get-injectable-token.d.mts.map
253
+ interface FactoryContext {
254
+ inject: Injectors['inject'];
255
+ on: ServiceLocatorEventBus['on'];
256
+ getDependencies: () => string[];
257
+ invalidate: () => void;
258
+ addEffect: (listener: () => void) => void;
259
+ getDestroyListeners: () => (() => void)[];
260
+ setTtl: (ttl: number) => void;
261
+ getTtl: () => number;
262
+ locator: ServiceLocator;
263
+ }
264
+
265
+ //#endregion
266
+ //#region src/interfaces/factory.interface.d.mts
267
+ //# sourceMappingURL=factory-context.d.mts.map
268
+ interface Factory<T> {
269
+ create(ctx?: FactoryContext): Promise<T> | T;
270
+ }
271
+ interface FactoryWithArgs<T, A extends InjectionTokenSchemaType> {
272
+ create(...args: [FactoryContext, z.output<A>]): Promise<T> | T;
273
+ }
274
+
275
+ //#endregion
276
+ //#region src/decorators/injectable.decorator.d.mts
277
+ //# sourceMappingURL=factory.interface.d.mts.map
278
+ interface InjectableOptions {
279
+ scope?: InjectableScope;
280
+ type?: InjectableType;
281
+ token?: InjectionToken<any, any>;
282
+ registry?: Registry;
283
+ }
284
+ declare function Injectable(): <T extends ClassType>(target: T, context: ClassDecoratorContext) => T;
285
+ declare function Injectable<R>(options: {
286
+ scope?: InjectableScope;
287
+ type: InjectableType.Factory;
288
+ }): <T extends ClassTypeWithInstance<Factory<R>>>(target: T, context: ClassDecoratorContext) => T;
289
+ declare function Injectable<Type, Schema>(options: {
290
+ scope?: InjectableScope;
291
+ type?: InjectableType.Class;
292
+ token: InjectionToken<Type, Schema>;
293
+ }): Schema extends BaseInjectionTokenSchemaType ? Type extends undefined ? <T extends ClassTypeWithArgument<z.output<Schema>>>(target: T, context: ClassDecoratorContext) => T : <T extends ClassTypeWithInstanceAndArgument<Type, z.output<Schema>>>(target: T, context: ClassDecoratorContext) => T : Schema extends OptionalInjectionTokenSchemaType ? Type extends undefined ? <T extends ClassTypeWithOptionalArgument<z.output<Schema>>>(target: T, context: ClassDecoratorContext) => T : <T extends ClassTypeWithInstanceAndOptionalArgument<Type, z.output<Schema>>>(target: T, context: ClassDecoratorContext) => T : Schema extends undefined ? <R extends ClassTypeWithInstance<Type>>(target: R, context: ClassDecoratorContext) => R : never;
294
+ declare function Injectable<R, S>(options: {
295
+ scope?: InjectableScope;
296
+ type: InjectableType.Factory;
297
+ token: InjectionToken<R, S>;
298
+ }): R extends undefined ? never : S extends InjectionTokenSchemaType ? <T extends ClassTypeWithInstance<FactoryWithArgs<R, S>>>(target: T, context: ClassDecoratorContext) => T : S extends undefined ? <T extends ClassTypeWithInstance<Factory<R>>>(target: T, context: ClassDecoratorContext) => T : never;
299
+
300
+ //#endregion
301
+ //#region src/event-emitter.d.mts
302
+ //# sourceMappingURL=injectable.decorator.d.mts.map
303
+ type EventsConfig = {
304
+ [event: string]: any[];
305
+ };
306
+ type EventsNames<Events extends EventsConfig> = Exclude<keyof Events, symbol | number>;
307
+ type EventsArgs<Events extends EventsConfig, Name extends EventsNames<Events>> = Events[Name] extends any[] ? Events[Name] : [];
308
+ type ChannelEmitter<Events extends EventsConfig, Ns extends string, E extends EventsNames<Events>> = {
309
+ emit<Args extends EventsArgs<Events, E>>(ns: Ns, event: E, ...args: Args): Promise<any>;
310
+ };
311
+ interface EventEmitterInterface<Events extends EventsConfig> {
312
+ on<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, listener: (...args: Args) => void): () => void;
313
+ emit<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, ...args: Args): void;
314
+ addChannel<E extends EventsNames<Events>, Ns extends string, Emmiter extends ChannelEmitter<Events, Ns, E>>(ns: Ns, event: E, target: Emmiter): () => void;
315
+ }
316
+ declare class EventEmitter<Events extends EventsConfig = {}> implements EventEmitterInterface<Events> {
317
+ private listeners;
318
+ on<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, listener: (...args: Args) => void): () => void;
319
+ off<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, listener: (...args: Args) => void): void;
320
+ once<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, listener: (...args: Args) => void): () => void;
321
+ emit<E extends EventsNames<Events>, Args extends EventsArgs<Events, E>>(event: E, ...args: Args): Promise<any>;
322
+ addChannel<E extends EventsNames<Events>, Ns extends string, Emitter extends ChannelEmitter<Events, Ns, E>>(ns: Ns, event: E, target: Emitter): () => void;
323
+ }
324
+
325
+ //#endregion
326
+ //#region src/injector.d.mts
327
+ //# sourceMappingURL=event-emitter.d.mts.map
328
+ declare function getGlobalServiceLocator(): ServiceLocator;
329
+ declare const inject: Injectors['inject'];
330
+ declare const syncInject: Injectors['syncInject'];
331
+ declare const wrapSyncInit: Injectors['wrapSyncInit'];
332
+ declare const provideServiceLocator: Injectors['provideServiceLocator'];
333
+
334
+ //#endregion
335
+ //#region src/proxy-service-locator.d.mts
336
+ //# sourceMappingURL=injector.d.mts.map
337
+ declare class ProxyServiceLocator implements ServiceLocator {
338
+ private readonly serviceLocator;
339
+ private readonly ctx;
340
+ constructor(serviceLocator: ServiceLocator, ctx: FactoryContext);
341
+ getEventBus(): ServiceLocatorEventBus;
342
+ getInstance(token: InjectionToken<any, any> | BoundInjectionToken<any, any> | FactoryInjectionToken<any, any>, args?: any): Promise<any[]>;
343
+ getOrThrowInstance<Instance, Schema extends AnyZodObject | ZodOptional<AnyZodObject> | undefined>(token: InjectionToken<Instance, Schema>, args: Schema extends AnyZodObject ? z.input<Schema> : Schema extends ZodOptional<AnyZodObject> ? z.input<Schema> | undefined : undefined): Promise<Instance>;
344
+ getSyncInstance<Instance, Schema extends AnyZodObject | ZodOptional<AnyZodObject> | undefined>(token: InjectionToken<Instance, Schema>, args: Schema extends AnyZodObject ? z.input<Schema> : Schema extends ZodOptional<AnyZodObject> ? z.input<Schema> | undefined : undefined): Instance | null;
345
+ invalidate(service: string, round?: number): Promise<any>;
346
+ ready(): Promise<null>;
347
+ makeInstanceName(token: InjectionToken<any, any>, args: any): string;
348
+ }
349
+ declare function makeProxyServiceLocator(serviceLocator: ServiceLocator, ctx: FactoryContext): ServiceLocator;
350
+
351
+ //#endregion
352
+ //#region src/resolve-service.d.mts
353
+ //# sourceMappingURL=proxy-service-locator.d.mts.map
354
+ declare function resolveService<T extends ClassType>(ctx: FactoryContext, target: T, args?: any[]): Promise<InstanceType<T>>;
355
+
356
+ //#endregion
357
+ //#region src/service-locator-instance-holder.d.mts
358
+ //# sourceMappingURL=resolve-service.d.mts.map
359
+ declare enum ServiceLocatorInstanceHolderKind {
360
+ Instance = "instance",
361
+ Factory = "factory",
362
+ AbstractFactory = "abstractFactory",
363
+ }
364
+ declare enum ServiceLocatorInstanceHolderStatus {
365
+ Created = "created",
366
+ Creating = "creating",
367
+ Destroying = "destroying",
368
+ }
369
+ type ServiceLocatorInstanceEffect = () => void;
370
+ type ServiceLocatorInstanceDestroyListener = () => void | Promise<void>;
371
+ interface ServiceLocatorInstanceHolderCreating<Instance> {
372
+ status: ServiceLocatorInstanceHolderStatus.Creating;
373
+ name: string;
374
+ instance: null;
375
+ creationPromise: Promise<[undefined, Instance]> | null;
376
+ destroyPromise: null;
377
+ kind: ServiceLocatorInstanceHolderKind;
378
+ effects: ServiceLocatorInstanceEffect[];
379
+ deps: string[];
380
+ destroyListeners: ServiceLocatorInstanceDestroyListener[];
381
+ createdAt: number;
382
+ ttl: number;
383
+ }
384
+ interface ServiceLocatorInstanceHolderCreated<Instance> {
385
+ status: ServiceLocatorInstanceHolderStatus.Created;
386
+ name: string;
387
+ instance: Instance;
388
+ creationPromise: null;
389
+ destroyPromise: null;
390
+ kind: ServiceLocatorInstanceHolderKind;
391
+ effects: ServiceLocatorInstanceEffect[];
392
+ deps: string[];
393
+ destroyListeners: ServiceLocatorInstanceDestroyListener[];
394
+ createdAt: number;
395
+ ttl: number;
396
+ }
397
+ interface ServiceLocatorInstanceHolderDestroying<Instance> {
398
+ status: ServiceLocatorInstanceHolderStatus.Destroying;
399
+ name: string;
400
+ instance: Instance | null;
401
+ creationPromise: null;
402
+ destroyPromise: Promise<void>;
403
+ kind: ServiceLocatorInstanceHolderKind;
404
+ effects: ServiceLocatorInstanceEffect[];
405
+ deps: string[];
406
+ destroyListeners: ServiceLocatorInstanceDestroyListener[];
407
+ createdAt: number;
408
+ ttl: number;
409
+ }
410
+ type ServiceLocatorInstanceHolder<Instance = unknown> = ServiceLocatorInstanceHolderCreating<Instance> | ServiceLocatorInstanceHolderCreated<Instance> | ServiceLocatorInstanceHolderDestroying<Instance>;
411
+
412
+ //#endregion
413
+ //#region src/service-locator-manager.d.mts
414
+ //# sourceMappingURL=service-locator-instance-holder.d.mts.map
415
+ declare class ServiceLocatorManager {
416
+ private readonly logger;
417
+ private readonly instancesHolders;
418
+ constructor(logger?: Console | null);
419
+ get(name: string): [InstanceExpired | InstanceDestroying, ServiceLocatorInstanceHolder] | [InstanceNotFound] | [undefined, ServiceLocatorInstanceHolder];
420
+ set(name: string, holder: ServiceLocatorInstanceHolder): void;
421
+ has(name: string): [InstanceExpired | InstanceDestroying] | [undefined, boolean];
422
+ delete(name: string): boolean;
423
+ filter(predicate: (value: ServiceLocatorInstanceHolder<any>, key: string) => boolean): Map<string, ServiceLocatorInstanceHolder>;
424
+ }
425
+
426
+ //#endregion
427
+ //#region src/symbols/injectable-token.d.mts
428
+ //# sourceMappingURL=service-locator-manager.d.mts.map
429
+ declare const InjectableTokenMeta: unique symbol;
430
+
431
+ //#endregion
432
+ //# sourceMappingURL=injectable-token.d.mts.map
433
+
434
+ export { BaseInjectionTokenSchemaType, BoundInjectionToken, ChannelEmitter, ClassType, ClassTypeWithArgument, ClassTypeWithInstance, ClassTypeWithInstanceAndArgument, ClassTypeWithInstanceAndOptionalArgument, ClassTypeWithOptionalArgument, CreateInjectorsOptions, ErrorsEnum, EventEmitter, EventEmitterInterface, EventsArgs, EventsConfig, EventsNames, Factory, FactoryContext, FactoryInjectionToken, FactoryNotFound, FactoryRecord, FactoryTokenNotResolved, FactoryWithArgs, Injectable, InjectableOptions, InjectableScope, InjectableTokenMeta, InjectableType, InjectionFactory, InjectionToken, InjectionTokenSchemaType, Injectors, InjectorsBase, InstanceDestroying, InstanceExpired, InstanceNotFound, Optional, OptionalInjectionTokenSchemaType, ProxyServiceLocator, Registry, Required, ServiceLocator, ServiceLocatorEventBus, ServiceLocatorInstanceDestroyListener, ServiceLocatorInstanceEffect, ServiceLocatorInstanceHolder, ServiceLocatorInstanceHolderCreated, ServiceLocatorInstanceHolderCreating, ServiceLocatorInstanceHolderDestroying, ServiceLocatorInstanceHolderKind, ServiceLocatorInstanceHolderStatus, ServiceLocatorManager, UnknownError, getGlobalServiceLocator, getInjectableToken, getInjectors, globalRegistry, inject, makeProxyServiceLocator, provideServiceLocator, resolveService, syncInject, wrapSyncInit };
435
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/injection-token.mts","../src/service-locator-event-bus.mts","../src/enums/injectable-scope.enum.mts","../src/enums/injectable-type.enum.mts","../src/registry.mts","../src/errors/errors.enum.mts","../src/errors/factory-not-found.mts","../src/errors/factory-token-not-resolved.mts","../src/errors/instance-destroying.mts","../src/errors/instance-expired.mts","../src/errors/instance-not-found.mts","../src/errors/unknown-error.mts","../src/service-locator.mts","../src/utils/get-injectors.mts","../src/utils/get-injectable-token.mts","../src/factory-context.mts","../src/interfaces/factory.interface.mts","../src/decorators/injectable.decorator.mts","../src/event-emitter.mts","../src/injector.mts","../src/proxy-service-locator.mts","../src/resolve-service.mts","../src/service-locator-instance-holder.mts","../src/service-locator-manager.mts","../src/symbols/injectable-token.mts"],"sourcesContent":[],"mappings":"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CjB1BJ,EAAA,OAAA,EiB2BK,qBjB3BL,EAAA,GiB4BD,CjB5BC;AAEO,iBiB6BG,UjB7B0B,CAAA,IAAA,EAAA,MAAA,CAAA,CAAA,OAAA,EAAA;EAC7B,KAAA,CAAA,EiB6BH,ejB7BgC;EAC9B,IAAA,CAAA,EiB6BH,cAAA,CAAe,KjB7BZ;EAA4B,KAAA,EiB8B/B,cjB9B+B,CiB8BhB,IjB9BgB,EiB8BV,MjB9BU,CAAA;CAAA,CAAA,EiB+BpC,MjB/BuC,SiB+BxB,4BjB/BwB,GiBgCvC,IjBhCuC,SAAA,SAAA,GAAA,CAAA,UiBiC1B,qBjBjC0B,CiBiCJ,CAAA,CAAE,MjBjCE,CiBiCK,MjBjCL,CAAA,CAAA,CAAA,CAAA,MAAA,EiBkC3B,CjBlC2B,EAAA,OAAA,EiBmC1B,qBjBnC0B,EAAA,GiBoChC,CjBpCgC,GAAA,CAAA,UiBqC1B,gCjBrC0B,CiBqCO,IjBrCP,EiBqCa,CAAA,CAAE,MjBrCf,CiBqCsB,MjBrCtB,CAAA,CAAA,CAAA,CAAA,MAAA,EiBsC3B,CjBtC2B,EAAA,OAAA,EiBuC1B,qBjBvC0B,EAAA,GiBwChC,CjBxCgC,GiByCvC,MjBzCuC,SiByCxB,gCjBzCwB,GiB0CrC,IjB1CqC,SAAA,SAAA,GAAA,CAAA,UiB2CxB,6BjB3CwB,CiB2CM,CAAA,CAAE,MjB3CR,CiB2Ce,MjB3Cf,CAAA,CAAA,CAAA,CAAA,MAAA,EiB4CzB,CjB5CyB,EAAA,OAAA,EiB6CxB,qBjB7CwB,EAAA,GiB8C9B,CjB9C8B,GAAA,CAAA,UiBgDvB,wCjBhDuB,CiBiD/B,IjBjD+B,EiBkD/B,CAAA,CAAE,MjBlD6B,CiBkDtB,MjBlDsB,CAAA,CAAA,CAAA,CAAA,MAAA,EiBqDzB,CjBrDyB,EAAA,OAAA,EiBsDxB,qBjBtDwB,EAAA,GiBuD9B,CjBvD8B,GiBwDrC,MjBxDqC,SAAA,SAAA,GAAA,CAAA,UiByDxB,qBjBzDwB,CiByDF,IjBzDE,CAAA,CAAA,CAAA,MAAA,EiB0DzB,CjB1DyB,EAAA,OAAA,EiB2DxB,qBjB3DwB,EAAA,GiB4D9B,CjB5D8B,GAAA,KAAA;AAAe,iBiBgE1C,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"}