import { HtmlRR0Context } from "../../RR0Context.js"; import { Level2Date as EdtfDate } from "@rr0/time"; import { TimeTextBuilder } from "../text/TimeTextBuilder.js"; import { RR0CaseMapping } from "./rr0/index.js"; import { RR0SourceType, Source } from "@rr0/data"; import { PlaceRenderer } from "../../place/PlaceRenderer.js"; export declare abstract class DatasourceTestCase { readonly mapping: RR0CaseMapping; readonly sourceCases: S[]; protected readonly intlOptions: Intl.DateTimeFormatOptions; timeTextBuilder: TimeTextBuilder; placeRenderer: PlaceRenderer; protected constructor(mapping: RR0CaseMapping, sourceCases: S[], intlOptions?: Intl.DateTimeFormatOptions); checkCaseHTML(context: HtmlRR0Context, nativeCase: S, item: HTMLLIElement, dataDate: Date): void; testRender(context: HtmlRR0Context): Promise; testFetch(context: HtmlRR0Context): Promise; protected abstract sortComparator(c1: S, c2: S): number; protected abstract getTime(c: S): EdtfDate; protected expectedSourceStr(context: HtmlRR0Context, expectedSources: Source[], nativeCase: S): string; }