import type { GerberTree } from '@tracespace/parser'; import type { ImageTree } from '@tracespace/plotter'; import type { GerberType, GerberSide } from '@tracespace/identify-layers'; import type { SvgElement, ViewBox } from '@tracespace/renderer'; import type { BoardShape, BoardShapeRender } from './board-shape'; import type { Side, SideLayers } from './sort-layers'; export { stringifySvg } from './stringify-svg'; export interface Layer { id: string; filename: string; type: GerberType; side: GerberSide; } export interface ReadResult { layers: Layer[]; parseTreesById: Record; } export interface PlotResult { layers: Layer[]; plotTreesById: Record; boardShape: BoardShape; } export interface RenderLayersResult { layers: Layer[]; rendersById: Record; boardShapeRender: BoardShapeRender; } export interface RenderBoardResult extends Record { } export interface BoardShapeRenderFragment { viewBox: ViewBox; svgFragment?: string; } export interface RenderFragmentsResult { layers: Layer[]; topLayers: SideLayers; bottomLayers: SideLayers; drillLayers: string[]; boardShapeRenderFragment: BoardShapeRenderFragment; svgFragmentsById: Record; } export declare function read(files: File[] | string[]): Promise; export declare function plot(readResult: ReadResult): PlotResult; export declare function renderLayers(plotResult: PlotResult): RenderLayersResult; export declare function renderBoard(renderLayersResult: RenderLayersResult): RenderBoardResult; export declare function renderFragments(plotResult: PlotResult): RenderFragmentsResult;