import * as THREE from 'three'; import { type CharacterRenderer } from './renderer.js'; import { type Point, type ProjectPoint } from './svg-path.js'; type Snapshot = ReturnType; type Vertex = { x: number; y: number; z: number; t: number; }; /** Best-fit planar gradient, weighted by visible projected area. A curved 3D * surface is not exactly representable by one SVG linear gradient; this keeps * the authored colors and a compact, editable fill at every camera angle. */ export declare function fitGradient(triangles: { points: Vertex[]; }[]): { x: number; y: number; t: number; gx: number; gy: number; }; /** Warp each facial outline through the same UV mesh as the live renderer. * This emits the artwork once instead of repeating it in every mesh triangle. */ export declare function faceProjector(face: Snapshot['face'], project: (point: THREE.Vector3) => Point): ProjectPoint; export declare function snapshotSvg(snapshot: Snapshot, prefix?: string): string; export {}; //# sourceMappingURL=svg-snapshot.d.ts.map