import { OpMap, OpType } from "./stack"; export interface CancelEvent { } export interface StdoutEngineEvent { message: string; color: string; } export interface DiagnosticEvent { urn?: string; prefix?: string; message: string; color: string; severity: "info" | "info#err" | "warning" | "error"; streamID?: number; ephemeral?: boolean; } export interface PolicyEvent { resourceUrn?: string; message: string; color: string; policyName: string; policyPackName: string; policyPackVersion: string; policyPackVersionTag: string; enforcementLevel: "warning" | "mandatory"; } export interface PreludeEvent { config: Record; } export interface SummaryEvent { maybeCorrupt: boolean; durationSeconds: number; resourceChanges: OpMap; policyPacks: Record; } export declare enum DiffKind { add = "add", addReplace = "add-replace", delete = "delete", deleteReplace = "delete-replace", update = "update", updateReplace = "update-replace" } export interface PropertyDiff { diffKind: DiffKind; inputDiff: boolean; } export interface StepEventMetadata { op: OpType; urn: string; type: string; old?: StepEventStateMetadata; new?: StepEventStateMetadata; keys?: string[]; diffs?: string[]; detailedDiff?: Record; logical?: boolean; provider: string; } export interface StepEventStateMetadata { type: string; urn: string; custom?: boolean; delete?: boolean; id: string; parent: string; protect?: boolean; inputs: Record; outputs: Record; provider: string; initErrors?: string[]; } export interface ResourcePreEvent { metadata: StepEventMetadata; planning?: boolean; } export interface ResOutputsEvent { metadata: StepEventMetadata; planning?: boolean; } export interface ResOpFailedEvent { metadata: StepEventMetadata; status: number; steps: number; } export interface EngineEvent { sequence: number; timestamp: number; cancelEvent?: CancelEvent; stdoutEvent?: StdoutEngineEvent; diagnosticEvent?: DiagnosticEvent; preludeEvent?: PreludeEvent; summaryEvent?: SummaryEvent; resourcePreEvent?: ResourcePreEvent; resOutputsEvent?: ResOutputsEvent; resOpFailedEvent?: ResOpFailedEvent; policyEvent?: PolicyEvent; }