import { ContentStep, ContentStepConfig, ContentStepResult, OutputFunc } from "ssg-api"; import { HtmlRR0Context } from "./RR0Context.js"; import { TimeService } from "./time/index.js"; export interface ContentVisitor { visit(context: HtmlRR0Context): Promise; } export interface FileVisitor { visit(context: HtmlRR0Context, processFile: boolean): Promise; contentStepEnd(): Promise; } export interface RR0ContentStepOptions { contentConfigs: ContentStepConfig[]; outputFunc: OutputFunc; fileVisitors?: FileVisitor[]; contentVisitors?: ContentVisitor[]; force: boolean; name: string; toProcess: Set; } export declare class RR0ContentStep extends ContentStep { protected options: RR0ContentStepOptions; protected timeService: TimeService; constructor(options: RR0ContentStepOptions, timeService: TimeService); protected processFile(context: HtmlRR0Context, filePath: string, contentsConfig: ContentStepConfig): Promise; protected shouldProcessFile(context: HtmlRR0Context, contentsConfig: ContentStepConfig): Promise; protected shouldProcessContent(context: HtmlRR0Context, contentsConfig: ContentStepConfig): Promise; protected postExecute(result: ContentStepResult): Promise; }