import type { PlaceAlias } from "./names.ts"; import type { BudoSport, DojoSpec, BudoStyle } from "./types.ts"; /** What is known of a surface's layout. `documented`: the floor, its size and its contest areas are from a source (the dohyō of the Association's rules). `count`: a source gives the number of mats, and the shape is plausible. `generic`: no source gives the size or the layout, and a plausible one is drawn. */ export type HallBasis = "documented" | "count" | "generic"; /** One surface a hall offers: a floor of a sport, with the options that draw it. */ export interface HallSurface { /** The key within the hall: `main-dojo`. */ id: string; name: { en: string; ja: string; }; sport: BudoSport; /** The options (beyond `sport`) that draw it. */ options: { league?: string; budo?: BudoStyle; dojo?: DojoSpec; }; basis: HallBasis; /** The number of mats (jō) a source gives for the floor, where it gives one. */ mats?: number; /** What is known and what is drawn, in a sentence each. */ note: { en: string; ja: string; }; } /** A hall as the data gives it. */ export interface Hall { id: string; name: string; nameJa: string; readingJa?: string; aliases: readonly PlaceAlias[]; city: string; country: string; lat: number; lon: number; wikidata: string; /** The first year of the institution or the building (the Kodokan's is its founding, 1882). */ from: number; /** What the first year is, in a phrase. */ fromWhat: { en: string; ja: string; }; /** The most the hall seats or holds, where a source gives it, and which source. */ capacity?: { value: number; source: string; }; /** The competitions and events it is known for. */ leagues: readonly string[]; surfaces: readonly HallSurface[]; /** Keys of `LEAGUE_SOURCES` that its facts were read from. */ sources: readonly string[]; /** What is known of the hall that no surface says, in a sentence. */ note: { en: string; ja: string; }; } /** The halls, in the order of their surfaces' fame: the Kodokan, the Budokan, the Kokugikan, the Butokuden and the Budokwai. */ export declare const HALLS: readonly Hall[];