import { type FlagShape } from "./flags-source.ts"; /** What a caller says about the team an emblem stands for: its colours and letters, so a crest id takes them; and the theme of the drawing it goes in. */ export interface EmblemContext { color?: string; accent?: string; initials?: string; theme?: "inherit" | "auto" | "light" | "dark"; } /** * The SVG document for a value that names an emblem (`"trophy:cup"`, `"crest:shield"`, `"sport:nhl/line"`), or `undefined` when it does not or when no renderer is plugged in. Drawn for an image: the theme is `auto` unless * the context says otherwise. A crest takes the context's colours and letters. */ export declare function emblemDocument(value: unknown, context?: EmblemContext): string | undefined; /** * A logo as it may be written into an image's `href`, or `undefined`. An `https:` or `http:` address, a relative path, an image `data:` address, an SVG document as text (written as an image, which cannot * run scripts), or, with a renderer of emblems plugged in, the id of an emblem (`"trophy:cup"`, `"medal:gold"`, `"sport:nhl"`, `"crest:shield"`, a trophy or award by its short name such as `"cup"`, with `/line` * for the outline style), drawn for an image with the outline in dark or pale ink by the device's setting. The second argument gives a crest the team's colours and letters. With a renderer, a name that is * an emblem's id is the emblem, not a file of that name: write `./cup` for the file. Without one, an id is an address like any other, and `"trophy:cup"` is refused. * @example * ```ts * import { safeLogo } from "@johnmorrisdotca/kyogijo-stadiums"; * console.log(safeLogo("https://example.com/gulls.svg"), safeLogo("javascript:alert(1)")); * // https://example.com/gulls.svg undefined * ``` */ export declare function safeLogo(value: unknown, context?: EmblemContext): string | undefined; /** * The picture of a country's flag as it may be written into an image's `href`, or `undefined` when no renderer of flags is plugged in (`useFlags`, or the `flags` option), it has no flag for the code, or * `code` is not a code. `size` is the nominal width in pixels the renderer is told; `theme` is the drawing's. */ export declare function flagPicture(code: unknown, shape: FlagShape, size: number, theme?: unknown): string | undefined;