1 |
|
2 | import * as events from 'events';
|
3 | import { Flow as FlowDefinition, Node, NodeDefinition, NodeDefinitions, NodeDependencyTypes } from '@chix/common';
|
4 | import { ILoader, LoaderResponse } from './interfaces';
|
5 | import { DependencyManager, NodeDefinitionManager, NodeDefinitionProviderMap } from './lib';
|
6 | import { Dependencies, DependencyTypes, LoadDefinitionResult, LoadNodeResult, ProviderDef, Workload } from './types';
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 | export declare class Loader extends events.EventEmitter implements ILoader {
|
19 | getNodeSource: (provider: string, ns: string, name: string) => NodeDefinition | FlowDefinition;
|
20 | protected dependencyManager: DependencyManager;
|
21 | protected nodeDefinitionManager: NodeDefinitionManager;
|
22 | constructor();
|
23 | /**
|
24 | * This is the main method all child classes should implement.
|
25 | *
|
26 | * @param {FlowDefinition[]} _flows
|
27 | * @param {boolean} _update
|
28 | * @returns {Promise<LoaderResponse>}
|
29 | */
|
30 | load(_flows: FlowDefinition | FlowDefinition[], _update?: boolean): Promise<LoaderResponse>;
|
31 | loadNodeDefinitionFrom(provider: string, ns: string, name: string): Promise<LoadDefinitionResult>;
|
32 | |
33 |
|
34 |
|
35 |
|
36 |
|
37 |
|
38 |
|
39 |
|
40 |
|
41 | loadNode(providerDef: ProviderDef): Promise<LoadNodeResult>;
|
42 | |
43 |
|
44 |
|
45 |
|
46 |
|
47 |
|
48 | getWorkLoad(flows: FlowDefinition[], defaultProvider: string, update: boolean): Workload;
|
49 | addNodeDefinitions(identifier: string, nodeDefs: NodeDefinitions | Array<FlowDefinition | NodeDefinition>): void;
|
50 | addNodeDefinition(identifier: string, nodeDef: NodeDefinition | FlowDefinition): void;
|
51 | hasNodeDefinition(providerUrl: string, ns: string, name: string): boolean;
|
52 | getNodeDefinition(node: Node, flow: FlowDefinition): NodeDefinition | FlowDefinition;
|
53 | getNodeDefinitionFrom(provider: string, ns: string, name: string): FlowDefinition | NodeDefinition;
|
54 | saveNodeDefinition(_providerLocation: string, _nodeDefinition: NodeDefinition | FlowDefinition): void;
|
55 | getNodeDefinitions(provider?: string): NodeDefinitions | NodeDefinitionProviderMap;
|
56 | setNodeDefinitions(nodeDefinitions: NodeDefinitionProviderMap): void;
|
57 | hasDependencies(type?: DependencyTypes): boolean;
|
58 | getDependencies(type?: DependencyTypes): Dependencies | NodeDependencyTypes;
|
59 | setDependencies(dependencies: Dependencies): void;
|
60 | }
|