import { SdmGoalState } from "../../typings/types"; /** * Result from goal execution with additional details that will be * persisted on the currently executing goal. */ export interface GoalDetails { /** * Optional description to be set on the goal */ description?: string; /** * Optional state for the goal */ state?: SdmGoalState; /** * Optional phase to return from the goal execution */ phase?: string; /** * Optional externalUrls to be set on the goal */ externalUrls?: Array<{ label?: string; url: string; }>; /** * Update the goals data field */ data?: string; } /** * Result from goal execution. * * Instead of returning ExecuteGoalResult, it is ok to throw an Error * to signal errors during goal execution. */ export interface ExecuteGoalResult extends GoalDetails { /** * 0, undefined or null is success; non-zero exit codes will mark the goal as failed, * if state is not defined */ code?: number; /** * The simple text message describing the result */ message?: string; } /** * Assert if a given ExecuteGoalResult describe a successful result * @param result */ export declare function isSuccess(result: ExecuteGoalResult | void): boolean; /** * Assert if a given ExecuteGoalResult describe a failure result * @param result */ export declare function isFailure(result: ExecuteGoalResult | void): boolean; //# sourceMappingURL=ExecuteGoalResult.d.ts.map