import { type Env } from "./layers.env.ts"; import type { Layer, OutcomeStyle, TableOptions } from "./layers.types.ts"; import type { Box, ScoreOptions, SurfaceOptions } from "./types.ts"; /** * How the standard outcomes look. A word that is not here draws as a filled mark; `style.outcomes` of a layer adds words and changes these. * A hollow point is drawn open and a hollow line is dashed, so that an outcome is never told by colour alone. */ export declare const OUTCOMES: Readonly>; /** The layers, drawn, and a sentence for each. */ export interface RenderedLayers { svg: string; summaries: string[]; } /** The layers of a drawing as markup, and a sentence for each. `turned` says whether the surface group is turned a quarter. */ export declare function renderLayers(o: SurfaceOptions | ScoreOptions, layers: readonly Layer[] | undefined, turned?: boolean, range?: Box, upright?: number, zone?: Env["zone"]): RenderedLayers; /** * The layers of a drawing as one SVG group, in the surface's own frame, for a caller who composes the drawing's parts. Put it inside the * surface's group (the one with the quarter turn, when the drawing is tall) and the marks lie on the surface, cut to its outline, with * the text still upright. The same options and layers always give the same string; `drawKyogijo` draws exactly this when it is given `layers`. * @example * ```ts * import { drawLayers } from "@johnmorrisdotca/kyogijo-stadiums"; * const group = drawLayers({ sport: "nhl", id: "rink" }, [ * { kind: "points", name: "shots", data: [{ x: 169, y: 20.5, outcome: "goal", team: "home" }, { x: 150, y: 40, outcome: "shot", team: "home" }] }, * ]); * console.log(group.startsWith('