import { CSSExports } from "../css/exports"; import { PCExports } from "./exports"; import { VirtScriptObject } from "../script/virt"; import { Mutation } from "./virt-mtuation"; import { CSSMutation } from "../css/virt-mutation"; export declare enum VirtualNodeKind { Element = "Element", Text = "Text", Slot = "Slot", Fragment = "Fragment", StyleElement = "StyleElement" } export declare type VirtNodeSource = { uri: string; path: number[]; }; export declare type FrameAnnotation = { width?: number; height?: number; x?: number; y?: number; title?: string; visible?: boolean; }; export declare type NodeAnnotations = { frame?: FrameAnnotation; tags?: string[]; visualRegresionTest?: boolean; }; export declare enum EvaluatedDataKind { PC = "PC", CSS = "CSS" } declare type BaseEvaluatedData = { kind: TKind; }; export declare type EvaluatedPCData = { allImportedSheetUris: string[]; dependencies: Record; sheet: any; preview: VirtualNode; exports: PCExports; usedExprIds?: string[]; } & BaseEvaluatedData; export declare type EvaluatedCSSData = { sheet: any; exports: CSSExports; } & BaseEvaluatedData; export declare type EvaluatedData = EvaluatedPCData | EvaluatedCSSData; export declare enum DiffedDataKind { CSS = "CSS", PC = "PC" } export declare type BaseDiffedData = { kind: TKind; }; export declare type DiffedCSSData = { exports: CSSExports; mutations: CSSMutation[]; } & BaseDiffedData; export declare type DiffedPCData = { allImportedSheetUris: string[]; dependencies: Record; sheetMutations: CSSMutation[]; mutations: Mutation[]; exports: PCExports; } & BaseDiffedData; export declare type DiffedData = DiffedCSSData | DiffedPCData; export declare type SheetInfo = { sheet: any; index: number; uri: string; }; export declare type LoadedPCData = { importedSheets: SheetInfo[]; } & EvaluatedPCData; export declare type LoadedCSSData = EvaluatedCSSData; export declare type LoadedData = LoadedPCData | LoadedCSSData; declare type VirtualBaseNode = { sourceId: string; id: string; kind: KKind; }; export declare type VirtualStyleElement = { sheet: any; } & VirtualBaseNode; export declare type VirtualElementInstanceOfInfo = { componentName: string; }; export declare type VirtualElementSourceInfo = { instanceOf?: VirtualElementInstanceOfInfo; }; export declare type VirtualElement = { annotations?: VirtScriptObject; tagName: string; sourceInfo?: VirtualElementSourceInfo; attributes: { [identifier: string]: string | null; }; children: VirtualNode[]; } & VirtualBaseNode; export declare type VirtualText = { annotations?: VirtScriptObject; value: string; } & VirtualBaseNode; export declare type VirtualSlot = VirtualBaseNode; export declare type VirtualFragment = { children: VirtualNode[]; } & VirtualBaseNode; export declare type VirtualNode = VirtualElement | VirtualText | VirtualSlot | VirtualFragment | VirtualStyleElement; export declare type VirtualFrame = VirtualElement | VirtualText; export declare const getStyleExports: (data: LoadedData) => CSSExports; export declare const nodePathToAry: (path: string) => number[]; export declare const getElementLabel: (node: VirtualElement) => string; export declare const isInstance: (node: VirtualNode) => boolean; export declare const getInstanceAncestor: (node: VirtualNode, root: VirtualNode) => any; export declare const getVirtNodeIdMap: (node: VirtualNode) => Record; export declare const getVirtNodeBySourceId: (node: VirtualNode, sourceId: string) => VirtualNode; export {};