import { DrillData } from '../types'; import { Cell } from '../../data_tree'; import { RenderMetadata } from '../render-result-metadata'; interface BrushDataBase { fieldRefId: string; sourceId: string; } interface BrushDataDimension extends BrushDataBase { type: 'dimension'; value: (string | number | boolean | Date)[]; } interface BrushDataMeasure extends BrushDataBase { type: 'measure'; value: number[]; } export interface ModifyBrushOp { type: 'add' | 'remove'; sourceId: string; value?: BrushData; } interface BrushDataMeasureRange extends BrushDataBase { type: 'measure-range'; value: [number, number]; } export type BrushData = BrushDataDimension | BrushDataMeasure | BrushDataMeasureRange; export type VegaBrushOutput = { sourceId: string; data: BrushData | null; debounce?: number | { time?: number; strategy?: 'always' | 'on-empty'; }; }; export interface ResultStoreData { brushes: BrushData[]; showCopiedModal: boolean; } export declare function createResultStore(): { store: ResultStoreData; applyBrushOps: (ops: ModifyBrushOp[]) => void; triggerCopiedModal: (time?: number) => void; }; export type ResultStore = ReturnType; export declare function copyExplorePathQueryToClipboard({ metadata, data, onDrill, }: { metadata: RenderMetadata; data: Cell; onDrill?: (drillData: DrillData) => void; }): Promise; export {};