import { Schema } from "../utils/validator"; import { Resolver } from "../resolve"; /** * definition of an action handler */ export interface HandlerDef { type: "external" | "remote-reactor"; /** * For type: "remote-reactor". Can include templated "PUB_FQDN". * ie. "PUB_FQDN::MyReactor" -> "com.vatominc::MyReactor" */ name: string; uri: string; timeout: number; } export interface ActionDef { uri: string; displayName: string; description: string; handler: HandlerDef; configSchema: Schema; callParams: Schema; blockvPolicy?: { preActionHandlers?: string[]; postActionHandlers?: string[]; }; } export interface BlockvPolicy { preActionHandlers?: string[]; postActionHandlers?: string[]; } /** * invocation of an action * * comes from an entry in the behavior definition listing, * and uses default values when properties are not specified */ export interface ActionInvocation { uri: string; config: any; } export declare function getBlockvPolicy(action: ActionDef | ActionInvocation, config: any, resolver: Resolver): Promise; export declare function getActionConfig(behaviorConfigSchema: any, behaviorConfig: any, configTemplate: any): Promise; export declare function getBvActionName(actionUri: string): string; //# sourceMappingURL=action.d.ts.map