@rr0/cms
Version:
RR0 Content Management System (CMS)
25 lines (24 loc) • 1.42 kB
TypeScript
import { HtmlRR0Context } from "../RR0Context.js";
import { SourceFactory, SourceRenderer } from "../source/index.js";
import { NoteRenderer } from "../note/index.js";
import { TimeElementFactory } from "./html/TimeElementFactory.js";
import { RR0Data, RR0Event, RR0SourceType, Source } from "@rr0/data";
import { PlaceRenderer } from "../place/PlaceRenderer.js";
import { Place } from "@rr0/place";
import { TimeRenderOptions } from "./html/index.js";
/**
* Render a case summary as HTML.
*/
export declare class EventRenderer<E extends RR0Event> {
protected noteRenderer: NoteRenderer;
protected sourceFactory: SourceFactory;
readonly sourceRenderer: SourceRenderer;
protected timeElementFactory: TimeElementFactory;
placeRenderer: PlaceRenderer;
constructor(noteRenderer: NoteRenderer, sourceFactory: SourceFactory, sourceRenderer: SourceRenderer, timeElementFactory: TimeElementFactory);
placeElement(context: HtmlRR0Context, place: Place): HTMLSpanElement;
renderEnd(context: HtmlRR0Context, event: RR0Data, container: HTMLElement): Promise<void>;
render(context: HtmlRR0Context, event: E, container: HTMLElement, options?: TimeRenderOptions): Promise<void>;
renderNotes(context: HtmlRR0Context, notes: string[], container: HTMLElement): Promise<void>;
renderSources(context: HtmlRR0Context, sources: Source<RR0SourceType>[], container: HTMLElement): Promise<void>;
}