type WindingRule = 'NONZERO' | 'ODD'; type Command = { type: 'M'; args: [number, number]; } | { type: 'L'; args: [number, number]; } | { type: 'C'; args: [number, number, number, number, number, number]; } | { type: 'Q'; args: [number, number, number, number]; } | { type: 'A'; args: [number, number, number, number, number, number, number]; } | { type: 'S'; args: [number, number, number, number]; } | { type: 'T'; args: [number, number]; } | { type: 'H'; args: [number]; } | { type: 'V'; args: [number]; } | { type: 'Z'; args: []; }; type Vertex = { styleID: number; x: number; y: number; }; type Segment = { styleID: number; start: { vertex: number; dx: number; dy: number; }; end: { vertex: number; dx: number; dy: number; }; }; type Loop = { segments: number[]; windingRule: WindingRule; }; type Region = { styleID: number; windingRule: WindingRule; loops: Loop[]; }; export type VectorNetwork = { vertices: Vertex[]; segments: Segment[]; regions: Region[]; }; export declare function svgShapeToPath(el: Element): string; export declare function parseSvgPath(d: string): Command[]; export declare function commandsToVectorNetwork(commands: Command[], fillRule?: WindingRule): { network: VectorNetwork; offset: { x: number; y: number; }; }; export declare function encodeVectorNetwork(vn: VectorNetwork): Uint8Array; export {};