@hotmeshio/hotmesh
Version:
Serverless Workflow
35 lines (34 loc) • 1.37 kB
TypeScript
import { StoreService } from '../store';
import { MappingStatements } from '../../types/map';
import { HotMeshManifest } from '../../types/hotmesh';
import { ProviderClient, ProviderTransaction } from '../../types/provider';
declare class Validator {
manifest: HotMeshManifest | null;
activityIds: string[];
mappingStatements: MappingStatements;
store: StoreService<ProviderClient, ProviderTransaction> | null;
static SYS_VARS: string[];
static CONTEXT_VARS: string[];
constructor(manifest: HotMeshManifest);
/**
* validate the manifest file
*/
validate(store: StoreService<ProviderClient, ProviderTransaction>): Promise<void>;
validateActivityIds(): void;
isMappingStatement(value: string): boolean;
extractMappingStatements(obj: any, result: MappingStatements, currentActivityId: string): void;
getMappingStatements(): void;
validateReferencedActivityIds(): void;
isFunction(value: string): boolean;
isContextVariable(value: string): boolean;
validateMappingStatements(): void;
validateTransitions(): void;
validateTransitionConditions(): void;
validateStats(): void;
validateSchemas(): void;
validateUniqueHandledTopics(): void;
validateGraphPublishSubscribe(): void;
validateHooks(): void;
validateConditionalStatements(): void;
}
export { Validator };