import Vue from 'vue'; import { ExecutionOutput, ExecutionOutputEntry } from '../../stores/ExecutionOutput'; import { IObservableArray } from 'mobx'; interface IBuilderOpts { node?: string; stepCtx?: string; nodeIcon?: boolean; command?: { visible: boolean; }; gutter?: { visible: boolean; }; time?: { visible: boolean; }; maxLines?: number; content?: { lineWrap: boolean; }; } /** * LogBuilder constructs and manages a list of log entry elements * inside the provided DOM element. */ export declare class LogBuilder { readonly executionOutput: ExecutionOutput; readonly rootElem: HTMLElement; chunks: HTMLElement[]; currNode?: HTMLElement; currChunk?: HTMLElement; chunkSize: number; private opts; newLineHandlers: Array<(entries: Array) => void>; private lastEntry?; private count; constructor(executionOutput: ExecutionOutput, rootElem: HTMLElement, opts: IBuilderOpts); onNewLines(handler: (entries: Array) => void): void; /** * Observes output returned by a lookup function */ observeFiltered(lookupFunc: () => IObservableArray | undefined): void; observeOutput(entries: IObservableArray): void; static DefaultOpts(): Required; updateProp(opts: IBuilderOpts): void; addLines(entries: Array): void; addLine(logEntry: ExecutionOutputEntry, selected: boolean): Vue; private entryStepType; private entryStepLabel; private entryPath; private entryTitle; private openNode; private closeNode; private openChunk; dropChunk(): number; private closeChunk; } export {};