UNPKG

@triviality/core

Version:
18 lines (17 loc) 1.35 kB
import { InferListArgumentRegisters, RegisterListArguments, RegistryListContext } from './RegistryListContext'; import { InferMapArgumentsRegisters, RegistryMapContext } from './RegistryMapContext'; import { RegistrySetContext } from './RegistrySetContext'; import { ServiceFunctionReferenceContainerInterface } from '../../Container/ServiceFunctionReferenceContainerInterface'; export declare type InferRegisters<T> = InferListArgumentRegisters<T> & InferMapArgumentsRegisters<T>; export interface RegistryContext<T> extends RegistryListContext<T>, RegistryMapContext<T>, RegistrySetContext<T> { registers: InferRegisters<T>; } /** * It overrides the existing list, keeping the list itself immutable. */ export declare const registerToListOrSet: <Services, T>(container: ServiceFunctionReferenceContainerInterface<any>, registry: string, ...items: RegisterListArguments<Services, T>) => void; export declare const registersTo: (container: ServiceFunctionReferenceContainerInterface<any>, name: string) => (...args: any) => {}; export declare const createFeatureFactoryRegisterContext: (container: ServiceFunctionReferenceContainerInterface<any>) => { [index: string]: (...args: any) => {}; }; export declare const createFeatureFactoryRegistryContext: <T>(container: ServiceFunctionReferenceContainerInterface<any>) => RegistryContext<T>;