@adaas/a-concept 0.1.29 → 0.1.31

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/dist/index.d.mts CHANGED
@@ -1186,7 +1186,7 @@ declare class A_Stage {
1186
1186
  * @param step
1187
1187
  * @returns
1188
1188
  */
1189
- protected getStepArgs(scope: A_Scope, step: A_TYPES__A_StageStep): Promise<(A_Container | A_Component | A_Entity<any, A_TYPES__Entity_Serialized> | A_Scope<A_TYPES__Component_Constructor[], A_TYPES__Error_Constructor[], A_TYPES__Entity_Constructor[], A_Fragment<any>[]> | A_Feature<A_TYPES__FeatureAvailableComponents> | A_Fragment<any> | A_TYPES__ScopeResolvableComponents[] | undefined)[]>;
1189
+ protected getStepArgs(scope: A_Scope, step: A_TYPES__A_StageStep): Promise<(A_Container | A_Component | A_Entity<any, A_TYPES__Entity_Serialized> | A_Scope<A_TYPES__Component_Constructor[], A_TYPES__Error_Constructor[], A_TYPES__Entity_Constructor[], A_Fragment<any, any>[]> | A_Feature<A_TYPES__FeatureAvailableComponents> | A_Fragment<any, any> | A_TYPES__ScopeResolvableComponents[] | undefined)[]>;
1190
1190
  /**
1191
1191
  * Resolves the component of the step
1192
1192
  *
@@ -1249,7 +1249,7 @@ declare class A_StageError extends A_Error {
1249
1249
  static get CompileError(): string;
1250
1250
  }
1251
1251
 
1252
- declare class A_FeatureError extends A_Error {
1252
+ declare class A_FeatureError extends A_Error<A_TYPES__FeatureError_Init> {
1253
1253
  /**
1254
1254
  * Indicates that the Feature has been interrupted
1255
1255
  */
@@ -1260,6 +1260,12 @@ declare class A_FeatureError extends A_Error {
1260
1260
  * Failed during the A-Feature initialization process
1261
1261
  */
1262
1262
  static readonly FeatureInitializationError = "Unable to initialize A-Feature";
1263
+ /**
1264
+ * Indicates that there was an error processing the Feature
1265
+ *
1266
+ * Failed during the A-Feature processing
1267
+ */
1268
+ static readonly FeatureProcessingError = "Error occurred during A-Feature processing";
1263
1269
  /**
1264
1270
  * Indicates that there was an error defining the Feature
1265
1271
  *
@@ -1272,6 +1278,11 @@ declare class A_FeatureError extends A_Error {
1272
1278
  * Failed during the @A_Feature.Extend() decorator execution
1273
1279
  */
1274
1280
  static readonly FeatureExtensionError = "Unable to extend A-Feature";
1281
+ /**
1282
+ * Stage where the error occurred
1283
+ */
1284
+ stage?: A_Stage;
1285
+ protected fromConstructor(params: A_TYPES__FeatureError_Init): void;
1275
1286
  }
1276
1287
 
1277
1288
  /**
@@ -1464,6 +1475,13 @@ declare class A_Feature<T extends A_TYPES__FeatureAvailableComponents = A_TYPES_
1464
1475
  * @returns
1465
1476
  */
1466
1477
  completed(): Promise<void>;
1478
+ /**
1479
+ * This method marks the feature as failed and throws an error
1480
+ * Uses to mark the feature as failed
1481
+ *
1482
+ * @param error
1483
+ */
1484
+ failed(error: A_FeatureError): Promise<void>;
1467
1485
  /**
1468
1486
  * This method marks the feature as failed and throws an error
1469
1487
  * Uses to interrupt or end the feature processing
@@ -1558,8 +1576,18 @@ declare enum A_TYPES__FeatureState {
1558
1576
  /**
1559
1577
  * The feature has been interrupted
1560
1578
  */
1561
- INTERRUPTED = "INTERRUPTED"
1579
+ INTERRUPTED = "INTERRUPTED",
1580
+ /**
1581
+ * The feature has failed
1582
+ */
1583
+ FAILED = "FAILED"
1562
1584
  }
1585
+ type A_TYPES__FeatureError_Init = {
1586
+ /**
1587
+ * Stage where the error occurred
1588
+ */
1589
+ stage?: A_Stage;
1590
+ } & A_TYPES__Error_Init;
1563
1591
  /**
1564
1592
  * A list of component where features can be Defined
1565
1593
  *
@@ -2172,7 +2200,7 @@ declare class A_Concept<_Imports extends A_Container[] = A_Container[]> {
2172
2200
  /**
2173
2201
  * The primary Root scope of the concept.
2174
2202
  */
2175
- get scope(): A_Scope<A_TYPES__Component_Constructor[], A_TYPES__Error_Constructor[], A_TYPES__Entity_Constructor[], A_Fragment<any>[]>;
2203
+ get scope(): A_Scope<A_TYPES__Component_Constructor[], A_TYPES__Error_Constructor[], A_TYPES__Entity_Constructor[], A_Fragment<any, any>[]>;
2176
2204
  /**
2177
2205
  * Register a class or value in the concept scope.
2178
2206
  */
@@ -2227,39 +2255,250 @@ declare class A_Concept<_Imports extends A_Container[] = A_Container[]> {
2227
2255
  container: _Imports[number]): Promise<void>;
2228
2256
  }
2229
2257
 
2230
- declare class A_Fragment<_MemoryItems extends Record<string, any> = any> {
2258
+ /**
2259
+ * A_Fragment is a core architectural component that represents a singleton execution context
2260
+ * within the A-Concept framework. It serves as a shared memory container that can be passed
2261
+ * between Components, Entities, and Commands throughout the application pipeline.
2262
+ *
2263
+ * Key Features:
2264
+ * - Singleton pattern: Only one instance per fragment type per scope
2265
+ * - Meta storage: Built-in key-value storage for pipeline data
2266
+ * - Type-safe: Full TypeScript generics support for meta items and serialization
2267
+ * - Serializable: Can be converted to JSON for persistence or transmission
2268
+ *
2269
+ * @template _MetaItems - Type definition for the meta storage structure
2270
+ * @template _SerializedType - Type definition for the serialized output format
2271
+ *
2272
+ * @example
2273
+ * ```typescript
2274
+ * // Basic usage with typed meta
2275
+ * class UserFragment extends A_Fragment<{ userId: string; role: string }> {
2276
+ * constructor() {
2277
+ * super({ name: 'UserFragment' });
2278
+ * }
2279
+ * }
2280
+ *
2281
+ * // Custom serialization
2282
+ * class SessionFragment extends A_Fragment<
2283
+ * { sessionId: string; timestamp: number },
2284
+ * { name: string; sessionData: string }
2285
+ * > {
2286
+ * toJSON() {
2287
+ * return {
2288
+ * name: this.name,
2289
+ * sessionData: `${this.get('sessionId')}-${this.get('timestamp')}`
2290
+ * };
2291
+ * }
2292
+ * }
2293
+ * ```
2294
+ */
2295
+ declare class A_Fragment<_MetaItems extends Record<string, any> = any, _SerializedType extends A_TYPES__Fragment_Serialized = A_TYPES__Fragment_Serialized & _MetaItems> {
2231
2296
  /**
2232
- * Fragment Name
2297
+ * The unique identifier/name for this fragment instance.
2298
+ * Used for identification and debugging purposes.
2233
2299
  */
2234
- name: string;
2300
+ protected _name: string;
2235
2301
  /**
2236
- * Memory storage for the Fragment instance
2302
+ * Internal meta storage using A_Meta for type-safe key-value operations.
2303
+ * This stores all the fragment's runtime data that can be accessed and modified
2304
+ * throughout the execution pipeline.
2237
2305
  */
2238
- protected _meta: A_Meta<_MemoryItems>;
2306
+ protected _meta: A_Meta<_MetaItems>;
2239
2307
  /**
2240
- * A-Fragment is a singleton, a piece of execution Context that can be shared between the Components/Entities/Commands
2241
- * For every A_Scope can be defined only One A_Fragment of the same type.
2242
- * This class is useful for the design purpose and maintainance of the application
2308
+ * Creates a new A_Fragment instance.
2309
+ *
2310
+ * A_Fragment implements the singleton pattern for execution contexts, allowing
2311
+ * shared state management across different parts of the application pipeline.
2312
+ * Each fragment serves as a memory container that can store typed data and be
2313
+ * serialized for persistence or transmission.
2314
+ *
2315
+ * Key Benefits:
2316
+ * - Centralized state management for related operations
2317
+ * - Type-safe meta operations with full IntelliSense support
2318
+ * - Serialization support for data persistence
2319
+ * - Singleton pattern ensures consistent state within scope
2243
2320
  *
2321
+ * @param params - Initialization parameters
2322
+ * @param params.name - Optional custom name for the fragment (defaults to class name)
2244
2323
  *
2245
- * [!] Every A_Fragment is a Memory Class that can store data in memory between the steps of the pipeline.
2246
- * [!] So if it necessary to store some information in the Execution Context - use memory of the Fragment
2324
+ * @example
2325
+ * ```typescript
2326
+ * const fragment = new A_Fragment<{ userId: string }>({
2327
+ * name: 'UserSessionFragment'
2328
+ * });
2329
+ * fragment.set('userId', '12345');
2330
+ * ```
2247
2331
  */
2248
2332
  constructor(params?: Partial<A_TYPES__Fragment_Init>);
2249
2333
  /**
2250
- * Returns the Meta object that allows to store data in the Fragment memory
2334
+ * Gets the fragment's unique name/identifier.
2251
2335
  *
2252
- * @returns
2336
+ * @returns The fragment name
2253
2337
  */
2254
- get memory(): A_Meta<_MemoryItems>;
2338
+ get name(): string;
2255
2339
  /**
2256
- * Returns the JSON representation of the Fragment
2340
+ * Gets direct access to the underlying Meta object for advanced meta operations.
2257
2341
  *
2258
- * @returns
2342
+ * Use this when you need to perform bulk operations or access Meta-specific methods.
2343
+ * For simple get/set operations, prefer using the direct methods on the fragment.
2344
+ *
2345
+ * @returns The Meta instance containing the fragment's meta
2346
+ *
2347
+ * @example
2348
+ * ```typescript
2349
+ * const fragment = new A_Fragment<{ users: string[], count: number }>();
2350
+ *
2351
+ * // Advanced operations using meta
2352
+ * fragment.meta.setMultiple({
2353
+ * users: ['alice', 'bob'],
2354
+ * count: 2
2355
+ * });
2356
+ *
2357
+ * // Get all keys
2358
+ * const keys = fragment.meta.keys();
2359
+ * ```
2259
2360
  */
2260
- toJSON(): _MemoryItems & {
2261
- name: string;
2262
- };
2361
+ get meta(): A_Meta<_MetaItems>;
2362
+ /**
2363
+ * Checks if a specific meta key exists in the fragment.
2364
+ *
2365
+ * @param param - The key to check for existence
2366
+ * @returns True if the key exists, false otherwise
2367
+ *
2368
+ * @example
2369
+ * ```typescript
2370
+ * if (fragment.has('userId')) {
2371
+ * console.log('User ID is set');
2372
+ * }
2373
+ * ```
2374
+ */
2375
+ has(param: keyof _MetaItems): boolean;
2376
+ /**
2377
+ * Retrieves a value from the fragment's meta.
2378
+ *
2379
+ * @param param - The key to retrieve
2380
+ * @returns The value associated with the key, or undefined if not found
2381
+ *
2382
+ * @example
2383
+ * ```typescript
2384
+ * const userId = fragment.get('userId');
2385
+ * if (userId) {
2386
+ * console.log(`Current user: ${userId}`);
2387
+ * }
2388
+ * ```
2389
+ */
2390
+ get<K extends keyof _MetaItems>(param: K): _MetaItems[K] | undefined;
2391
+ /**
2392
+ * Stores a value in the fragment's meta.
2393
+ *
2394
+ * @param param - The key to store the value under
2395
+ * @param value - The value to store
2396
+ *
2397
+ * @example
2398
+ * ```typescript
2399
+ * fragment.set('userId', '12345');
2400
+ * fragment.set('role', 'admin');
2401
+ * ```
2402
+ */
2403
+ set<K extends keyof _MetaItems>(param: K, value: _MetaItems[K]): void;
2404
+ /**
2405
+ * Removes a specific key from the fragment's meta.
2406
+ *
2407
+ * @param param - The key to remove
2408
+ *
2409
+ * @example
2410
+ * ```typescript
2411
+ * fragment.drop('temporaryData');
2412
+ * ```
2413
+ */
2414
+ drop(param: keyof _MetaItems): void;
2415
+ /**
2416
+ * Clears all data from the fragment's meta.
2417
+ *
2418
+ * Use with caution as this will remove all stored data in the fragment.
2419
+ *
2420
+ * @example
2421
+ * ```typescript
2422
+ * fragment.clear(); // All meta data is now gone
2423
+ * ```
2424
+ */
2425
+ clear(): void;
2426
+ /**
2427
+ * Gets the number of items stored in the fragment's meta.
2428
+ *
2429
+ * @returns The count of stored meta items
2430
+ *
2431
+ * @example
2432
+ * ```typescript
2433
+ * console.log(`Fragment contains ${fragment.size()} items`);
2434
+ * ```
2435
+ */
2436
+ size(): number;
2437
+ /**
2438
+ * Gets all keys currently stored in the fragment's meta.
2439
+ *
2440
+ * @returns Array of all meta keys
2441
+ *
2442
+ * @example
2443
+ * ```typescript
2444
+ * const keys = fragment.keys();
2445
+ * console.log('Stored keys:', keys);
2446
+ * ```
2447
+ */
2448
+ keys(): (keyof _MetaItems)[];
2449
+ /**
2450
+ * Sets multiple values at once in the fragment's meta.
2451
+ *
2452
+ * @param data - Object containing key-value pairs to set
2453
+ *
2454
+ * @example
2455
+ * ```typescript
2456
+ * fragment.setMultiple({
2457
+ * userId: '12345',
2458
+ * role: 'admin',
2459
+ * lastLogin: new Date()
2460
+ * });
2461
+ * ```
2462
+ */
2463
+ setMultiple(data: A_TYPES__DeepPartial<_MetaItems>): void;
2464
+ /**
2465
+ * Creates a shallow copy of the fragment with the same meta data.
2466
+ *
2467
+ * @param newName - Optional new name for the cloned fragment
2468
+ * @returns A new fragment instance with copied meta
2469
+ *
2470
+ * @example
2471
+ * ```typescript
2472
+ * const original = new A_Fragment<{ data: string }>({ name: 'original' });
2473
+ * original.set('data', 'test');
2474
+ *
2475
+ * const clone = original.clone('cloned');
2476
+ * console.log(clone.get('data')); // 'test'
2477
+ * ```
2478
+ */
2479
+ clone(newName?: string): A_Fragment<_MetaItems, _SerializedType>;
2480
+ /**
2481
+ * Serializes the fragment to a JSON-compatible object.
2482
+ *
2483
+ * This method combines the fragment's name with all meta data to create
2484
+ * a serializable representation. The return type is determined by the
2485
+ * _SerializedType generic parameter, allowing for custom serialization formats.
2486
+ *
2487
+ * @returns A serialized representation of the fragment
2488
+ *
2489
+ * @example
2490
+ * ```typescript
2491
+ * const fragment = new A_Fragment<{ userId: string, role: string }>({
2492
+ * name: 'UserFragment'
2493
+ * });
2494
+ * fragment.set('userId', '12345');
2495
+ * fragment.set('role', 'admin');
2496
+ *
2497
+ * const json = fragment.toJSON();
2498
+ * // Result: { name: 'UserFragment', userId: '12345', role: 'admin' }
2499
+ * ```
2500
+ */
2501
+ toJSON(): _SerializedType;
2263
2502
  }
2264
2503
 
2265
2504
  /**
@@ -2278,9 +2517,9 @@ type A_TYPES__Fragment_Init = {
2278
2517
  */
2279
2518
  type A_TYPES__Fragment_Serialized = {
2280
2519
  /**
2281
- * The ASEID of the fragment
2520
+ * The Name of the fragment
2282
2521
  */
2283
- aseid: string;
2522
+ name: string;
2284
2523
  };
2285
2524
 
2286
2525
  /**
@@ -3958,4 +4197,4 @@ declare class A_TypeGuards {
3958
4197
  static isConstructorType<T extends A_TYPES__Error_Init>(param: any): param is T;
3959
4198
  }
3960
4199
 
3961
- export { ASEID, ASEID_Error, A_Abstraction, A_AbstractionError, A_Abstraction_Extend, A_CONSTANTS__DEFAULT_ENV_VARIABLES, A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_Caller, A_CallerError, A_CommonHelper, A_Component, A_ComponentMeta, A_Concept, A_ConceptMeta, A_Container, A_ContainerMeta, A_Context, A_Dependency, A_DependencyError, A_Dependency_Default, A_Dependency_Load, A_Dependency_Require, A_Entity, A_Error, A_Feature, A_FeatureError, A_Feature_Define, A_Feature_Extend, A_FormatterHelper, A_Fragment, type A_ID_TYPES__TimeId_Parts, A_IdentityHelper, A_Inject, A_Meta, A_Scope, A_ScopeError, A_Stage, A_StageError, A_StepManagerError, A_StepsManager, type A_TYPES_ScopeDependentComponents, type A_TYPES_ScopeIndependentComponents, type A_TYPES_StageExecutionBehavior, type A_TYPES__ASEID_Constructor, type A_TYPES__ASEID_ConstructorConfig, type A_TYPES__ASEID_JSON, type A_TYPES__A_Dependency_DefaultDecoratorReturn, type A_TYPES__A_Dependency_LoadDecoratorReturn, type A_TYPES__A_Dependency_RequireDecoratorReturn, type A_TYPES__A_InjectDecoratorDescriptor, type A_TYPES__A_InjectDecoratorReturn, type A_TYPES__A_InjectDecorator_EntityInjectionInstructions, type A_TYPES__A_InjectDecorator_EntityInjectionPagination, type A_TYPES__A_InjectDecorator_EntityInjectionQuery, type A_TYPES__A_InjectDecorator_Meta, type A_TYPES__A_StageStep, type A_TYPES__A_StageStepProcessingExtraParams, A_TYPES__A_Stage_Status, type A_TYPES__AbstractionAvailableComponents, type A_TYPES__AbstractionDecoratorConfig, type A_TYPES__AbstractionDecoratorDescriptor, type A_TYPES__Abstraction_Constructor, type A_TYPES__Abstraction_Init, type A_TYPES__Abstraction_Serialized, type A_TYPES__CallerComponent, type A_TYPES__Caller_Constructor, type A_TYPES__Caller_Init, type A_TYPES__Caller_Serialized, type A_TYPES__ComponentMeta, type A_TYPES__ComponentMetaExtension, type A_TYPES__Component_Constructor, type A_TYPES__Component_Init, type A_TYPES__Component_Serialized, type A_TYPES__ConceptAbstraction, type A_TYPES__ConceptAbstractionMeta, type A_TYPES__ConceptENVVariables, type A_TYPES__Concept_Constructor, type A_TYPES__Concept_Init, type A_TYPES__Concept_Serialized, type A_TYPES__ContainerMeta, type A_TYPES__ContainerMetaExtension, type A_TYPES__Container_Constructor, type A_TYPES__Container_Init, type A_TYPES__Container_Serialized, type A_TYPES__ContextEnvironment, type A_TYPES__DeepPartial, type A_TYPES__Dictionary, type A_TYPES__EntityMeta, type A_TYPES__Entity_Constructor, type A_TYPES__Entity_Init, type A_TYPES__Entity_Serialized, type A_TYPES__Error_Constructor, type A_TYPES__Error_Init, type A_TYPES__Error_Serialized, type A_TYPES__ExtractNested, type A_TYPES__ExtractProperties, type A_TYPES__FeatureAvailableComponents, type A_TYPES__FeatureAvailableConstructors, type A_TYPES__FeatureDefineDecoratorConfig, type A_TYPES__FeatureDefineDecoratorDescriptor, type A_TYPES__FeatureDefineDecoratorMeta, type A_TYPES__FeatureDefineDecoratorTarget, type A_TYPES__FeatureDefineDecoratorTemplateItem, type A_TYPES__FeatureExtendDecoratorConfig, type A_TYPES__FeatureExtendDecoratorDescriptor, type A_TYPES__FeatureExtendDecoratorMeta, type A_TYPES__FeatureExtendDecoratorScopeConfig, type A_TYPES__FeatureExtendDecoratorScopeItem, type A_TYPES__FeatureExtendDecoratorTarget, type A_TYPES__FeatureExtendableMeta, A_TYPES__FeatureState, type A_TYPES__Feature_Constructor, type A_TYPES__Feature_Init, type A_TYPES__Feature_InitWithComponent, type A_TYPES__Feature_InitWithTemplate, type A_TYPES__Feature_Serialized, type A_TYPES__Fragment_Constructor, type A_TYPES__Fragment_Init, type A_TYPES__Fragment_Serialized, type A_TYPES__IEntity, type A_TYPES__InjectableConstructors, type A_TYPES__InjectableTargets, type A_TYPES__MetaLinkedComponentConstructors, type A_TYPES__MetaLinkedComponents, type A_TYPES__NonObjectPaths, type A_TYPES__ObjectKeyEnum, type A_TYPES__Paths, type A_TYPES__PathsToObject, type A_TYPES__Required, type A_TYPES__ScopeConfig, type A_TYPES__ScopeLinkedComponents, type A_TYPES__ScopeLinkedConstructors, type A_TYPES__ScopeResolvableComponents, type A_TYPES__Scope_Constructor, type A_TYPES__Scope_Init, type A_TYPES__Scope_Serialized, type A_TYPES__Stage_Serialized, type A_TYPES__UnionToIntersection, A_TypeGuards };
4200
+ export { ASEID, ASEID_Error, A_Abstraction, A_AbstractionError, A_Abstraction_Extend, A_CONSTANTS__DEFAULT_ENV_VARIABLES, A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_Caller, A_CallerError, A_CommonHelper, A_Component, A_ComponentMeta, A_Concept, A_ConceptMeta, A_Container, A_ContainerMeta, A_Context, A_Dependency, A_DependencyError, A_Dependency_Default, A_Dependency_Load, A_Dependency_Require, A_Entity, A_Error, A_Feature, A_FeatureError, A_Feature_Define, A_Feature_Extend, A_FormatterHelper, A_Fragment, type A_ID_TYPES__TimeId_Parts, A_IdentityHelper, A_Inject, A_Meta, A_Scope, A_ScopeError, A_Stage, A_StageError, A_StepManagerError, A_StepsManager, type A_TYPES_ScopeDependentComponents, type A_TYPES_ScopeIndependentComponents, type A_TYPES_StageExecutionBehavior, type A_TYPES__ASEID_Constructor, type A_TYPES__ASEID_ConstructorConfig, type A_TYPES__ASEID_JSON, type A_TYPES__A_Dependency_DefaultDecoratorReturn, type A_TYPES__A_Dependency_LoadDecoratorReturn, type A_TYPES__A_Dependency_RequireDecoratorReturn, type A_TYPES__A_InjectDecoratorDescriptor, type A_TYPES__A_InjectDecoratorReturn, type A_TYPES__A_InjectDecorator_EntityInjectionInstructions, type A_TYPES__A_InjectDecorator_EntityInjectionPagination, type A_TYPES__A_InjectDecorator_EntityInjectionQuery, type A_TYPES__A_InjectDecorator_Meta, type A_TYPES__A_StageStep, type A_TYPES__A_StageStepProcessingExtraParams, A_TYPES__A_Stage_Status, type A_TYPES__AbstractionAvailableComponents, type A_TYPES__AbstractionDecoratorConfig, type A_TYPES__AbstractionDecoratorDescriptor, type A_TYPES__Abstraction_Constructor, type A_TYPES__Abstraction_Init, type A_TYPES__Abstraction_Serialized, type A_TYPES__CallerComponent, type A_TYPES__Caller_Constructor, type A_TYPES__Caller_Init, type A_TYPES__Caller_Serialized, type A_TYPES__ComponentMeta, type A_TYPES__ComponentMetaExtension, type A_TYPES__Component_Constructor, type A_TYPES__Component_Init, type A_TYPES__Component_Serialized, type A_TYPES__ConceptAbstraction, type A_TYPES__ConceptAbstractionMeta, type A_TYPES__ConceptENVVariables, type A_TYPES__Concept_Constructor, type A_TYPES__Concept_Init, type A_TYPES__Concept_Serialized, type A_TYPES__ContainerMeta, type A_TYPES__ContainerMetaExtension, type A_TYPES__Container_Constructor, type A_TYPES__Container_Init, type A_TYPES__Container_Serialized, type A_TYPES__ContextEnvironment, type A_TYPES__DeepPartial, type A_TYPES__Dictionary, type A_TYPES__EntityMeta, type A_TYPES__Entity_Constructor, type A_TYPES__Entity_Init, type A_TYPES__Entity_Serialized, type A_TYPES__Error_Constructor, type A_TYPES__Error_Init, type A_TYPES__Error_Serialized, type A_TYPES__ExtractNested, type A_TYPES__ExtractProperties, type A_TYPES__FeatureAvailableComponents, type A_TYPES__FeatureAvailableConstructors, type A_TYPES__FeatureDefineDecoratorConfig, type A_TYPES__FeatureDefineDecoratorDescriptor, type A_TYPES__FeatureDefineDecoratorMeta, type A_TYPES__FeatureDefineDecoratorTarget, type A_TYPES__FeatureDefineDecoratorTemplateItem, type A_TYPES__FeatureError_Init, type A_TYPES__FeatureExtendDecoratorConfig, type A_TYPES__FeatureExtendDecoratorDescriptor, type A_TYPES__FeatureExtendDecoratorMeta, type A_TYPES__FeatureExtendDecoratorScopeConfig, type A_TYPES__FeatureExtendDecoratorScopeItem, type A_TYPES__FeatureExtendDecoratorTarget, type A_TYPES__FeatureExtendableMeta, A_TYPES__FeatureState, type A_TYPES__Feature_Constructor, type A_TYPES__Feature_Init, type A_TYPES__Feature_InitWithComponent, type A_TYPES__Feature_InitWithTemplate, type A_TYPES__Feature_Serialized, type A_TYPES__Fragment_Constructor, type A_TYPES__Fragment_Init, type A_TYPES__Fragment_Serialized, type A_TYPES__IEntity, type A_TYPES__InjectableConstructors, type A_TYPES__InjectableTargets, type A_TYPES__MetaLinkedComponentConstructors, type A_TYPES__MetaLinkedComponents, type A_TYPES__NonObjectPaths, type A_TYPES__ObjectKeyEnum, type A_TYPES__Paths, type A_TYPES__PathsToObject, type A_TYPES__Required, type A_TYPES__ScopeConfig, type A_TYPES__ScopeLinkedComponents, type A_TYPES__ScopeLinkedConstructors, type A_TYPES__ScopeResolvableComponents, type A_TYPES__Scope_Constructor, type A_TYPES__Scope_Init, type A_TYPES__Scope_Serialized, type A_TYPES__Stage_Serialized, type A_TYPES__UnionToIntersection, A_TypeGuards };