import { Flow as FlowDefinition, NodeDefinition, NodeDefinitions, NodeDependencies } from '@chix/common'; export declare type Dependencies = NodeDependencies; export declare type DependencyTypes = 'npm'; export interface BaseNodeDefinitionLocation { providerLocation: string; } export declare type ProviderDef = { ns: string; name: string; providerLocation: string; url: string; }; export declare type LoadDefinitionResult = { nodeDefinition: NodeDefinition | FlowDefinition; dependencies: Dependencies; }; export declare type Location = string; export declare type WillLoad = Location[]; export interface WorkloadBase { ns: string; name: string; providerLocation: string; } export interface FSWorkload extends WorkloadBase { path: string; } export interface RemoteWorkload extends WorkloadBase { url: string; } export declare type Workload = Array; export interface XCacheFile { dependencies: NodeDependencies; nodeDefinitions: NodeDefinitions; } export interface WriteCacheEvent { file: string; } export interface PurgeCacheEvent { file: string; } export interface LoadCacheEvent { file: string; cache: XCacheFile; } export declare type FSLoaderConfig = { cache?: boolean; purge?: boolean; }; export interface NodeDefinitionLocationFS extends BaseNodeDefinitionLocation { path: string; } export interface LoadFileEvent { path: string; } export interface LoadUrlEvent { url: string; } export declare type LoadNodeResult = { providerLocation: string; nodeDef: NodeDefinition | FlowDefinition; }; export declare type PreloadResult = { provider: string; nodeDefinitions: NodeDefinitions; }; export declare type PreloadConfig = { provider: string; collection: string; }; export interface NodeDefinitionLocationRemote extends BaseNodeDefinitionLocation { url: string; }