export interface Bounds { x0: number; y0: number; x1: number; y1: number; } /** * Parallel lines, `spacing` apart at `angleDeg`, cut to where `inside(x, y)` is true, as the data of one SVG path (a millimetre of the picture is a millimetre of the paper). Each end is found to a twentieth of a millimetre. * @param bounds - The box the lines are laid over. * @param spacing - The gap between lines, in millimetres. * @param angleDeg - The turn of the lines, in degrees from the x axis. * @param inside - Whether a point is in the shaded part. * @returns Path data: `M x y L x y` for each stroke. * * @example * ```ts * import { hatchPath } from "@johnmorrisdotca/chikyu-earth/sheets"; * * const d = hatchPath({ x0: 0, y0: 0, x1: 20, y1: 20 }, 4, 45, (x) => x < 10); * console.log(d.startsWith("M")); * ``` */ export declare function hatchPath(bounds: Bounds, spacing: number, angleDeg: number, inside: (x: number, y: number) => boolean): string;