You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 lines
775 B
15 lines
775 B
4 weeks ago
|
import { interfaces } from "../interfaces/interfaces";
|
||
|
declare class Lookup<T extends interfaces.Clonable<T>> implements interfaces.Lookup<T> {
|
||
|
private _map;
|
||
|
constructor();
|
||
|
getMap(): Map<string | symbol | interfaces.Newable<any> | interfaces.Abstract<any>, T[]>;
|
||
|
add(serviceIdentifier: interfaces.ServiceIdentifier<any>, value: T): void;
|
||
|
get(serviceIdentifier: interfaces.ServiceIdentifier<any>): T[];
|
||
|
remove(serviceIdentifier: interfaces.ServiceIdentifier<any>): void;
|
||
|
removeByCondition(condition: (item: T) => boolean): void;
|
||
|
hasKey(serviceIdentifier: interfaces.ServiceIdentifier<any>): boolean;
|
||
|
clone(): interfaces.Lookup<T>;
|
||
|
traverse(func: (key: interfaces.ServiceIdentifier<any>, value: T[]) => void): void;
|
||
|
}
|
||
|
export { Lookup };
|