import { DomReplacer, ReplacerFactory } from "ssg-api";
import { HtmlRR0Context } from "../RR0Context.js";
import { EventRenderer } from "./EventRenderer.js";
import { AllDataService, RR0Event } from "@rr0/data";
export declare class EventReplacer<D extends RR0Event> {
    protected renderer: EventRenderer<D>;
    protected dataService: AllDataService;
    constructor(renderer: EventRenderer<D>, dataService: AllDataService);
    replacement(context: HtmlRR0Context, original: HTMLElement): Promise<HTMLElement>;
    protected sourceFromFile(context: HtmlRR0Context, container: HTMLElement, href: string): Promise<void>;
}
/**
 * Creates replacers for sources HTML in a given context.
 */
export declare class EventReplacerFactory<D extends RR0Event> implements ReplacerFactory<DomReplacer> {
    protected replacer: EventReplacer<D>;
    constructor(replacer: EventReplacer<D>);
    create(context: HtmlRR0Context): Promise<DomReplacer>;
}
