import type DashboardVizProps from '@splunk/visualizations/src/common/types/DashboardVizProps'; export type ColumnVal = number | string | string[]; interface ColumnarData { data: { fields: { name: string; type?: string; }[] | string[]; columns: ColumnVal[][]; }; } interface PromiseInterface { resolve: (value: Record | PromiseLike>) => void; reject: (reason?: any) => void; } export interface VisualizationOptionsEvaluation { visualizationID: string; options?: Record; promise?: PromiseInterface; state: State; } export interface AsyncDynamicOptionsEvaluatorParams { visualizationID: string; props: DashboardVizProps; options: Record; dataSources: { [key: string]: ColumnarData; }; theme: unknown; bypassCloneDeepOptionScope?: boolean; lazyLoadingDataFrame?: boolean; enableTagSearchResult?: boolean; } declare enum State { Backlog = 0, Processing = 1, Complete = 2 } declare class AsyncDynamicOptionsEvaluator { static workerMap: Record; static optionsEvaluator: any; static isOptionsEvaluatorBusy: boolean; static lastResolved: any; static getWorker(): Worker; static createWorker(): void; static evaluate(asyncDynamicOptionsEvaluatorParams: AsyncDynamicOptionsEvaluatorParams): Promise>; static onOptionsEvaluatorMessage(messageEventMessage: Record): void; static reset(visualizationID: string): void; static evaluateNext(): void; } export default AsyncDynamicOptionsEvaluator;